2
===================================================================
3
RCS file: /sources/grub/grub/ChangeLog,v
4
retrieving revision 1.627
5
retrieving revision 1.647
6
diff -u -p -u -r1.627 -r1.647
7
--- foo/ChangeLog 8 May 2005 02:51:51 -0000 1.627
8
+++ foo/ChangeLog 20 May 2008 11:04:17 -0000 1.647
10
+2008-05-20 Robert Millan <rmh@aybabtu.com>
12
+ * netboot/cs89x0.c: Fix license violation.
13
+ * netboot/cs89x0.h: Likewise.
15
+2008-04-10 Pavel Roskin <proski@gnu.org>
17
+ * configure.ac: Always use "_cv_" in cache variables for
18
+ compatibility with Autoconf 2.62.
20
+2008-03-28 Robert Millan <rmh@aybabtu.com>
22
+ Surpass 1 TiB disk addressing limit. Note: there are no plans to handle
23
+ the 2 TiB disk limit in GRUB Legacy, since that would need considerable
24
+ rework. If you have >2TiB disks, use GRUB 2 instead.
26
+ * grub/asmstub.c (biosdisk): Add unsigned qualifier to `sector'.
27
+ * stage2/bios.c (biosdisk): Likewise.
28
+ * stage2/disk_io.c (rawread, devread, rawwrite, devwrite): Likewise.
29
+ * stage2/shared.h (rawread, devread, rawwrite, devwrite): Likewise.
30
+ * lib/device.c (get_drive_geometry): Replace BLKGETSIZE with
33
+2007-10-29 Pavel Roskin <proski@gnu.org>
35
+ * configure.ac: Test if '--build-id=none' is supported by the
36
+ linker and add it to LDFLAGS if possible. Build ID causes
37
+ objcopy to generate huge binary files.
38
+ * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Use LDFLAGS when
39
+ linking, so that build ID doesn't break the test.
40
+ * stage1/Makefile.am: Preserve LDFLAGS, use stage1_exec_LDFLAGS.
42
+2007-02-22 Pavel Roskin <proski@gnu.org>
44
+ * stage2/iso9660.h: Remove unnecessary packed attributes.
46
+2007-02-22 Robert Millan <rmh@aybabtu.com>
48
+ * util/mkbimage: Update my email address, and remove my name from
49
+ some places where unnecessary credit is given.
51
+2006-09-10 Pavel Roskin <proski@gnu.org>
53
+ * netboot/natsemi.c: Fix compile error with gcc 4.1.1. Cast
54
+ cannot make a variable volatile - it should be declared as such.
55
+ * netboot/sis900.c: Likewise.
57
+2006-09-08 Pavel Roskin <proski@gnu.org>
59
+ * netboot/etherboot.h: Remove incorrect extern declarations of
60
+ the variables later declared static. Move BOOTP_DATA_ADDR ...
61
+ * netboot/main.c: ... here. Eliminate end_of_rfc1533 - it's
64
+2006-06-24 Yoshinori K. Okuji <okuji@enbug.org>
66
+ * docs/grub.texi: Changed the license term to the GNU Free
67
+ Documentation License 1.2.
69
+ * docs/multiboot.texi: Reformatted to show the license term
70
+ and the version number explicitly.
72
+ * docs/fdl.texi: New file.
74
+ * docs/Makefile.am (grub_TEXINFOS): Added fdl.texi.
76
+2006-06-24 Robert Millan <robertmh@gnu.org>
78
+ * lib/device.c (write_to_partition): /dev/ataraid/ and /dev/rd/
79
+ partitions have a "p" prefix. Add it.
81
+2006-06-24 Robert Millan <robertmh@gnu.org>
83
+ * lib/device.c (get_i2o_disk_name): New function.
84
+ (init_device_map) [__linux__]: Add support for I2O devices.
86
+2006-05-02 Pavel Roskin <proski@gnu.org>
88
+ * stage2/stage2.c (run_menu): Fix "savedefault" to save only top
89
+ level menu positions. Remember current position when calling a
90
+ submenu. Don't recalculate it when booting from a submenu.
92
+ * grub/main.c (main): Make sure the boot drive number doesn't
95
+2006-05-02 Vesa Jaaskelainen <chaac@nic.fi>
97
+ * stage2/shared.h (vbe_mode): Back ported aligment fix from GRUB 2
98
+ to GRUB Legacy. Problem reported by Gerardo Richarte.
100
+2006-04-23 Robert Millan <robertmh@gnu.org>
102
+ * grub/asmstub.c (get_diskinfo): Optimize sysctl routine.
104
+2006-04-20 Robert Millan <robertmh@gnu.org>
106
+ Fixes for kernel of FreeBSD:
107
+ * grub/asmstub.c (get_diskinfo): Toggle "kern.geom.debugflags" sysctl
108
+ before opening a device for writing.
109
+ * util/grub-install.in: Devices don't have this "r" prefix anymore.
111
+2006-04-16 Yoshinori K. Okuji <okuji@enbug.org>
113
+ * docs/multiboot.texi: Correct the offset of address
114
+ fields. Reported by Jeroen Dekkers.
116
+2006-03-21 Yoshinori K. Okuji <okuji@enbug.org>
118
+ * stage2/builtins.c (setup_func): Specify the size of DEVICE to
119
+ grub_strncat instead of a strange number 256. Reported by Vitaly
120
+ Fertman <vitaly@namesys.com>.
122
+2005-09-29 Yoshinori K. Okuji <okuji@enbug.org>
124
+ * docs/multiboot.texi: Fix a bug in the byte order of
125
+ boot_device. I hope this won't affect any OS image.
126
+ Increased the version number to 0.6.94.
128
+2005-09-28 Yoshinori K. Okuji <okuji@enbug.org>
130
+ * stage2/boot.c (load_image): Even if an OS image is an ELF
131
+ object, use the a.out kludge if MULTIBOOT_AOUT_KLUDGE is
134
2005-05-08 Yoshinori K. Okuji <okuji@enbug.org>
136
* configure.ac (AC_INIT): Upgraded to 0.97.
138
===================================================================
139
RCS file: /sources/grub/grub/THANKS,v
140
retrieving revision 1.100
141
retrieving revision 1.101
142
diff -u -p -u -r1.100 -r1.101
143
--- foo/THANKS 8 May 2005 02:18:14 -0000 1.100
144
+++ foo/THANKS 21 Mar 2006 20:51:58 -0000 1.101
145
@@ -121,3 +121,4 @@ Vesa Jaaskelainen <jaaskela@tietomyrsky.
146
Yedidyah Bar-David <didi@post.tau.ac.il>
147
Yury V. Umanets <umka@namesys.com>
148
Yuri Zaporogets <yuriz@ukr.net>
149
+Vitaly Fertman <vitaly@namesys.com>
151
===================================================================
152
RCS file: /sources/grub/grub/acinclude.m4,v
153
retrieving revision 1.21
154
retrieving revision 1.22
155
diff -u -p -u -r1.21 -r1.22
156
--- foo/acinclude.m4 23 Apr 2004 13:39:01 -0000 1.21
157
+++ foo/acinclude.m4 5 Nov 2007 01:29:46 -0000 1.22
158
@@ -57,7 +57,7 @@ else
160
grub_cv_prog_objcopy_absolute=yes
161
for link_addr in 2000 8000 7C00; do
162
- if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -nostdlib -Wl,-N -Wl,-Ttext -Wl,$link_addr conftest.o -o conftest.exec]); then :
163
+ if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} ${LDFLAGS} -nostdlib -Wl,-N -Wl,-Ttext -Wl,$link_addr conftest.o -o conftest.exec]); then :
165
AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr])
168
===================================================================
169
RCS file: /sources/grub/grub/configure.ac,v
170
retrieving revision 1.9
171
retrieving revision 1.11
172
diff -u -p -u -r1.9 -r1.11
173
--- foo/configure.ac 8 May 2005 02:51:51 -0000 1.9
174
+++ foo/configure.ac 10 Apr 2008 22:26:50 -0000 1.11
175
@@ -86,13 +86,13 @@ if test "x$ac_cv_prog_gcc" = xyes; then
179
- AC_CACHE_CHECK([whether optimization for size works], size_flag, [
180
+ AC_CACHE_CHECK([whether optimization for size works], grub_cv_cc_Os, [
183
- AC_TRY_COMPILE(, , size_flag=yes, size_flag=no)
184
+ AC_TRY_COMPILE(, , grub_cv_cc_Os=yes, grub_cv_cc_Os=no)
187
- if test "x$size_flag" = xyes; then
188
+ if test "x$grub_cv_cc_Os" = xyes; then
191
STAGE2_CFLAGS="-O2 -fno-strength-reduce -fno-unroll-loops"
192
@@ -100,16 +100,16 @@ if test "x$ac_cv_prog_gcc" = xyes; then
193
# OpenBSD has a GCC extension for protecting applications from
194
# stack smashing attacks, but GRUB doesn't want this feature.
195
AC_CACHE_CHECK([whether gcc has -fno-stack-protector],
196
- no_stack_protector_flag, [
197
+ grub_cv_cc_no_stack_protector, [
199
CFLAGS="-fno-stack-protector"
202
- no_stack_protector_flag=yes,
203
- no_stack_protector_flag=no)
204
+ grub_cv_cc_no_stack_protector=yes,
205
+ grub_cv_cc_no_stack_protector=no)
208
- if test "x$no_stack_protector_flag" = xyes; then
209
+ if test "x$grub_cv_cc_no_stack_protector" = xyes; then
210
STAGE2_CFLAGS="$STAGE2_CFLAGS -fno-stack-protector"
213
@@ -123,33 +123,44 @@ AC_SUBST(GRUB_CFLAGS)
214
CPPFLAGS="$CPPFLAGS -Wall -Wmissing-prototypes -Wunused -Wshadow"
215
CPPFLAGS="$CPPFLAGS -Wpointer-arith"
217
-AC_CACHE_CHECK([whether -Wundef works], undef_flag, [
218
+AC_CACHE_CHECK([whether -Wundef works], grub_cv_cc_Wundef, [
219
saved_CPPFLAGS="$CPPFLAGS"
221
- AC_TRY_COMPILE(, , undef_flag=yes, undef_flag=no)
222
+ AC_TRY_COMPILE(, , grub_cv_cc_Wundef=yes, grub_cv_cc_Wundef=no)
223
CPPFLAGS="$saved_CPPFLAGS"
226
# The options `-falign-*' are supported by gcc 3.0 or later.
227
# Probably it is sufficient to only check for -falign-loops.
228
-AC_CACHE_CHECK([whether -falign-loops works], [falign_loop_flag], [
229
+AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [
230
saved_CPPFLAGS="$CPPFLAGS"
231
CPPFLAGS="-falign-loops=1"
232
- AC_TRY_COMPILE(, , [falign_loop_flag=yes], [falign_loop_flag=no])
233
+ AC_TRY_COMPILE(, , [grub_cv_cc_falign_loop=yes], [grub_cv_cc_falign_loop=no])
234
CPPFLAGS="$saved_CPPFLAGS"
237
# Force no alignment to save space.
238
-if test "x$falign_loop_flag" = xyes; then
239
+if test "x$grub_cv_cc_falign_loop" = xyes; then
240
CPPFLAGS="$CPPFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1"
242
CPPFLAGS="$CPPFLAGS -malign-jumps=1 -malign-loops=1 -malign-functions=1"
245
-if test "x$undef_flag" = xyes; then
246
+if test "x$grub_cv_cc_Wundef" = xyes; then
247
CPPFLAGS="$CPPFLAGS -Wundef"
250
+# Check if build ID can be disabled in the linker
251
+AC_MSG_CHECKING([whether linker accepts `--build-id=none'])
252
+save_LDFLAGS="$LDFLAGS"
253
+LDFLAGS="$LDFLAGS -Wl,--build-id=none"
254
+AC_TRY_LINK(, , build_id_flag=yes, build_id_flag=no)
255
+AC_MSG_RESULT([$build_id_flag])
256
+LDFLAGS="$save_LDFLAGS"
257
+if test "x$build_id_flag" = xyes; then
258
+ LDFLAGS="$LDFLAGS -Wl,--build-id=none"
261
if test "x$with_binutils" != x; then
262
dnl AC_PATH_TOOL(OBJCOPY, objcopy, , "$with_binutils:$PATH")
263
AC_PATH_PROG(OBJCOPY, objcopy, , "$with_binutils:$PATH")
264
Index: docs/Makefile.am
265
===================================================================
266
RCS file: /sources/grub/grub/docs/Makefile.am,v
267
retrieving revision 1.25
268
retrieving revision 1.26
269
diff -u -p -u -r1.25 -r1.26
270
--- foo/docs/Makefile.am 29 Nov 2002 20:39:23 -0000 1.25
271
+++ foo/docs/Makefile.am 24 Jun 2006 14:40:02 -0000 1.26
273
info_TEXINFOS = grub.texi multiboot.texi
274
-grub_TEXINFOS = internals.texi
275
+grub_TEXINFOS = internals.texi fdl.texi
276
EXAMPLES = boot.S kernel.c multiboot.h
277
multiboot_TEXINFOS = boot.S.texi kernel.c.texi multiboot.h.texi
278
man_MANS = grub.8 mbchk.1 grub-install.8 grub-md5-crypt.8 grub-terminfo.8
280
===================================================================
281
RCS file: docs/fdl.texi
282
diff -N docs/fdl.texi
283
--- foo//dev/null 1 Jan 1970 00:00:00 -0000
284
+++ foo/docs/fdl.texi 24 Jun 2006 14:40:02 -0000 1.1
287
+@node GNU Free Documentation License
288
+@appendixsec GNU Free Documentation License
290
+@cindex FDL, GNU Free Documentation License
291
+@center Version 1.2, November 2002
294
+Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc.
295
+51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
297
+Everyone is permitted to copy and distribute verbatim copies
298
+of this license document, but changing it is not allowed.
305
+The purpose of this License is to make a manual, textbook, or other
306
+functional and useful document @dfn{free} in the sense of freedom: to
307
+assure everyone the effective freedom to copy and redistribute it,
308
+with or without modifying it, either commercially or noncommercially.
309
+Secondarily, this License preserves for the author and publisher a way
310
+to get credit for their work, while not being considered responsible
311
+for modifications made by others.
313
+This License is a kind of ``copyleft'', which means that derivative
314
+works of the document must themselves be free in the same sense. It
315
+complements the GNU General Public License, which is a copyleft
316
+license designed for free software.
318
+We have designed this License in order to use it for manuals for free
319
+software, because free software needs free documentation: a free
320
+program should come with manuals providing the same freedoms that the
321
+software does. But this License is not limited to software manuals;
322
+it can be used for any textual work, regardless of subject matter or
323
+whether it is published as a printed book. We recommend this License
324
+principally for works whose purpose is instruction or reference.
327
+APPLICABILITY AND DEFINITIONS
329
+This License applies to any manual or other work, in any medium, that
330
+contains a notice placed by the copyright holder saying it can be
331
+distributed under the terms of this License. Such a notice grants a
332
+world-wide, royalty-free license, unlimited in duration, to use that
333
+work under the conditions stated herein. The ``Document'', below,
334
+refers to any such manual or work. Any member of the public is a
335
+licensee, and is addressed as ``you''. You accept the license if you
336
+copy, modify or distribute the work in a way requiring permission
337
+under copyright law.
339
+A ``Modified Version'' of the Document means any work containing the
340
+Document or a portion of it, either copied verbatim, or with
341
+modifications and/or translated into another language.
343
+A ``Secondary Section'' is a named appendix or a front-matter section
344
+of the Document that deals exclusively with the relationship of the
345
+publishers or authors of the Document to the Document's overall
346
+subject (or to related matters) and contains nothing that could fall
347
+directly within that overall subject. (Thus, if the Document is in
348
+part a textbook of mathematics, a Secondary Section may not explain
349
+any mathematics.) The relationship could be a matter of historical
350
+connection with the subject or with related matters, or of legal,
351
+commercial, philosophical, ethical or political position regarding
354
+The ``Invariant Sections'' are certain Secondary Sections whose titles
355
+are designated, as being those of Invariant Sections, in the notice
356
+that says that the Document is released under this License. If a
357
+section does not fit the above definition of Secondary then it is not
358
+allowed to be designated as Invariant. The Document may contain zero
359
+Invariant Sections. If the Document does not identify any Invariant
360
+Sections then there are none.
362
+The ``Cover Texts'' are certain short passages of text that are listed,
363
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
364
+the Document is released under this License. A Front-Cover Text may
365
+be at most 5 words, and a Back-Cover Text may be at most 25 words.
367
+A ``Transparent'' copy of the Document means a machine-readable copy,
368
+represented in a format whose specification is available to the
369
+general public, that is suitable for revising the document
370
+straightforwardly with generic text editors or (for images composed of
371
+pixels) generic paint programs or (for drawings) some widely available
372
+drawing editor, and that is suitable for input to text formatters or
373
+for automatic translation to a variety of formats suitable for input
374
+to text formatters. A copy made in an otherwise Transparent file
375
+format whose markup, or absence of markup, has been arranged to thwart
376
+or discourage subsequent modification by readers is not Transparent.
377
+An image format is not Transparent if used for any substantial amount
378
+of text. A copy that is not ``Transparent'' is called ``Opaque''.
380
+Examples of suitable formats for Transparent copies include plain
381
+@sc{ascii} without markup, Texinfo input format, La@TeX{} input
382
+format, @acronym{SGML} or @acronym{XML} using a publicly available
383
+@acronym{DTD}, and standard-conforming simple @acronym{HTML},
384
+PostScript or @acronym{PDF} designed for human modification. Examples
385
+of transparent image formats include @acronym{PNG}, @acronym{XCF} and
386
+@acronym{JPG}. Opaque formats include proprietary formats that can be
387
+read and edited only by proprietary word processors, @acronym{SGML} or
388
+@acronym{XML} for which the @acronym{DTD} and/or processing tools are
389
+not generally available, and the machine-generated @acronym{HTML},
390
+PostScript or @acronym{PDF} produced by some word processors for
391
+output purposes only.
393
+The ``Title Page'' means, for a printed book, the title page itself,
394
+plus such following pages as are needed to hold, legibly, the material
395
+this License requires to appear in the title page. For works in
396
+formats which do not have any title page as such, ``Title Page'' means
397
+the text near the most prominent appearance of the work's title,
398
+preceding the beginning of the body of the text.
400
+A section ``Entitled XYZ'' means a named subunit of the Document whose
401
+title either is precisely XYZ or contains XYZ in parentheses following
402
+text that translates XYZ in another language. (Here XYZ stands for a
403
+specific section name mentioned below, such as ``Acknowledgements'',
404
+``Dedications'', ``Endorsements'', or ``History''.) To ``Preserve the Title''
405
+of such a section when you modify the Document means that it remains a
406
+section ``Entitled XYZ'' according to this definition.
408
+The Document may include Warranty Disclaimers next to the notice which
409
+states that this License applies to the Document. These Warranty
410
+Disclaimers are considered to be included by reference in this
411
+License, but only as regards disclaiming warranties: any other
412
+implication that these Warranty Disclaimers may have is void and has
413
+no effect on the meaning of this License.
418
+You may copy and distribute the Document in any medium, either
419
+commercially or noncommercially, provided that this License, the
420
+copyright notices, and the license notice saying this License applies
421
+to the Document are reproduced in all copies, and that you add no other
422
+conditions whatsoever to those of this License. You may not use
423
+technical measures to obstruct or control the reading or further
424
+copying of the copies you make or distribute. However, you may accept
425
+compensation in exchange for copies. If you distribute a large enough
426
+number of copies you must also follow the conditions in section 3.
428
+You may also lend copies, under the same conditions stated above, and
429
+you may publicly display copies.
434
+If you publish printed copies (or copies in media that commonly have
435
+printed covers) of the Document, numbering more than 100, and the
436
+Document's license notice requires Cover Texts, you must enclose the
437
+copies in covers that carry, clearly and legibly, all these Cover
438
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
439
+the back cover. Both covers must also clearly and legibly identify
440
+you as the publisher of these copies. The front cover must present
441
+the full title with all words of the title equally prominent and
442
+visible. You may add other material on the covers in addition.
443
+Copying with changes limited to the covers, as long as they preserve
444
+the title of the Document and satisfy these conditions, can be treated
445
+as verbatim copying in other respects.
447
+If the required texts for either cover are too voluminous to fit
448
+legibly, you should put the first ones listed (as many as fit
449
+reasonably) on the actual cover, and continue the rest onto adjacent
452
+If you publish or distribute Opaque copies of the Document numbering
453
+more than 100, you must either include a machine-readable Transparent
454
+copy along with each Opaque copy, or state in or with each Opaque copy
455
+a computer-network location from which the general network-using
456
+public has access to download using public-standard network protocols
457
+a complete Transparent copy of the Document, free of added material.
458
+If you use the latter option, you must take reasonably prudent steps,
459
+when you begin distribution of Opaque copies in quantity, to ensure
460
+that this Transparent copy will remain thus accessible at the stated
461
+location until at least one year after the last time you distribute an
462
+Opaque copy (directly or through your agents or retailers) of that
463
+edition to the public.
465
+It is requested, but not required, that you contact the authors of the
466
+Document well before redistributing any large number of copies, to give
467
+them a chance to provide you with an updated version of the Document.
472
+You may copy and distribute a Modified Version of the Document under
473
+the conditions of sections 2 and 3 above, provided that you release
474
+the Modified Version under precisely this License, with the Modified
475
+Version filling the role of the Document, thus licensing distribution
476
+and modification of the Modified Version to whoever possesses a copy
477
+of it. In addition, you must do these things in the Modified Version:
481
+Use in the Title Page (and on the covers, if any) a title distinct
482
+from that of the Document, and from those of previous versions
483
+(which should, if there were any, be listed in the History section
484
+of the Document). You may use the same title as a previous version
485
+if the original publisher of that version gives permission.
488
+List on the Title Page, as authors, one or more persons or entities
489
+responsible for authorship of the modifications in the Modified
490
+Version, together with at least five of the principal authors of the
491
+Document (all of its principal authors, if it has fewer than five),
492
+unless they release you from this requirement.
495
+State on the Title page the name of the publisher of the
496
+Modified Version, as the publisher.
499
+Preserve all the copyright notices of the Document.
502
+Add an appropriate copyright notice for your modifications
503
+adjacent to the other copyright notices.
506
+Include, immediately after the copyright notices, a license notice
507
+giving the public permission to use the Modified Version under the
508
+terms of this License, in the form shown in the Addendum below.
511
+Preserve in that license notice the full lists of Invariant Sections
512
+and required Cover Texts given in the Document's license notice.
515
+Include an unaltered copy of this License.
518
+Preserve the section Entitled ``History'', Preserve its Title, and add
519
+to it an item stating at least the title, year, new authors, and
520
+publisher of the Modified Version as given on the Title Page. If
521
+there is no section Entitled ``History'' in the Document, create one
522
+stating the title, year, authors, and publisher of the Document as
523
+given on its Title Page, then add an item describing the Modified
524
+Version as stated in the previous sentence.
527
+Preserve the network location, if any, given in the Document for
528
+public access to a Transparent copy of the Document, and likewise
529
+the network locations given in the Document for previous versions
530
+it was based on. These may be placed in the ``History'' section.
531
+You may omit a network location for a work that was published at
532
+least four years before the Document itself, or if the original
533
+publisher of the version it refers to gives permission.
536
+For any section Entitled ``Acknowledgements'' or ``Dedications'', Preserve
537
+the Title of the section, and preserve in the section all the
538
+substance and tone of each of the contributor acknowledgements and/or
539
+dedications given therein.
542
+Preserve all the Invariant Sections of the Document,
543
+unaltered in their text and in their titles. Section numbers
544
+or the equivalent are not considered part of the section titles.
547
+Delete any section Entitled ``Endorsements''. Such a section
548
+may not be included in the Modified Version.
551
+Do not retitle any existing section to be Entitled ``Endorsements'' or
552
+to conflict in title with any Invariant Section.
555
+Preserve any Warranty Disclaimers.
558
+If the Modified Version includes new front-matter sections or
559
+appendices that qualify as Secondary Sections and contain no material
560
+copied from the Document, you may at your option designate some or all
561
+of these sections as invariant. To do this, add their titles to the
562
+list of Invariant Sections in the Modified Version's license notice.
563
+These titles must be distinct from any other section titles.
565
+You may add a section Entitled ``Endorsements'', provided it contains
566
+nothing but endorsements of your Modified Version by various
567
+parties---for example, statements of peer review or that the text has
568
+been approved by an organization as the authoritative definition of a
571
+You may add a passage of up to five words as a Front-Cover Text, and a
572
+passage of up to 25 words as a Back-Cover Text, to the end of the list
573
+of Cover Texts in the Modified Version. Only one passage of
574
+Front-Cover Text and one of Back-Cover Text may be added by (or
575
+through arrangements made by) any one entity. If the Document already
576
+includes a cover text for the same cover, previously added by you or
577
+by arrangement made by the same entity you are acting on behalf of,
578
+you may not add another; but you may replace the old one, on explicit
579
+permission from the previous publisher that added the old one.
581
+The author(s) and publisher(s) of the Document do not by this License
582
+give permission to use their names for publicity for or to assert or
583
+imply endorsement of any Modified Version.
588
+You may combine the Document with other documents released under this
589
+License, under the terms defined in section 4 above for modified
590
+versions, provided that you include in the combination all of the
591
+Invariant Sections of all of the original documents, unmodified, and
592
+list them all as Invariant Sections of your combined work in its
593
+license notice, and that you preserve all their Warranty Disclaimers.
595
+The combined work need only contain one copy of this License, and
596
+multiple identical Invariant Sections may be replaced with a single
597
+copy. If there are multiple Invariant Sections with the same name but
598
+different contents, make the title of each such section unique by
599
+adding at the end of it, in parentheses, the name of the original
600
+author or publisher of that section if known, or else a unique number.
601
+Make the same adjustment to the section titles in the list of
602
+Invariant Sections in the license notice of the combined work.
604
+In the combination, you must combine any sections Entitled ``History''
605
+in the various original documents, forming one section Entitled
606
+``History''; likewise combine any sections Entitled ``Acknowledgements'',
607
+and any sections Entitled ``Dedications''. You must delete all
608
+sections Entitled ``Endorsements.''
611
+COLLECTIONS OF DOCUMENTS
613
+You may make a collection consisting of the Document and other documents
614
+released under this License, and replace the individual copies of this
615
+License in the various documents with a single copy that is included in
616
+the collection, provided that you follow the rules of this License for
617
+verbatim copying of each of the documents in all other respects.
619
+You may extract a single document from such a collection, and distribute
620
+it individually under this License, provided you insert a copy of this
621
+License into the extracted document, and follow this License in all
622
+other respects regarding verbatim copying of that document.
625
+AGGREGATION WITH INDEPENDENT WORKS
627
+A compilation of the Document or its derivatives with other separate
628
+and independent documents or works, in or on a volume of a storage or
629
+distribution medium, is called an ``aggregate'' if the copyright
630
+resulting from the compilation is not used to limit the legal rights
631
+of the compilation's users beyond what the individual works permit.
632
+When the Document is included in an aggregate, this License does not
633
+apply to the other works in the aggregate which are not themselves
634
+derivative works of the Document.
636
+If the Cover Text requirement of section 3 is applicable to these
637
+copies of the Document, then if the Document is less than one half of
638
+the entire aggregate, the Document's Cover Texts may be placed on
639
+covers that bracket the Document within the aggregate, or the
640
+electronic equivalent of covers if the Document is in electronic form.
641
+Otherwise they must appear on printed covers that bracket the whole
647
+Translation is considered a kind of modification, so you may
648
+distribute translations of the Document under the terms of section 4.
649
+Replacing Invariant Sections with translations requires special
650
+permission from their copyright holders, but you may include
651
+translations of some or all Invariant Sections in addition to the
652
+original versions of these Invariant Sections. You may include a
653
+translation of this License, and all the license notices in the
654
+Document, and any Warranty Disclaimers, provided that you also include
655
+the original English version of this License and the original versions
656
+of those notices and disclaimers. In case of a disagreement between
657
+the translation and the original version of this License or a notice
658
+or disclaimer, the original version will prevail.
660
+If a section in the Document is Entitled ``Acknowledgements'',
661
+``Dedications'', or ``History'', the requirement (section 4) to Preserve
662
+its Title (section 1) will typically require changing the actual
668
+You may not copy, modify, sublicense, or distribute the Document except
669
+as expressly provided for under this License. Any other attempt to
670
+copy, modify, sublicense or distribute the Document is void, and will
671
+automatically terminate your rights under this License. However,
672
+parties who have received copies, or rights, from you under this
673
+License will not have their licenses terminated so long as such
674
+parties remain in full compliance.
677
+FUTURE REVISIONS OF THIS LICENSE
679
+The Free Software Foundation may publish new, revised versions
680
+of the GNU Free Documentation License from time to time. Such new
681
+versions will be similar in spirit to the present version, but may
682
+differ in detail to address new problems or concerns. See
683
+@uref{http://www.gnu.org/copyleft/}.
685
+Each version of the License is given a distinguishing version number.
686
+If the Document specifies that a particular numbered version of this
687
+License ``or any later version'' applies to it, you have the option of
688
+following the terms and conditions either of that specified version or
689
+of any later version that has been published (not as a draft) by the
690
+Free Software Foundation. If the Document does not specify a version
691
+number of this License, you may choose any version ever published (not
692
+as a draft) by the Free Software Foundation.
696
+@appendixsubsec ADDENDUM: How to use this License for your documents
698
+To use this License in a document you have written, include a copy of
699
+the License in the document and put the following copyright and
700
+license notices just after the title page:
704
+ Copyright (C) @var{year} @var{your name}.
705
+ Permission is granted to copy, distribute and/or modify this document
706
+ under the terms of the GNU Free Documentation License, Version 1.2
707
+ or any later version published by the Free Software Foundation;
708
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
709
+ Texts. A copy of the license is included in the section entitled ``GNU
710
+ Free Documentation License''.
714
+If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
715
+replace the ``with...Texts.'' line with this:
719
+ with the Invariant Sections being @var{list their titles}, with
720
+ the Front-Cover Texts being @var{list}, and with the Back-Cover Texts
725
+If you have Invariant Sections without Cover Texts, or some other
726
+combination of the three, merge those two alternatives to suit the
729
+If your document contains nontrivial examples of program code, we
730
+recommend releasing these examples in parallel under your choice of
731
+free software license, such as the GNU General Public License,
732
+to permit their use in free software.
735
+@c ispell-local-pdict: "ispell-dict"
738
Index: docs/grub-install.8
739
===================================================================
740
RCS file: /sources/grub/grub/docs/grub-install.8,v
741
retrieving revision 1.52
742
retrieving revision 1.53
743
diff -u -p -u -r1.52 -r1.53
744
--- foo/docs/grub-install.8 8 May 2005 02:51:52 -0000 1.52
745
+++ foo/docs/grub-install.8 24 Jun 2006 14:40:02 -0000 1.53
747
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.23.
748
-.TH GRUB-INSTALL "8" "May 2005" "grub-install (GNU GRUB 0.97)" FSF
749
+.TH GRUB-INSTALL "8" "June 2006" "grub-install (GNU GRUB 0.97)" FSF
751
grub-install \- install GRUB on your drive
753
Index: docs/grub-md5-crypt.8
754
===================================================================
755
RCS file: /sources/grub/grub/docs/grub-md5-crypt.8,v
756
retrieving revision 1.32
757
retrieving revision 1.33
758
diff -u -p -u -r1.32 -r1.33
759
--- foo/docs/grub-md5-crypt.8 8 May 2005 02:51:52 -0000 1.32
760
+++ foo/docs/grub-md5-crypt.8 24 Jun 2006 14:40:02 -0000 1.33
762
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.23.
763
-.TH GRUB-MD5-CRYPT "8" "May 2005" "grub-md5-crypt (GNU GRUB )" FSF
764
+.TH GRUB-MD5-CRYPT "8" "June 2006" "grub-md5-crypt (GNU GRUB )" FSF
766
grub-md5-crypt \- Encrypt a password in MD5 format
768
Index: docs/grub-terminfo.8
769
===================================================================
770
RCS file: /sources/grub/grub/docs/grub-terminfo.8,v
771
retrieving revision 1.12
772
retrieving revision 1.13
773
diff -u -p -u -r1.12 -r1.13
774
--- foo/docs/grub-terminfo.8 8 May 2005 02:51:52 -0000 1.12
775
+++ foo/docs/grub-terminfo.8 24 Jun 2006 14:40:02 -0000 1.13
777
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.23.
778
-.TH GRUB-TERMINFO "8" "May 2005" "grub-terminfo (GNU GRUB 0.97)" FSF
779
+.TH GRUB-TERMINFO "8" "June 2006" "grub-terminfo (GNU GRUB 0.97)" FSF
781
grub-terminfo \- Generate a terminfo command from a terminfo name
784
===================================================================
785
RCS file: /sources/grub/grub/docs/grub.8,v
786
retrieving revision 1.65
787
retrieving revision 1.67
788
diff -u -p -u -r1.65 -r1.67
789
--- foo/docs/grub.8 8 May 2005 02:51:52 -0000 1.65
790
+++ foo/docs/grub.8 24 Jun 2006 14:40:02 -0000 1.67
792
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.23.
793
-.TH GRUB "8" "May 2005" "grub (GNU GRUB 0.97)" FSF
794
+.TH GRUB "8" "June 2006" "grub (GNU GRUB 0.97)" FSF
796
grub \- the grub shell
798
Index: docs/grub.texi
799
===================================================================
800
RCS file: /sources/grub/grub/docs/grub.texi,v
801
retrieving revision 1.84
802
retrieving revision 1.85
803
diff -u -p -u -r1.84 -r1.85
804
--- foo/docs/grub.texi 20 Sep 2004 21:55:00 -0000 1.84
805
+++ foo/docs/grub.texi 24 Jun 2006 14:40:02 -0000 1.85
808
@c %**start of header
809
@setfilename grub.info
810
-@settitle GRUB Manual
813
@include version.texi
815
+@settitle GNU GRUB Manual @value{VERSION}
816
@c Unify all our little indices for now.
824
@footnotestyle separate
829
+This manual is for GNU GRUB (version @value{VERSION},
832
+Copyright @copyright{} 1999,2000,2001,2002,2004,2006 Free Software Foundation, Inc.
835
+Permission is granted to copy, distribute and/or modify this document
836
+under the terms of the GNU Free Documentation License, Version 1.2 or
837
+any later version published by the Free Software Foundation; with no
838
+Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,''
839
+and with the Back-Cover Texts as in (a) below. A copy of the
840
+license is included in the section entitled ``GNU Free Documentation
843
+(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
844
+this GNU Manual, like GNU software. Copies published by the Free
845
+Software Foundation raise funds for GNU development.''
851
* GRUB: (grub). The GRand Unified Bootloader
854
@setchapternewpage odd
857
-Copyright @copyright{} 1999,2000,2001,2002,2004 Free Software Foundation, Inc.
859
-Permission is granted to make and distribute verbatim copies of
860
-this manual provided the copyright notice and this permission notice
861
-are preserved on all copies.
864
-Permission is granted to process this file through TeX and print the
865
-results, provided the printed document carries a copying permission
866
-notice identical to this one except for the removal of this paragraph
867
-(this paragraph not being relevant to the printed manual).
871
-Permission is granted to copy and distribute modified versions of this
872
-manual under the conditions for verbatim copying, provided also that
873
-the entire resulting derived work is distributed under the terms of a
874
-permission notice identical to this one.
876
-Permission is granted to copy and distribute translations of this manual
877
-into another language, under the above conditions for modified versions.
882
-@title the GRUB manual
883
+@title the GNU GRUB manual
884
@subtitle The GRand Unified Bootloader, version @value{VERSION}, @value{UPDATED}.
885
@author Gordon Matzigkeit
886
@author Yoshinori K. Okuji
887
@c The following two commands start the copyright page.
889
@vskip 0pt plus 1filll
890
-Copyright @copyright{} 1999,2000,2001,2002,2004 Free Software Foundation, Inc.
892
-Permission is granted to make and distribute verbatim copies of
893
-this manual provided the copyright notice and this permission notice
894
-are preserved on all copies.
895
-Permission is granted to copy and distribute modified versions of this
896
-manual under the conditions for verbatim copying, provided that the entire
897
-resulting derived work is distributed under the terms of a permission
898
-notice identical to this one.
900
-Permission is granted to copy and distribute translations of this manual
901
-into another language, under the above conditions for modified versions,
902
-except that this permission notice may be stated in a translation approved
903
-by Free Software Foundation.
907
@c Output the table of contents at the beginning.
908
@@ -91,12 +73,14 @@ by Free Software Foundation.
913
+@top GNU GRUB manual
915
This is the documentation of GNU GRUB, the GRand Unified Bootloader,
916
a flexible and powerful boot loader program for @sc{pc}s.
918
This edition documents version @value{VERSION}.
924
@@ -124,6 +108,7 @@ This edition documents version @value{VE
925
* Reporting bugs:: Where you should send a bug report
926
* Future:: Some future plans on GRUB
927
* Internals:: Hacking GRUB
928
+* Copying This Manual:: Copying This Manual
932
@@ -3965,6 +3950,16 @@ homepage}.
933
@include internals.texi
936
+@node Copying This Manual
937
+@appendix Copying This Manual
940
+* GNU Free Documentation License:: License for copying this manual.
950
===================================================================
951
RCS file: /sources/grub/grub/docs/mbchk.1,v
952
retrieving revision 1.53
953
retrieving revision 1.54
954
diff -u -p -u -r1.53 -r1.54
955
--- foo/docs/mbchk.1 8 May 2005 02:51:52 -0000 1.53
956
+++ foo/docs/mbchk.1 24 Jun 2006 14:40:02 -0000 1.54
958
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.23.
959
-.TH MBCHK "1" "May 2005" "mbchk (GNU GRUB 0.97)" FSF
960
+.TH MBCHK "1" "June 2006" "mbchk (GNU GRUB 0.97)" FSF
962
mbchk \- check the format of a Multiboot kernel
964
Index: docs/multiboot.texi
965
===================================================================
966
RCS file: /sources/grub/grub/docs/multiboot.texi,v
967
retrieving revision 1.18
968
retrieving revision 1.21
969
diff -u -p -u -r1.18 -r1.21
970
--- foo/docs/multiboot.texi 16 Jun 2002 03:12:58 -0000 1.18
971
+++ foo/docs/multiboot.texi 24 Jun 2006 14:40:02 -0000 1.21
973
\input texinfo @c -*-texinfo-*-
975
@c %**start of header
976
@setfilename multiboot.info
977
-@settitle Multiboot Specification
981
+@settitle Multiboot Specification version @value{VERSION}
982
@c Unify all our little indices for now.
990
@footnotestyle separate
995
+Copyright @copyright{} 1995,96 Bryan Ford <baford@@cs.utah.edu>
999
-* Multiboot Specification: (multiboot). Multiboot Specification.
1001
+Copyright @copyright{} 1995,96 Erich Stefan Boleyn <erich@@uruk.org>
1004
-Copyright @copyright{} 1995, 96 Bryan Ford <baford@@cs.utah.edu>
1005
-Copyright @copyright{} 1995, 96 Erich Stefan Boleyn <erich@@uruk.org>
1006
-Copyright @copyright{} 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
1007
+Copyright @copyright{} 1999,2000,2001,2002,2005,2006 Free Software Foundation, Inc.
1010
Permission is granted to make and distribute verbatim copies of
1011
this manual provided the copyright notice and this permission notice
1012
are preserved on all copies.
1013
@@ -36,7 +32,6 @@ Permission is granted to process this fi
1014
results, provided the printed document carries a copying permission
1015
notice identical to this one except for the removal of this paragraph
1016
(this paragraph not being relevant to the printed manual).
1020
Permission is granted to copy and distribute modified versions of this
1021
@@ -45,31 +40,23 @@ the entire resulting derived work is dis
1022
permission notice identical to this one.
1024
Permission is granted to copy and distribute translations of this manual
1025
-into another language, under the above conditions for modified versions.
1027
+into another language, under the above conditions for modified
1032
+@dircategory Kernel
1034
+* Multiboot Specification: (multiboot). Multiboot Specification.
1039
-@title The Multiboot Specification
1040
+@title The Multiboot Specification version @value{VERSION}
1041
@author Yoshinori K. Okuji, Bryan Ford, Erich Stefan Boleyn, Kunihiro Ishiguro
1044
@vskip 0pt plus 1filll
1045
-Copyright @copyright{} 1995, 96 Bryan Ford <baford@@cs.utah.edu>
1046
-Copyright @copyright{} 1995, 96 Erich Stefan Boleyn <erich@@uruk.org>
1047
-Copyright @copyright{} 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
1049
-Permission is granted to make and distribute verbatim copies of
1050
-this manual provided the copyright notice and this permission notice
1051
-are preserved on all copies.
1053
-Permission is granted to copy and distribute modified versions of this
1054
-manual under the conditions for verbatim copying, provided also that
1055
-the entire resulting derived work is distributed under the terms of a
1056
-permission notice identical to this one.
1058
-Permission is granted to copy and distribute translations of this manual
1059
-into another language, under the above conditions for modified versions.
1064
@@ -80,7 +67,9 @@ into another language, under the above c
1065
@top Multiboot Specification
1067
This file documents Multiboot Specification, the proposal for the boot
1068
-sequence standard. This edition documents version 0.6.93.
1069
+sequence standard. This edition documents version @value{VERSION}.
1075
@@ -426,7 +415,7 @@ mode table (@pxref{Boot information form
1078
If bit 16 in the @samp{flags} word is set, then the fields at offsets
1079
-8-24 in the Multiboot header are valid, and the boot loader should use
1080
+12-28 in the Multiboot header are valid, and the boot loader should use
1081
them instead of the fields in the actual executable header to calculate
1082
where to load the OS image. This information does not need to be
1083
provided if the kernel image is in @sc{elf} format, but it @emph{must}
1084
@@ -677,7 +666,7 @@ follows:
1087
+-------+-------+-------+-------+
1088
-| drive | part1 | part2 | part3 |
1089
+| part3 | part2 | part1 | drive |
1090
+-------+-------+-------+-------+
1093
@@ -1197,6 +1186,17 @@ Rewritten, using more strict words.
1095
The maintainer changes to the GNU GRUB maintainer team
1096
@email{bug-grub@@gnu.org}, from Bryan Ford and Erich Stefan Boleyn.
1099
+The byte order of the @samp{boot_device} in Multiboot information is
1100
+reversed. This was a mistake.
1103
+The offset of the address fields were wrong.
1106
+The format is adapted to a newer Texinfo, and the version number is
1107
+specified more explicitly in the title.
1111
Index: docs/stamp-vti
1112
===================================================================
1113
RCS file: /sources/grub/grub/docs/stamp-vti,v
1114
retrieving revision 1.47
1115
retrieving revision 1.48
1116
diff -u -p -u -r1.47 -r1.48
1117
Index: docs/version.texi
1118
===================================================================
1119
RCS file: /sources/grub/grub/docs/version.texi,v
1120
retrieving revision 1.47
1121
retrieving revision 1.48
1122
diff -u -p -u -r1.47 -r1.48
1123
Index: grub/asmstub.c
1124
===================================================================
1125
RCS file: /sources/grub/grub/grub/asmstub.c,v
1126
retrieving revision 1.84
1127
retrieving revision 1.87
1128
diff -u -p -u -r1.84 -r1.87
1129
--- foo/grub/asmstub.c 16 Feb 2005 20:45:48 -0000 1.84
1130
+++ foo/grub/asmstub.c 28 Mar 2008 13:22:28 -0000 1.87
1131
@@ -55,6 +55,10 @@ int grub_stage2 (void);
1132
# endif /* ! BLKFLSBUF */
1133
#endif /* __linux__ */
1135
+#if defined(__FreeBSD_kernel__) || defined(__FreeBSD__)
1136
+# include <sys/sysctl.h>
1139
/* We want to prevent any circularararity in our stubs, as well as
1140
libc name clashes. */
1141
#define WITHOUT_LIBC_STUBS 1
1142
@@ -777,7 +781,39 @@ get_diskinfo (int drive, struct geometry
1144
/* Open read/write, or read-only if that failed. */
1146
- disks[drive].flags = open (devname, O_RDWR);
1148
+/* By default, kernel of FreeBSD does not allow overwriting MBR */
1149
+#if defined(__FreeBSD_kernel__) || defined(__FreeBSD__)
1150
+#define GEOM_SYSCTL "kern.geom.debugflags"
1151
+ int old_flags, flags;
1152
+ size_t sizeof_int = sizeof (int);
1154
+ if (sysctlbyname (GEOM_SYSCTL, &old_flags, &sizeof_int, NULL, 0) != 0)
1155
+ grub_printf ("failed to get " GEOM_SYSCTL "sysctl: %s\n", strerror (errno));
1157
+ if ((old_flags & 0x10) == 0)
1159
+ /* "allow foot shooting", see geom(4) */
1160
+ flags = old_flags | 0x10;
1162
+ if (sysctlbyname (GEOM_SYSCTL, NULL, NULL, &flags, sizeof (int)) != 0)
1164
+ flags = old_flags;
1165
+ grub_printf ("failed to set " GEOM_SYSCTL "sysctl: %s\n", strerror (errno));
1169
+ flags = old_flags;
1171
+ disks[drive].flags = open (devname, O_RDWR);
1172
+#if defined(__FreeBSD_kernel__) || defined(__FreeBSD__)
1173
+ if (flags != old_flags)
1175
+ if (sysctlbyname (GEOM_SYSCTL, NULL, NULL, &old_flags, sizeof (int)) != 0)
1176
+ grub_printf ("failed to set " GEOM_SYSCTL "sysctl: %s\n", strerror (errno));
1181
if (disks[drive].flags == -1)
1183
@@ -926,7 +962,7 @@ hex_dump (void *buf, size_t size)
1186
biosdisk (int subfunc, int drive, struct geometry *geometry,
1187
- int sector, int nsec, int segment)
1188
+ unsigned int sector, int nsec, int segment)
1191
int fd = geometry->flags;
1193
===================================================================
1194
RCS file: /sources/grub/grub/grub/main.c,v
1195
retrieving revision 1.23
1196
retrieving revision 1.24
1197
diff -u -p -u -r1.23 -r1.24
1198
--- foo/grub/main.c 11 Jun 2002 16:36:54 -0000 1.23
1199
+++ foo/grub/main.c 5 May 2006 21:43:46 -0000 1.24
1200
@@ -32,6 +32,7 @@ int grub_stage2 (void);
1201
#define WITHOUT_LIBC_STUBS 1
1204
+#include <device.h>
1206
char *program_name = 0;
1207
int use_config_file = 1;
1208
@@ -192,6 +193,12 @@ main (int argc, char **argv)
1212
+ if (boot_drive >= NUM_DISKS)
1214
+ fprintf (stderr, "boot_drive should be from 0 to %d\n",
1220
case OPT_NO_CONFIG_FILE:
1222
===================================================================
1223
RCS file: /sources/grub/grub/lib/device.c,v
1224
retrieving revision 1.26
1225
retrieving revision 1.29
1226
diff -u -p -u -r1.26 -r1.29
1227
--- foo/lib/device.c 27 Mar 2005 23:20:09 -0000 1.26
1228
+++ foo/lib/device.c 28 Mar 2008 13:22:28 -0000 1.29
1229
@@ -69,9 +69,9 @@ struct hd_geometry
1230
# ifndef CDROM_GET_CAPABILITY
1231
# define CDROM_GET_CAPABILITY 0x5331 /* get capabilities */
1232
# endif /* ! CDROM_GET_CAPABILITY */
1233
-# ifndef BLKGETSIZE
1234
-# define BLKGETSIZE _IO(0x12,96) /* return device size */
1235
-# endif /* ! BLKGETSIZE */
1236
+# ifndef BLKGETSIZE64
1237
+# define BLKGETSIZE64 _IOR(0x12,114,size_t) /* return device size */
1238
+# endif /* ! BLKGETSIZE64 */
1239
#endif /* __linux__ */
1241
/* Use __FreeBSD_kernel__ instead of __FreeBSD__ for compatibility with
1242
@@ -152,19 +152,19 @@ get_drive_geometry (struct geometry *geo
1245
struct hd_geometry hdg;
1247
+ unsigned long long nr;
1249
if (ioctl (fd, HDIO_GETGEO, &hdg))
1252
- if (ioctl (fd, BLKGETSIZE, &nr))
1253
+ if (ioctl (fd, BLKGETSIZE64, &nr))
1256
/* Got the geometry, so save it. */
1257
geom->cylinders = hdg.cylinders;
1258
geom->heads = hdg.heads;
1259
geom->sectors = hdg.sectors;
1260
- geom->total_sectors = nr;
1261
+ geom->total_sectors = nr / 512;
1265
@@ -407,6 +407,12 @@ get_ataraid_disk_name (char *name, int u
1267
sprintf (name, "/dev/ataraid/d%c", unit + '0');
1271
+get_i2o_disk_name (char *name, char unit)
1273
+ sprintf (name, "/dev/i2o/hd%c", unit);
1277
/* Check if DEVICE can be read. If an error occurs, return zero,
1278
@@ -801,6 +807,29 @@ init_device_map (char ***map, const char
1283
+ /* This is for I2O - we have /dev/i2o/hd<logical drive><partition> */
1287
+ for (unit = 'a'; unit < 'f'; unit++)
1291
+ get_i2o_disk_name (name, unit);
1292
+ if (check_device (name))
1294
+ (*map)[num_hd + 0x80] = strdup (name);
1295
+ assert ((*map)[num_hd + 0x80]);
1297
+ /* If the device map file is opened, write the map. */
1299
+ fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
1305
#endif /* __linux__ */
1307
/* OK, close the device map file if opened. */
1308
@@ -861,6 +890,12 @@ write_to_partition (char **map, int driv
1309
if (strcmp (dev + strlen(dev) - 5, "/disc") == 0)
1310
strcpy (dev + strlen(dev) - 5, "/part");
1314
+ if ((strncmp (dev, "/dev/ataraid/", 13) == 0) ||
1315
+ (strncmp (dev, "/dev/rd/", 8) == 0))
1316
+ strcpy (dev + strlen(dev), "p");
1318
sprintf (dev + strlen(dev), "%d", ((partition >> 16) & 0xFF) + 1);
1320
/* Open the partition. */
1321
Index: netboot/cs89x0.c
1322
===================================================================
1323
RCS file: /sources/grub/grub/netboot/cs89x0.c,v
1324
retrieving revision 1.5
1325
retrieving revision 1.6
1326
diff -u -p -u -r1.5 -r1.6
1327
--- foo/netboot/cs89x0.c 2 Jan 2002 21:56:40 -0000 1.5
1328
+++ foo/netboot/cs89x0.c 20 May 2008 11:04:18 -0000 1.6
1331
+ Per an email message from Russ Nelson <nelson@crynwr.com> on
1332
+ 18 March 2008 this file is now licensed under GPL Version 2.
1334
+ From: Russ Nelson <nelson@crynwr.com>
1335
+ Date: Tue, 18 Mar 2008 12:42:00 -0400
1336
+ Subject: Re: [Etherboot-developers] cs89x0 driver in etherboot
1337
+ -- quote from email
1338
+ As copyright holder, if I say it doesn't conflict with the GPL,
1339
+ then it doesn't conflict with the GPL.
1341
+ However, there's no point in causing people's brains to overheat,
1342
+ so yes, I grant permission for the code to be relicensed under the
1343
+ GPLv2. Please make sure that this change in licensing makes its
1344
+ way upstream. -russ
1345
+ -- quote from email
1348
/* cs89x0.c: A Crystal Semiconductor CS89[02]0 driver for etherboot. */
1350
Permission is granted to distribute the enclosed cs89x0.[ch] driver
1351
Index: netboot/cs89x0.h
1352
===================================================================
1353
RCS file: /sources/grub/grub/netboot/cs89x0.h,v
1354
retrieving revision 1.3
1355
retrieving revision 1.4
1356
diff -u -p -u -r1.3 -r1.4
1357
--- foo/netboot/cs89x0.h 22 Apr 2000 01:17:09 -0000 1.3
1358
+++ foo/netboot/cs89x0.h 20 May 2008 11:04:18 -0000 1.4
1361
+ Per an email message from Russ Nelson <nelson@crynwr.com> on
1362
+ 18 March 2008 this file is now licensed under GPL Version 2.
1364
+ From: Russ Nelson <nelson@crynwr.com>
1365
+ Date: Tue, 18 Mar 2008 12:42:00 -0400
1366
+ Subject: Re: [Etherboot-developers] cs89x0 driver in etherboot
1367
+ -- quote from email
1368
+ As copyright holder, if I say it doesn't conflict with the GPL,
1369
+ then it doesn't conflict with the GPL.
1371
+ However, there's no point in causing people's brains to overheat,
1372
+ so yes, I grant permission for the code to be relicensed under the
1373
+ GPLv2. Please make sure that this change in licensing makes its
1374
+ way upstream. -russ
1375
+ -- quote from email
1378
/* Copyright, 1988-1992, Russell Nelson, Crynwr Software
1380
This program is free software; you can redistribute it and/or modify
1381
Index: netboot/etherboot.h
1382
===================================================================
1383
RCS file: /sources/grub/grub/netboot/etherboot.h,v
1384
retrieving revision 1.12
1385
retrieving revision 1.13
1386
diff -u -p -u -r1.12 -r1.13
1387
--- foo/netboot/etherboot.h 8 May 2002 07:12:29 -0000 1.12
1388
+++ foo/netboot/etherboot.h 8 Sep 2006 12:56:22 -0000 1.13
1389
@@ -531,9 +531,6 @@ extern int ip_abort;
1390
extern int network_ready;
1391
extern struct rom_info rom;
1392
extern struct arptable_t arptable[MAX_ARP];
1393
-extern struct bootpd_t bootp_data;
1394
-#define BOOTP_DATA_ADDR (&bootp_data)
1395
-extern unsigned char *end_of_rfc1533;
1398
extern struct nic nic;
1399
Index: netboot/main.c
1400
===================================================================
1401
RCS file: /sources/grub/grub/netboot/main.c,v
1402
retrieving revision 1.16
1403
retrieving revision 1.17
1404
diff -u -p -u -r1.16 -r1.17
1405
--- foo/netboot/main.c 20 May 2004 22:17:27 -0000 1.16
1406
+++ foo/netboot/main.c 8 Sep 2006 12:56:22 -0000 1.17
1407
@@ -56,7 +56,8 @@ static int vendorext_isvalid;
1408
static unsigned long netmask;
1409
static struct bootpd_t bootp_data;
1410
static unsigned long xid;
1411
-static unsigned char *end_of_rfc1533 = NULL;
1413
+#define BOOTP_DATA_ADDR (&bootp_data)
1415
#ifndef NO_DHCP_SUPPORT
1416
#endif /* NO_DHCP_SUPPORT */
1417
@@ -967,7 +968,6 @@ decode_rfc1533 (unsigned char *p, int bl
1421
- end_of_rfc1533 = NULL;
1422
vendorext_isvalid = 0;
1424
if (grub_memcmp (p, rfc1533_cookie, 4))
1425
@@ -1021,7 +1021,7 @@ decode_rfc1533 (unsigned char *p, int bl
1427
else if (c == RFC1533_END)
1429
- end_of_rfc1533 = endp = p;
1433
else if (c == RFC1533_NETMASK)
1434
Index: netboot/natsemi.c
1435
===================================================================
1436
RCS file: /sources/grub/grub/netboot/natsemi.c,v
1437
retrieving revision 1.1
1438
retrieving revision 1.2
1439
diff -u -p -u -r1.1 -r1.2
1440
--- foo/netboot/natsemi.c 15 Jan 2002 10:32:22 -0000 1.1
1441
+++ foo/netboot/natsemi.c 10 Sep 2006 07:26:10 -0000 1.2
1442
@@ -608,7 +608,7 @@ natsemi_transmit(struct nic *nic,
1443
const char *p) /* Packet */
1445
u32 status, to, nstype;
1447
+ volatile u32 tx_status;
1449
/* Stop the transmitter */
1450
outl(TxOff, ioaddr + ChipCmd);
1451
@@ -647,7 +647,7 @@ natsemi_transmit(struct nic *nic,
1453
to = currticks() + TX_TIMEOUT;
1455
- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
1456
+ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
1459
if (currticks() >= to) {
1460
Index: netboot/sis900.c
1461
===================================================================
1462
RCS file: /sources/grub/grub/netboot/sis900.c,v
1463
retrieving revision 1.1
1464
retrieving revision 1.2
1465
diff -u -p -u -r1.1 -r1.2
1466
--- foo/netboot/sis900.c 2 Jan 2002 21:56:40 -0000 1.1
1467
+++ foo/netboot/sis900.c 10 Sep 2006 07:26:10 -0000 1.2
1468
@@ -901,7 +901,7 @@ sis900_transmit(struct nic *nic,
1469
const char *p) /* Packet */
1471
u32 status, to, nstype;
1473
+ volatile u32 tx_status;
1475
/* Stop the transmitter */
1476
outl(TxDIS, ioaddr + cr);
1477
@@ -940,7 +940,7 @@ sis900_transmit(struct nic *nic,
1479
to = currticks() + TX_TIMEOUT;
1481
- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
1482
+ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
1485
if (currticks() >= to) {
1486
Index: stage1/Makefile.am
1487
===================================================================
1488
RCS file: /sources/grub/grub/stage1/Makefile.am,v
1489
retrieving revision 1.17
1490
retrieving revision 1.18
1491
diff -u -p -u -r1.17 -r1.18
1492
--- foo/stage1/Makefile.am 24 Jun 2004 17:04:37 -0000 1.17
1493
+++ foo/stage1/Makefile.am 5 Nov 2007 01:29:46 -0000 1.18
1494
@@ -5,7 +5,7 @@ CLEANFILES = $(nodist_pkglib_DATA)
1496
# We can't use builtins or standard includes.
1497
AM_CCASFLAGS = $(STAGE1_CFLAGS) -fno-builtin -nostdinc
1498
-LDFLAGS = -nostdlib -Wl,-N,-Ttext,7C00
1499
+stage1_exec_LDFLAGS = -nostdlib -Wl,-N,-Ttext,7C00
1501
noinst_PROGRAMS = stage1.exec
1502
stage1_exec_SOURCES = stage1.S stage1.h
1503
Index: stage2/bios.c
1504
===================================================================
1505
RCS file: /sources/grub/grub/stage2/bios.c,v
1506
retrieving revision 1.16
1507
retrieving revision 1.17
1508
diff -u -p -u -r1.16 -r1.17
1509
--- foo/stage2/bios.c 27 Mar 2004 17:02:54 -0000 1.16
1510
+++ foo/stage2/bios.c 28 Mar 2008 13:22:28 -0000 1.17
1511
@@ -47,7 +47,7 @@ extern int get_diskinfo_floppy (int driv
1512
return the error number. Otherwise, return 0. */
1514
biosdisk (int read, int drive, struct geometry *geometry,
1515
- int sector, int nsec, int segment)
1516
+ unsigned int sector, int nsec, int segment)
1520
Index: stage2/boot.c
1521
===================================================================
1522
RCS file: /sources/grub/grub/stage2/boot.c,v
1523
retrieving revision 1.46
1524
retrieving revision 1.47
1525
diff -u -p -u -r1.46 -r1.47
1526
--- foo/stage2/boot.c 29 Mar 2004 14:54:30 -0000 1.46
1527
+++ foo/stage2/boot.c 28 Sep 2005 21:47:55 -0000 1.47
1529
/* boot.c - load and bootstrap a kernel */
1531
* GRUB -- GRand Unified Bootloader
1532
- * Copyright (C) 1999,2000,2001,2002,2003,2004 Free Software Foundation, Inc.
1533
+ * Copyright (C) 1999,2000,2001,2002,2003,2004,2005 Free Software Foundation, Inc.
1535
* This program is free software; you can redistribute it and/or modify
1536
* it under the terms of the GNU General Public License as published by
1537
@@ -96,7 +96,7 @@ load_image (char *kernel, char *arg, ker
1538
lh = (struct linux_kernel_header *) buffer;
1540
/* ELF loading supported if multiboot, FreeBSD and NetBSD. */
1541
- if ((type == KERNEL_TYPE_MULTIBOOT
1542
+ if (((type == KERNEL_TYPE_MULTIBOOT && ! (flags & MULTIBOOT_AOUT_KLUDGE))
1543
|| pu.elf->e_ident[EI_OSABI] == ELFOSABI_FREEBSD
1544
|| grub_strcmp (pu.elf->e_ident + EI_BRAND, "FreeBSD") == 0
1545
|| suggested_type == KERNEL_TYPE_NETBSD)
1546
Index: stage2/builtins.c
1547
===================================================================
1548
RCS file: /sources/grub/grub/stage2/builtins.c,v
1549
retrieving revision 1.151
1550
retrieving revision 1.152
1551
diff -u -p -u -r1.151 -r1.152
1552
--- foo/stage2/builtins.c 15 Feb 2005 22:05:07 -0000 1.151
1553
+++ foo/stage2/builtins.c 21 Mar 2006 20:51:58 -0000 1.152
1554
@@ -3830,15 +3830,15 @@ setup_func (char *arg, int flags)
1557
grub_sprintf (tmp, ",%d", (partition >> 16) & 0xFF);
1558
- grub_strncat (device, tmp, 256);
1559
+ grub_strncat (device, tmp, sizeof (device));
1561
if ((partition & 0x00FF00) != 0x00FF00)
1564
grub_sprintf (tmp, ",%c", 'a' + ((partition >> 8) & 0xFF));
1565
- grub_strncat (device, tmp, 256);
1566
+ grub_strncat (device, tmp, sizeof (device));
1568
- grub_strncat (device, ")", 256);
1569
+ grub_strncat (device, ")", sizeof (device));
1572
int embed_stage1_5 (char *stage1_5, int drive, int partition)
1573
Index: stage2/disk_io.c
1574
===================================================================
1575
RCS file: /sources/grub/grub/stage2/disk_io.c,v
1576
retrieving revision 1.58
1577
retrieving revision 1.59
1578
diff -u -p -u -r1.58 -r1.59
1579
--- foo/stage2/disk_io.c 23 May 2004 16:45:45 -0000 1.58
1580
+++ foo/stage2/disk_io.c 28 Mar 2008 13:22:28 -0000 1.59
1581
@@ -137,7 +137,7 @@ log2 (unsigned long word)
1585
-rawread (int drive, int sector, int byte_offset, int byte_len, char *buf)
1586
+rawread (int drive, unsigned int sector, int byte_offset, int byte_len, char *buf)
1588
int slen, sectors_per_vtrack;
1589
int sector_size_bits = log2 (buf_geom.sector_size);
1590
@@ -261,7 +261,7 @@ rawread (int drive, int sector, int byte
1594
- int sector_num = sector;
1595
+ unsigned int sector_num = sector;
1596
int length = buf_geom.sector_size - byte_offset;
1599
@@ -291,7 +291,7 @@ rawread (int drive, int sector, int byte
1603
-devread (int sector, int byte_offset, int byte_len, char *buf)
1604
+devread (unsigned int sector, int byte_offset, int byte_len, char *buf)
1607
* Check partition boundaries
1608
@@ -330,7 +330,7 @@ devread (int sector, int byte_offset, in
1612
-rawwrite (int drive, int sector, char *buf)
1613
+rawwrite (int drive, unsigned int sector, char *buf)
1617
@@ -363,7 +363,7 @@ rawwrite (int drive, int sector, char *b
1621
-devwrite (int sector, int sector_count, char *buf)
1622
+devwrite (unsigned int sector, int sector_count, char *buf)
1624
#if defined(GRUB_UTIL) && defined(__linux__)
1625
if (current_partition != 0xFFFFFF
1626
Index: stage2/iso9660.h
1627
===================================================================
1628
RCS file: /sources/grub/grub/stage2/iso9660.h,v
1629
retrieving revision 1.1
1630
retrieving revision 1.2
1631
diff -u -p -u -r1.1 -r1.2
1632
--- foo/stage2/iso9660.h 27 Mar 2004 17:02:54 -0000 1.1
1633
+++ foo/stage2/iso9660.h 22 Feb 2007 23:40:25 -0000 1.2
1634
@@ -73,11 +73,11 @@ typedef union {
1636
typedef struct __iso_16bit {
1638
-} iso_16bit_t __attribute__ ((packed));
1641
typedef struct __iso_32bit {
1643
-} iso_32bit_t __attribute__ ((packed));
1646
typedef u_int8_t iso_date_t[7];
1648
Index: stage2/shared.h
1649
===================================================================
1650
RCS file: /sources/grub/grub/stage2/shared.h,v
1651
retrieving revision 1.99
1652
retrieving revision 1.101
1653
diff -u -p -u -r1.99 -r1.101
1654
--- foo/stage2/shared.h 20 Jun 2004 13:48:47 -0000 1.99
1655
+++ foo/stage2/shared.h 28 Mar 2008 13:22:28 -0000 1.101
1656
@@ -499,7 +499,11 @@ struct vbe_mode
1657
unsigned char linear_reserved_field_position;
1658
unsigned long max_pixel_clock;
1660
- unsigned char reserved3[189];
1661
+ /* Reserved field to make structure to be 256 bytes long, VESA BIOS
1662
+ Extension 3.0 Specification says to reserve 189 bytes here but
1663
+ that doesn't make structure to be 256 bytes. So additional one is
1665
+ unsigned char reserved3[189 + 1];
1666
} __attribute__ ((packed));
1669
@@ -807,7 +811,7 @@ int checkkey (void);
1670
/* Low-level disk I/O */
1671
int get_diskinfo (int drive, struct geometry *geometry);
1672
int biosdisk (int subfunc, int drive, struct geometry *geometry,
1673
- int sector, int nsec, int segment);
1674
+ unsigned int sector, int nsec, int segment);
1675
void stop_floppy (void);
1677
/* Command-line interface functions. */
1678
@@ -920,10 +924,10 @@ int gunzip_test_header (void);
1679
int gunzip_read (char *buf, int len);
1680
#endif /* NO_DECOMPRESSION */
1682
-int rawread (int drive, int sector, int byte_offset, int byte_len, char *buf);
1683
-int devread (int sector, int byte_offset, int byte_len, char *buf);
1684
-int rawwrite (int drive, int sector, char *buf);
1685
-int devwrite (int sector, int sector_len, char *buf);
1686
+int rawread (int drive, unsigned int sector, int byte_offset, int byte_len, char *buf);
1687
+int devread (unsigned int sector, int byte_offset, int byte_len, char *buf);
1688
+int rawwrite (int drive, unsigned int sector, char *buf);
1689
+int devwrite (unsigned int sector, int sector_len, char *buf);
1691
/* Parse a device string and initialize the global parameters. */
1692
char *set_device (char *device);
1693
Index: stage2/stage2.c
1694
===================================================================
1695
RCS file: /sources/grub/grub/stage2/stage2.c,v
1696
retrieving revision 1.46
1697
retrieving revision 1.47
1698
diff -u -p -u -r1.46 -r1.47
1699
--- foo/stage2/stage2.c 19 Mar 2005 18:02:52 -0000 1.46
1700
+++ foo/stage2/stage2.c 5 May 2006 22:06:31 -0000 1.47
1701
@@ -651,7 +651,10 @@ restart:
1705
- run_menu (heap, NULL, new_num_entries, new_heap, 0);
1707
+ current_entryno = first_entry + entryno;
1708
+ run_menu (heap, NULL, new_num_entries, new_heap, 0);
1713
@@ -727,7 +730,8 @@ restart:
1714
cur_entry = get_entry (config_entries, first_entry + entryno, 1);
1716
/* Set CURRENT_ENTRYNO for the command "savedefault". */
1717
- current_entryno = first_entry + entryno;
1718
+ if (config_entries)
1719
+ current_entryno = first_entry + entryno;
1721
if (run_script (cur_entry, heap))
1723
Index: util/.cvsignore
1724
===================================================================
1725
RCS file: /sources/grub/grub/util/.cvsignore,v
1726
retrieving revision 1.2
1727
retrieving revision 1.3
1728
diff -u -p -u -r1.2 -r1.3
1729
Index: util/grub-install.in
1730
===================================================================
1731
RCS file: /sources/grub/grub/util/grub-install.in,v
1732
retrieving revision 1.48
1733
retrieving revision 1.49
1734
diff -u -p -u -r1.48 -r1.49
1735
--- foo/util/grub-install.in 20 Jul 2004 19:30:24 -0000 1.48
1736
+++ foo/util/grub-install.in 20 Apr 2006 13:46:46 -0000 1.49
1737
@@ -112,8 +112,8 @@ convert () {
1738
tmp_disk=`echo "$1" | sed 's%\([sh]d[0-9]*\).*%\1%'`
1739
tmp_part=`echo "$1" | sed "s%$tmp_disk%%"` ;;
1740
freebsd* | kfreebsd*-gnu)
1741
- tmp_disk=`echo "$1" | sed 's%r\{0,1\}\([saw]d[0-9]*\).*$%r\1%' \
1742
- | sed 's%r\{0,1\}\(da[0-9]*\).*$%r\1%'`
1743
+ tmp_disk=`echo "$1" | sed 's%r\{0,1\}\([saw]d[0-9]*\).*$%\1%' \
1744
+ | sed 's%r\{0,1\}\(da[0-9]*\).*$%\1%'`
1745
tmp_part=`echo "$1" \
1746
| sed "s%.*/r\{0,1\}[saw]d[0-9]\(s[0-9]*[a-h]\)%\1%" \
1747
| sed "s%.*/r\{0,1\}da[0-9]\(s[0-9]*[a-h]\)%\1%"`
1748
Index: util/mkbimage
1749
===================================================================
1750
RCS file: /sources/grub/grub/util/mkbimage,v
1751
retrieving revision 1.19
1752
retrieving revision 1.20
1753
diff -u -p -u -r1.19 -r1.20
1754
--- foo/util/mkbimage 21 Jul 2004 14:43:04 -0000 1.19
1755
+++ foo/util/mkbimage 22 Feb 2007 16:01:03 -0000 1.20
1758
# MaKe a Bootable IMAGE --- 1.44, 2.88 and El Torito no-emulation mode
1759
# C) 2001,2002,2003 Thierry Laronde <tlaronde@polynum.org>
1760
-# C) 2001,2002,2003 Robert Millan <robertmh@gnu.org>
1761
+# C) 2001,2002,2003 Robert Millan <rmh@aybabtu.com>
1764
# This program is free software; you can redistribute it and/or modify
1766
# program's maintainer or write to: The Free Software Foundation,
1767
# Inc.; 59 Temple Place, Suite 330; Boston, MA 02111-1307, USA.
1769
-# $Id: mkbimage,v 1.19 2004/07/21 14:43:04 robertmh Exp $
1770
+# $Id: mkbimage,v 1.20 2007/02/22 16:01:03 robertmh Exp $
1774
@@ -58,7 +58,7 @@ stage2_os_name=
1776
# Name by which this script was invoked.
1777
program=`echo "$0" | sed -e 's/[^\/]*\///g'`
1778
-version_number='$Revision: 1.19 $'
1779
+version_number='$Revision: 1.20 $'
1782
Usage: $program [-hVF] [-t TYPE] [-d DIRECTORY] [-s FS_TYPE] -f TAR_FILE
1783
@@ -94,15 +94,13 @@ Options:
1784
display Version information and exit
1786
Copyright (c) 2001,2002,2003 Thierry Laronde <tlaronde@polynum.org>.
1787
-Copyright (c) 2001,2002 Robert Millan <zeratul2@wanadoo.es>.
1790
version="mkbimage $version_number
1792
-Written by Thierry Laronde and Robert Millan.
1793
+Written by Thierry Laronde.
1795
Copyright (c) 2001,2002,2003 Thierry Laronde <tlaronde@polynum.org>.
1796
-Copyright (c) 2001,2002,2003 Robert Millan <zeratul2@wanadoo.es>.
1798
This is free software under the GPL version 2 or later; see the source for
1799
copying conditions. There is NO warranty, not even for MERCHANTABILITY or