blob: c71c4b0ae656e01d4c091c95c4919e0e7ba3c499 [file] [log] [blame]
Roderick W. Smith84aaff62014-02-17 16:17:11 -050010.8.9 (2/17/2014):
2------------------
3
4- Removed dependency on libicu for UTF-16 support.
Roderick W. Smithb784e0c2014-01-25 22:55:26 -05005
Roderick W. Smith22e88b52014-02-17 12:07:02 -05006- Fixed spurious "0xEE partition doesn't start on sector 1" warning in
7 FixParts (and perhaps in other programs under some circumstances).
8
Roderick W. Smith84aaff62014-02-17 16:17:11 -05009- Added GPT regeneration command to GPT-destruction options ('z' in gdisk,
10 -z and -Z options to sgdisk). This is done to avoid wiping out data
11 mid-disk that might not be backup GPT data structures, which could
12 otherwise occur if a RAID array was resized in certain ways.
Roderick W. Smith5435fcf2014-02-17 12:01:51 -050013
Roderick W. Smith4a702a22014-01-25 23:46:42 -050014- Added check for an oversized 0xEE protective partition. The program now
15 auto-repairs this condition on loading if the GPT data seem otherwise
16 valid. This is done because I've been receiving reports of some disks
17 (possibly from some OEM Windows 8 loads) that violate the GPT spec in
18 this way, and gdisk was reporting write errors when saving data.
19
20- If the GPT data seem to be damaged in some way or if the disk seems to
21 be a hybrid MBR and if the MBR partition(s) don't fit on the disk, the
22 verify (v) function now warns of this condition, and writing the disk if
23 it exists also displays a more specific error message about the problem.
24
25- Added new type codes (3000, 7412F7D5-A156-4B13-81DC-867174929325 and
26 3001, D4E6E2CD-4469-46F3-B5CB-1BFF57AFC149) for Open Network Install
27 Environment (ONIE) boot and config partitions, respectively.
28
Roderick W. Smithb784e0c2014-01-25 22:55:26 -050029- Added new type ccde (ED01, BFBFAFE7-A34F-448A-9A5B-6213EB736C22), for
30 Lenovo's ESP-like partition.
31
Roderick W. Smithf6a88a12013-10-14 13:20:41 -0400320.8.8 (10/14/2013):
Roderick W. Smithb784e0c2014-01-25 22:55:26 -050033-------------------
Roderick W. Smithaf39cb42013-08-06 15:23:46 -040034
Roderick W. Smith24bba6e2013-10-12 19:07:16 -040035- Fixed bug that could cause segfault when passing an invalid partition
36 number to sgdisk's -i/--info command.
37
Roderick W. Smith0fde58b2013-10-10 22:28:17 -040038- Added new type code: 933AC7E1-2EB4-4F13-B844-0E14E2AEF915, or gdisk code
39 8302, for Linux /home partitions. This type code is used by recent
40 versions of systemd to permit /home to be auto-mounted; see
41 http://www.freedesktop.org/software/systemd/man/systemd-gpt-auto-generator.html
42 for details.
43
44- Added new type code: 9E1A2D38-C612-4316-AA26-8B49521E5A8B, or gdisk code
45 4100, for PowerPC PReP (PowerPC reference platform) boot.
46
Roderick W. Smithe3ee7332013-09-24 12:56:11 -040047- The number of partition type codes has grown large enough that it fills
48 an 80x24 display. I've therefore added a pause (with a prompt to hit
49 <Enter>) to display more items after showing 21 lines in gdisk or after
50 the screen has nearly filled with entries in cgdisk. There's no such
51 pause/prompt in sgdisk, though.
52
Roderick W. Smith427c7992013-09-12 12:37:44 -040053- Fine-tuned verification ('v') check for 0xEE partition that doesn't begin
54 on sector 1: Previously, a disk with multiple 0xEE partitions would
55 always trigger this warning. Now, the warning occurs only if NONE of the
56 0xEE partitions begins on sector 1.
57
58- Fixed hybrid MBR creation on disks larger than 2TiB: Previously, if one
59 opted to create an extra partition to cover unused space following
60 hybridized partitions, gdisk would hang.
61
Roderick W. Smith042f38a2013-08-31 17:40:15 -040062- Added check for an active/bootable 0xEE protective partition to the
63 verify ('v') function. If found, this is not counted as an error, but
64 it is called out to the user, since it can cause some EFIs (such as
65 VirtualBox's EFI) to ignore the disk.
Roderick W. Smithaf39cb42013-08-06 15:23:46 -040066
Roderick W. Smithe09ef882013-07-08 22:56:00 -0400670.8.7 (7/8/2013):
srs5694f5dfbfa2013-02-14 20:47:14 -050068-----------------
69
Roderick W. Smithe09ef882013-07-08 22:56:00 -040070- Modified Mac version so that it can work on /dev/rdisk* devices as well
71 as /dev/disk* devices. The result is that, when using the /dev/rdisk*
72 devices, the partition table can sometimes be re-read without removing
73 the disk or rebooting.
74
75- Added "-a" option to cgdisk to use a ">" symbol to the left of the
76 selected partition rather than ncurses highlighting.
77
Roderick W. Smith1eea9b02013-07-06 22:52:58 -040078- Modified "converting MBR to GPT" message to clarify that the conversion
79 is being held in memory, since some people have mistakenly assumed that a
80 "gdisk -l" operation will change an MBR disk to a GPT disk without
81 prompting.
82
83- Added partition type code for freedesktop.org's proposed $BOOT partition
84 (bc13c2ff-59e6-4262-a352-b275fd6f7172; GPT fdisk type code EA00)
85
srs5694f5dfbfa2013-02-14 20:47:14 -050086- Adjusted alignment code when using -n or -N in sgdisk to keep the
87 requested partition size (if specified using +###{MGT} terminology)
88 as the requested value rather than relative to the requested start
89 point. This gives you the requested partition size rather than be
90 slightly smaller if sgdisk needs to adjust the start point up a bit and
91 it prevents gaps from appearing between partitions if several are created
92 in succession using automatic placement of the start point.
93
94- Fixed small bugs in gdisk_test.sh script.
95
96- Removed stray debug message that would appear when reading MBR disks.
97
Roderick W. Smith1eea9b02013-07-06 22:52:58 -040098- Added partition type code for Intel Rapid Start partition (GUID
99 D3BFE2DE-3DAF-11DF-BA40-E3A556D89593, code 8400), used by systems that
srs5694f5dfbfa2013-02-14 20:47:14 -0500100 implement Intel's Rapid Start technology. See
Roderick W. Smith1eea9b02013-07-06 22:52:58 -0400101 http://blog.adios.tw/2012/10/funtoo-linux-and-intel-rapid-start.html or
102 http://mjg59.dreamwidth.org/26022.html.
srs5694f5dfbfa2013-02-14 20:47:14 -0500103
104- Added partition type code for Haiku BFS (GUID
105 42465331-3BA3-10F1-802A-4861696B7521; code EB00).
106
srs56940741fa22013-01-09 12:55:40 -05001070.8.6 (1/9/2013):
108-----------------
109
110- Fixed a bug that could cause sgdisk to crash when passing a partition
111 number of 0 to the -t option.
112
113- Added support for building under Solaris.
srs5694d8eed462012-12-15 01:55:21 -0500114
115- Added a new check to the verification code.
116
117- Added partition type code for Sony system partition
118 (F4019732-066E-4E12-8273-346C5641494F). I'm not entirely clear what this
119 is used for, but it's appearing on some new Sony computers.
120
121- Tweaked hybrid MBR creation options to fix a problem that caused the main
122 0xEE MBR partition to NOT be created if the user told gdisk to NOT place
123 it at the start of the disk AND IF fewer than three partitions are
124 hybridize AND IF the user opted to create a second protective partition.
125
126- Changed default build options for Mac OS X to *NOT* use libicu,
127 since it seems to have broken somewhere along the line. It still
128 works on Linux, though.
129
130- Added partition type codes for VMWare ESX (FB00, FB01, and FC00).
131
srs56944307ef22012-05-30 12:30:48 -04001320.8.5 (5/30/2012):
srs5694fa3868e2012-03-28 01:45:57 -0400133------------------
134
srs56944307ef22012-05-30 12:30:48 -0400135- Changed code that writes the partition table so that a disk sync
136 operation occurs even if one or more write operations failed (but not if
137 they all failed). This is intended to work around a bug that a user
138 reported on a Windows system on which the write of the protective MBR
139 failed, although everything else worked. (I suspect anti-virus software
140 may have been blocking write access to the MBR.)
141
srs5694fa3868e2012-03-28 01:45:57 -0400142- Added type codes for Midnight BSD (0xA580 - 0xA585). I used these codes
143 because Midnight BSD uses the same 0xA5 type code as FreeBSD on MBR
144 disks, so I'm starting Midnight BSD's numbering halfway through the
145 0xA5## range.
146
srs5694a6297b82012-03-25 16:13:16 -04001470.8.4 (3/25/2012):
148------------------
149
150- REALLY fixed Ctrl+D problems! Now gdisk terminates upon receiving a
151 Ctrl+D. In all previous versions, it could lock itself into a CPU-hogging
152 loop if launched via "sudo" from a terminal window that was then closed
153 or if Ctrl+D was pressed at certain input prompts (for a partition name
154 or sector number, for instance).
155
srs569434882942012-03-23 12:49:15 -04001560.8.3 (3/23/2012):
srs5694e842bc12012-02-03 11:27:05 -0500157------------------
158
srs569434882942012-03-23 12:49:15 -0400159- Fixed compilation problem on GCC 4.7.
160
161- Improved handling of Ctrl+D on some systems.
162
163- Added disk's name to message stating that a disk write was successful.
164
165- Fixed bug that caused creation of >2TiB partitions on 32-bit systems to
166 be truncated in sgdisk.
srs5694e842bc12012-02-03 11:27:05 -0500167
1680.8.2 (1/22/2012):
srs5694dcebe572012-01-22 15:03:42 -0500169------------------
srs56940541b562011-12-18 16:35:25 -0500170
srs5694706e5122012-01-21 13:47:24 -0500171- Adjusted the code to support a number of partitions that's not a multiple
172 of the number of partition table entries that fits in a sector (normally
173 4 per sector). The program still rounds up, when necessary, when resizing
174 the partition table manually, but not when loading a partition table that
175 contains a peculiar number of partitions. This helps prevent spurious
176 error messages about CRC problems when loading some Solaris partition
177 tables.
178
srs5694e69e6802012-01-20 22:37:12 -0500179- Fixed bugs relating to the handling of empty partitions; Solaris's ZFS
180 tools create weird empty partitions that are legal but that gdisk wasn't
181 handling properly. (Specifically, they sometimes have non-zero end
182 points; gdisk assumed empty partitions had end points of 0.)
183
srs56940541b562011-12-18 16:35:25 -0500184- Fixed a bug that caused an infinite loop of input prompts if the user
185 pressed Ctrl+D.
186
187- Changed gdisk's first-sector input operation to specify a sector number
188 that's properly aligned as the default value. This eliminates the need
189 to alter that value and notify the user of the change when the user
190 hits "Enter" for the default value as the first partition on an empty
191 disk (as well as in some other situations).
192
srs569423d8d542011-10-01 18:40:10 -04001930.8.1 (10/1/2011):
srs5694d1b11e82011-09-18 21:12:28 -0400194------------------
195
srs569423d8d542011-10-01 18:40:10 -0400196- Fixed bug that could cause FixParts to keep a partition's assignment
197 as logical when FixPart could not actually do so. This could happen
198 when there are no gaps between two logical partitions. Some partitioning
199 tools can create such configurations, but FixParts can't. Such
200 configurations are extremely rare. I've only encountered them when
201 logical partitions are out of order.
202
203- Added code to detect infinite loops of logical partitions when reading
204 MBR data. When detected, the program now stops reading after the first
205 loop, so no duplicates appear in the partition list.
206
207- Fixed bug in partition overlap detection in MBR code.
208
srs5694d1b11e82011-09-18 21:12:28 -0400209- Changed GPT reading code to use the size encoded in GPT headers to
210 determine how much of the header to use in computing a CRC, with the
211 restriction that the size be equal to or less than the disk's sector
212 size. This should work around problems with libefi in ZFS, which sets the
srs569423d8d542011-10-01 18:40:10 -0400213 header size to 512 rather than the more common 92. A caveat: If the
214 disk's sector size is larger than the GPTHeader data structure size (512
215 bytes), then the rest of the sector's contents are ignored and replaced
216 with 0 values. This could produce false positives on CRC checks on disks
217 with over-512-byte sector sizes if the header sector is padded with
218 something other than 0 values.
srs5694d1b11e82011-09-18 21:12:28 -0400219
220- Fixed bug in new (as of 0.8.0) check that main and backup partition
221 tables are identical on big-endian (PowerPC, etc.) hardware.
222
srs5694a17fe692011-09-10 20:30:20 -04002230.8.0 (9/10/2011):
224------------------
225
226- Added new return option for sgdisk: 8, which means that a replication
227 operation (-R or --replicate) failed. Note that other operations on
228 the same command line might still have succeeded.
229
230- Added gdisk_test.sh shell script, contributed by Guillaume Delacour.
231 This script tests some common gdisk and sgdisk operations to be sure
232 they're working correctly.
233
234- Enable sgdisk's -l (--load-backup) and -o (--clear) options to work
235 even on disks that are damaged. Most other options will still be ignored,
236 though, so if you suspect a disk may be bad and want to use one of these
237 options, you should do so on a line by itself, followed by a separate
238 command to perform other actions (such as adding new partitions).
239
240- Added check for mis-matched primary and backup partition tables.
241 A mismatch is reported as a CRC error.
242
243- Added Apple Core Storage partition type code (hex code AF05, GUID
244 53746F72-6167-11AA-AA11-00306543ECAC).
245
246- Added cgdisk program to the family. This program is a rough workalike
247 to cfdisk, much as gdisk is a rough workalike to fdisk. See the cgdisk
248 man page or http://www.rodsbooks.com/gdisk/cgdisk-walkthrough.html for
249 details about its operation.
250
251- Fixed bug that caused CHS end point for protective MBR to be set to
252 0xfeffff rather than the spec-mandated 0xffffff on disks over ~8GB. This
253 is a very minor bug, since not much cares about this, and most other GPT
254 tools get it wrong in the same way, too.
255
srs569400b6d7a2011-06-26 22:40:06 -04002560.7.2 (6/26/2011):
srs56946aae2a92011-06-10 01:16:51 -0400257------------------
258
srs569400b6d7a2011-06-26 22:40:06 -0400259- The Windows version now (finally!) generates proper GUIDs rather than a
260 purely random number. This fixes a bug that caused Windows 7 to crash
261 when converting a disk from MBR format (but, oddly, not when creating a
262 fresh partition table or doing various other things).
263
264- Added a warning when an MBR partition is discarded because it's too
265 big for the disk.
266
267- Changed warning to Windows users about the dangers of converting to GPT
268 so that it appears only on disks that aren't already in GPT form.
269
270- Fixed bug that caused bogus "3" values to pad the ends of partition names
271 on some disks (particularly those created by Microsoft's disk
272 partitioning tools).
273
274- Made compilation without Unicode support possible (see README file)
275
276- Made default filesystem type code OS-dependent (based on the compilation
277 platform).
278
279- Added new Linux-only filesystem partition type GUID code,
280 0FC63DAF-8483-4772-8E79-3D69D8477DE4 (8300 entry code). Also changed name
281 of the EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (0700 entry code) to
282 "Microsoft basic data").
283
srs56946aae2a92011-06-10 01:16:51 -0400284- Fixed a bug that caused an incorrect code to be set for active/bootable
285 partitions when generating a hybrid MBR.
286
287- Enable entry of hex codes that begin with "0x" for both GPT and MBR
288 partitions.
289
290- Fixed bug that caused the boot loader code to be lost when creating a
291 hybrid MBR.
292
293- Fixed bug in sector input code that could produce improper values
294 if the user inputs ridiculously large "+" values.
295
srs5694699941e2011-03-21 21:33:57 -04002960.7.1 (3/21/2011):
297------------------
298
299- Added support for proper UTF-16LE partition names rather than the
300 "shortcut" that properly encoded only ASCII names. This support works
301 only in Linux, FreeBSD, and OS X, though, at least for the moment.
302 Although it's possible to compile this support into Windows when using
303 Visual C++, it doesn't seem to work properly. Since using this feature
304 would require distributing the ICU libraries with the Windows binary,
305 thus bloating the binary package's size to no effect, I've disabled it in
306 my standard Windows build, at least for now.
307
308- Added check to fixparts to keep it from operating on devices that
309 lack an existing MBR signature. (In 0.7.0, it could write an empty
310 MBR data structure to a device on which it was mistakenly launched.)
srs5694d3ba7a62011-03-13 11:51:34 -0400311
srs5694815fb652011-03-18 12:35:56 -0400312- Fixed bug that caused the protective MBR to not be written when
313 restoring a backup of the GPT data.
314
srs56945a608532011-03-17 13:53:01 -0400315- Fixed bug that caused second protective MBR partition, when created
316 as part of a hybrid MBR, to always be of type 0xEE, even when the
317 user specified something else.
318
srs5694c2f6e0c2011-03-16 02:42:33 -0400319- Integrated a number of code cleanups contributed by Florian Zumbiehl.
srs5694d3ba7a62011-03-13 11:51:34 -0400320
srs5694bf8950c2011-03-12 01:23:12 -05003210.7.0 (3/11/2011):
srs569464cbd172011-03-01 22:03:54 -0500322------------------
323
srs5694bf8950c2011-03-12 01:23:12 -0500324- Fixed bug that caused some types of logical partitions to be misread.
325
326- Created FixParts program, to fix problems on MBR-partitioned disks.
327 Although this program is part of the GPT fdisk family, it is NOT used on
328 GPT disks.
329
330- Completely redid the GPT-to-MBR code, used both for converting to MBR
331 form and for creating hybrid MBRs.
332
333- Fixed a bug that caused gdisk to "forget" some partitions if there were
334 numbering gaps when a conversion to MBR was aborted.
335
336- Improved CHS value creation on small (<~8GB) disks for protective MBR
337 and when creating hybrid MBRs or converting to MBR format. Linux-only,
338 for the moment; other platforms still produce bad CHS values on sub-~8GB
339 disks (but few OSes care these days).
340
srs569464cbd172011-03-01 22:03:54 -0500341- Enhanced disk replication features ('u' on the experts' menu in gdisk; -R
342 or --replicate in sgdisk). It's now possible to replicate the partition
343 table from a larger to a smaller disk, so long as all the partitions fit
344 on the smaller disk. In sgdisk, the secondary GPT data are moved
345 automatically if disk sizes don't match. In gdisk, the secondary GPT data
346 are moved automatically if the target disk is smaller than the source
347 disk; if the target disk is larger than the source disk, the user is
348 given the option of making this adjustment.
349
350- Fixed --load-backup (-l) option to sgdisk, which was broken.
351
352- Changed largest drive that's not given a minimum 4 KiB alignment even
353 when smaller alignment is detected on the disk to 300 GB.
354
srs5694bf8950c2011-03-12 01:23:12 -0500355- Fixed bug that prevented aborting a partition table backup ('u' on the
srs569464cbd172011-03-01 22:03:54 -0500356 experts' menu) by hitting the Enter key for the device filename.
357
srs5694bf8950c2011-03-12 01:23:12 -0500358- Implemented a number of code cleanups provided by Florian Zumbiehl.
srs569464cbd172011-03-01 22:03:54 -0500359
srs5694df9d3632011-01-08 18:33:24 -05003600.6.14 (1/8/2011):
361------------------
362
363- Made small change to the way the start sector is interpreted if you use a
364 "+" specification, as in "+2G" to locate a partition 2 GiB into the
365 default range. This change makes adjustments for sector alignment less
366 likely.
367
368- Modified sgdisk's -n (--new) option to work with relative start and end
369 values (which the man page incorrectly stated it already did). Values of
370 0 for the start and end sectors refer to the first and last available
371 sectors in the largest free block, and a partition number of 0 refers to
372 the first available partition.
373
374- Added ChromeOS GUID values to list of recognized partition type GUIDs.
375 7F00 = ChromeOS kernel, 7501 = ChromeOS root, 7502 = ChromeOS reserved.
376 Untested on actual ChromeOS system.
377
378- Tweaked APM detection to look for APM signature even if an MBR
379 signature has already been found. Helps in diagnosis of cases
380 in which an MBR has overwritten an APM disk.
381
srs5694058d4a52010-10-12 12:42:47 -04003820.6.13 (10/12/2010):
383--------------------
384
385- Added notification about nonexistent partitions to hybrid MBR creation
386 in gdisk.
387
388- Fixed bug in GPT-to-MBR conversion that could sometimes enable creation
389 of an extended partition that overlaps a preceding partition.
390
391- Fixed bug in GPT-to-MBR conversion that prevented creation of an MBR
392 table with logical partitions if there were four or fewer partitions.
393
srs56940873e9d2010-10-07 13:00:45 -04003940.6.12 (10/7/2010):
395-------------------
396
397- Adjusted alignment code to use 1 MiB alignment by default for drives with
398 other than 512-byte sector sizes. (Previous versions increased this --
399 for instance, to 4 MiB for drives with 2048-byte logical sector size.)
400
401- Entry of non-hexadecimal value for partition type code now causes
402 re-prompting for a new value, fixing a recently-introduced minor bug.
403
404- Fixed bug in sector entry using K/M/G/T/P suffixes on disks with
405 other-than-512-byte sector numbers.
406
407- Added "P" (PiB, pebibyte) suffix to suffixes accepted in entering
408 partition sizes.
409
410- Fixed bug that caused sgdisk to segfault if fed the (invalid)
411 "-A show" parameter. Now it terminates with a complaint about an invalid
412 partition number 0.
413
414- Removed warning when running on big-endian hardware, since this
415 support has been present for quite a while with no bug reports.
416
srs5694ab4b0432010-09-25 20:39:52 -04004170.6.11 (9/25/2010):
418-------------------
419
420- Added -F (--first-aligned-in-largest) option to sgdisk. This option is a
421 variant on -f (--first-in-largest); it returns the number of the first
422 sector that will be used in the largest free area, given the current
423 alignment value (set via -a/--set-alignment).
srs5694659eaf12010-08-23 11:26:12 -0400424
srs56945a081752010-09-24 20:39:41 -0400425- Streamlined GUID code entry in gdisk; it no longer offers the option
426 to enter GUIDs in separate segments.
srs569482f3f0b2010-09-22 10:50:24 -0400427
srs5694327129e2010-09-22 01:07:31 -0400428- The -t option to sgdisk now accepts GUID values as well as the
429 sgdisk/gdisk-specific two-byte hex codes.
430
431- Added check that the protective 0xEE MBR partition begins on sector 1
432 to the verify function. If it doesn't, a warning message is displayed,
433 but it doesn't count as an error.
434
435- Added check for overlapping MBR partitions to verify function (gdisk "v"
436 function on all menus; sgdisk -v/--verify function). Also warns about
437 multiple MBR 0xEE partitions (causes problems in some OSes).
438
439- Added check to GPT-to-MBR and hybrid MBR creation options to prevent
440 creation of disks with duplicate partitions. When told to create a disk
441 with duplicates, sgdisk now aborts with the error message "Problem
442 creating MBR!" When attempting to create a hybrid MBR with duplicates,
443 gdisk silently drops duplicate partitions, leaving fewer than requested.
444 Creating duplicates should not be possible in sgdisk when converting to
445 MBR form.
srs5694659eaf12010-08-23 11:26:12 -0400446
srs56949ddc14b2010-08-22 22:44:42 -04004470.6.10 (8/22/2010):
448-------------------
srs5694f9312b02010-07-06 15:39:51 -0400449
srs56949ddc14b2010-08-22 22:44:42 -0400450- Enable disk-wipe (-z and -Z) and verification (-v) operations in
451 sgdisk even if the disk is badly damaged.
452
453- Added support for setting attributes in sgdisk (-A/--attributes option)
454 in sgdisk.
455
456- Fixed bug that created backwards attribute field values (bit #2 was
457 entered as bit #61, etc.).
458
459- Fixed bug that caused creation of hybrid MBR to wipe out the MBR's boot
460 code.
461
462- Added ability to save partition table from one device to another (gdisk:
463 'u' on experts' menu; sgdisk: -R or --replicate option).
464
465- Fixed inaccessible -C/--recompute-chs option in sgdisk.
srs5694f9312b02010-07-06 15:39:51 -0400466
srs569461768bc2010-07-04 01:54:00 -04004670.6.9 (7/4/2010):
468------------------
469
470- Fixed minor error in sgdisk man page (--largest-new option requires
471 a partition number).
472
473- Fixed major bug in hybrid MBR creation, which caused incorrect
474 protective partition end point settings and occasionally other
475 problems.
476
srs56940e197dc2010-05-23 13:06:10 -04004770.6.8 (5/23/2010):
478------------------
479
srs569461768bc2010-07-04 01:54:00 -0400480- Added tests to see if the file to be opened is a directory, character
481 device, FIFO, or socket; program now terminates if any of these
482 conditions is met. (Linux/FreeBSD/OS X only.) Thanks to Justin Maggard
483 for this patch.
srs56940e197dc2010-05-23 13:06:10 -0400484
485- Added 'f' option on gdisk's experts' menu (-G/--randomize-guids in
486 sgdisk). This option randomizes the disk's GUID and all partitions'
487 GUIDs. Intended for use after cloning a disk with a utility that copies
488 the GUIDs intact (such as a raw dd copy) if you want each disk copy to
489 have its own set of GUIDs.
490
491- Added -u/--partition-guid and -U/--disk-guid options to sgdisk. These are
492 the equivalents of the 'g' and 'c' options, respectively, on the gdisk
493 experts' menu: They enable adjusting an individual partition's GUID or a
494 disk's GUID. The GUID may be either a fully specified GUID value or 'R'
495 or 'r' to set a random GUID value.
496
497- Fixed compile problem for FreeBSD (its math library lacks a log2()
498 function). Also created separate Makefile.freebsd with a couple of
499 FreeBSD-specific options.
500
501- Added -N (--largest-new) command to sgdisk. This command creates a single
502 partition that fills the largest single unpartitioned block of space on
503 the disk.
504
505- Fixed sgdisk man page error: the --change-name option was incorrectly
506 listed as --change.
507
508- Added 'h' option to gdisk experts' menu (-C or --recompute-chs in sgdisk)
509 to recompute all protective/hybrid MBR CHS values. This option is
510 intended to work around a bug in at least one BIOS that prevents the
511 computer from booting when the GPT-mandated (but technically illegal)
512 0xFFFFFF CHS value is used as the end point for a protective MBR. The
513 recomputed values will be legal (e.g., 0xFEFFFF instead of 0xFFFFFF),
514 but incorrect in GPT terms, and will therefore enable at least one
515 BIOS to boot with a GPT disk. See http://www.rodsbooks.com/gdisk/bios.html
516 for all I know about BIOS/GPT incompatibilities.
517
5180.6.7 (5/1/2010):
519-----------------
520
521- Undid earlier change, with version 0.6.4, that wiped the MBR boot loader
522 when doing MBR-to-GPT conversions. I've now become skeptical that MBR
523 boot loaders were causing any real problems on GPT disks, so I'm going
524 back to the philosophy of leaving as much alone as possible.
525
526- Fixed bug that caused incorrect reporting of free space on 0-size disks
527 (e.g., files of 0 length passed as disk images).
528
529- Fixed bug that caused segfault on some invalid disks
530
531- Fixed bug that caused incorrect partition numbers to be displayed for
532 some verify problems.
533
534
5350.6.6 (3/21/2010):
536-----------------
537
538- Added support for the "no block IO protocol" (referred to as "hide from
539 EFI" in GPT fdisk) and "legacy BIOS bootable" attribute bits. See Table
540 19 of the UEFI 2.3 specification (p. 153) for details.
541
542- Changed the sequence in which GPT data structures are written to disk;
543 backups are now written first, followed by the main structures. This is
544 as recommended in the UEFI 2.3 specification, since it's safer in the
545 extremely unlikely event that a RAID array's size is increased and
546 there's a power outage mid-write. (If the main structures are written
547 first in this case, they'll point to data that's not yet been written;
548 but by writing the backups first, the old main structures will still
549 point to the valid old backup structures.)
550
551- Protective MBRs now have disk signatures of 0x00000000, to better
552 conform with GPT as described in the UEFI 2.3 specification.
553
554- Added alignment information to the summary data produced by the
555 'p' main-menu option in gdisk or the -p option to sgdisk.
556
557- More alignment changes: GPT fdisk now attempts to determine the alignment
558 value based on alignment of current partitions, if any are defined. If no
559 partitions are defined, a default value of 2048 is set. If the computed
560 value is less than 8 on drives over about 596GiB, it's reset to 8, since
561 the drive might be a WD Advanced Format unit that requires an 8-sector
562 (or larger power-of-2) alignment value for best performance. The
563 2048-sector default provides better alignment in some RAID
564 configurations.
565
566- Changed behavior when a backup restore fails. Previously, GPT fdisk
567 would create a fresh blank set of partitions. Now it does so only
568 if the failure occurs when interpreting the backup's contents; if the
569 user typed the wrong filename, the in-memory data structures aren't
570 touched.
571
572
5730.6.5 (3/7/2010):
574-----------------
575
576- Added tests to verify ('v') function and to pre-save checks to look for
577 partitions that end before they begin or that are too big for their
578 disks.
579
580- Fixed a bug that could cause spurious data to appear in a grown partition
581 table.
582
583- Added ability to convert some or all partitions to logical partitions in
584 GPT-to-MBR conversion. This feature is limited by the fact that at least
585 one free sector must exist immediately prior to each logical partition,
586 so it won't do much good if partitions are crammed together. It should be
587 possible to convert back to MBR any disk that started that way, provided
588 no partitions were added or resized when the disk was in GPT form; and
589 disks that were partitioned with Apple's Disk Utility or other tools that
590 insert unpartitioned space should also be convertible. CAUTION: THE
591 LOGICAL PARTITION CREATION FEATURE DOESN'T TRY TO ALIGN PARTITIONS OR
592 PARTITION HEADER DATA TO CYLINDER BOUNDARIES! It's conceivable that some
593 older OSes or utilities will object to these disks, although Linux, OS X,
594 Windows Vista, and Windows 7 all seem happy with them.
595
596- Fixed bug that caused creation of 0-length file if an incorrect device
597 filename was typed.
598
599- The gdisk program now prompts for a device filename if it's called with
600 no options. This enables gdisk to do something useful if it's launched by
601 double-clicking its icon in a GUI environment.
602
603- Added workaround for bug in some versions of MinGW that caused the
604 program to garble input sector numbers.
605
606- The Windows version now works on disks with over-512-byte sectors.
607 Tested on a magneto-optical (MO) drive with 2048-byte sectors.
608
609- Added -D (--display-alignment) option to sgdisk, to display sector
610 alignment value (by default, 1 for sub-800GiB disks and 8 for disks
611 over that size).
612
613- Fixed bug in computation of CHS geometries for protective MBR. This is
614 non-critical, since most modern utilities ignore the CHS geometries.
615 Concerned users can use the 'n' option on the experts' menu to build new
616 protective MBRs with the new algorithm, if desired. (Note that GNU
617 Parted, at least, gets this wrong, too.)
618
619- Fixed memory-allocation bug when reading GPT disks with partition tables
620 with over 128 entries; could cause program to crash on startup.
621
6220.6.4-2 (2/20/2010):
623--------------------
624
625Note: Neither of the following changes affects actual program code, so I've
626left the version number in the program at 0.6.4.
627
628- Altered Makefile to pass user's compiler and linker environment
629 variables through.
630
631- Added #include to gpttext.cc to enable it to compile on the latest
632 GCC versions (it was failing on at least some 4.4.x compilers).
633
6340.6.4 (2/19/2010):
635-------------------
636
637- Added -m (--gpttombr) option to sgdisk, enabling conversion of GPT
638 disks to MBR format, with a limit of four partitions total, and of course
639 without overcoming the 2TiB limit.
640
641- Added -h (--hybrid) option to sgdisk, enabling creation of hybrid
642 MBRs. Fewer options are available in sgdisk than in gdisk, though,
643 in order to keep the user interface manageable.
644
645- Fixed off-by-one bug in specification of partition when using the
646 -T (--transform-bsd) option in sgdisk.
647
648- Changed the code to create a new MBR unique disk signature whenever a new
649 protective MBR is generated (when doing an MBR-to-GPT conversion, when
650 using the 'n' option on the experts' menu, or when using the 'o' option
651 on the main menu, for example). Previous versions attempted to preserve
652 the existing MBR disk signature in most cases, but this resulted in
653 values of 0x00000000 whenever an empty disk was partitioned, and often in
654 other cases, too. Better to risk changing this value too often than to
655 leave multiple disks with 0x00000000 values, I think.
656
657- Added transpose ('t' on experts' menu in gdisk; or -r or --transpose in
658 sgdisk) command to enable fine-tuning partition order without doing a
659 full sort.
660
661- Added code to clear the MBR boot loader when doing an MBR-to-GPT
662 conversion. (This was already done in full-disk BSD-to-GPT conversions.)
663 This is done because I've seen a few problem reports that make me think
664 some MBR boot loaders freak out and hang the system when they encounter
665 GPT disks, and/or they attempt to load a second-stage boot loader stored
666 in what is now GPT territory, causing a system hang. Since MBR boot
667 loaders don't work on GPT disks anyhow (even GRUB needs to be
668 reinstalled), this new wiping behavior shouldn't cause any problems, and
669 may prevent a few.
670
671- Fixed bug in Windows version that prevented saving backup files.
672
673- Fixed bug that caused second and subsequent partition numbers in
674 prompts in hybrid MBR conversion procedure to be displayed in
675 hexadecimal.
676
677- Fixed very obscure potential bug in hybrid MBR/GPT synchronization when
678 deleting partitions; code wasn't matching partition lengths correctly,
679 which would only affect partitions that start at the same point but have
680 different lengths in MBR vs. GPT.
681
682- Fixed bug in the -E option to sgdisk; it was actually returning the
683 last free sector, not the last free sector in the largest free block.
684
685- Fixed bug in -t option to sgdisk; it was corrupting partition type
686 codes.
687
688- Fixed minor alignment bug in partition summary list ('p' from any menu)
689 when partition sizes are between 1000 and 1024 units.
690
691- Backup restore function ('l' on recovery & transformation menu) now
692 accepts both backups generated by GPT fdisk and backups created by a
693 direct copy (via dd, etc.) of the MBR, main GPT header, and main GPT
694 partition table, in that order. ("dd if=/dev/sda of=backup.gpt bs=512
695 count=34" will do this on Linux for a disk with a typical-sized GPT table
696 of 128 entries.)
697
6980.6.3 (2/3/2010):
699------------------
700
701- Fixed serious data corruption bug on big-endian (PowerPC and similar)
702 systems.
703
704- Changed several GPT fdisk Solaris type codes to correct a duplicate
705
706- Corrected error in GPT fdisk type codes for NetBSD LFS and NetBSD RAID;
707 they were identical, but I've now changed NetBSD RAID to A906, which
708 is unique.
709
710- Added GUID for IBM General Parallel File System (GPFS) partition type
711 code. Somewhat arbitrarily set it to use the 7501 number (MBR code 0x75
712 is used by IBM PC/IX, so it's at least the right company, by my loose
713 numbering rules....).
714
715- Improved GUID generation. Prior versions generated completely random
716 numbers for GUIDs. This works, but is technically a violation of the
717 spec. Unix versions now employ libuuid to generate GUIDs in a more
718 correct way. The Windows version still generates random numbers, though.
719
720- Turned PartTypes class into a derived class of GUIDData, and renamed
721 it to PartType.
722
723- Created new GUIDData class, to replace the original GUIDData struct.
724
7250.6.2 (1/29/2010):
726------------------
727
728- The change-type ('t' on main menu) option now changes the partition's
729 name *IF* the current name is the generic one for the partition type.
730 If the current name is not the generic name, it is NOT changed.
731
732- Fixed bug that caused new protective MBR to not be created when the
733 MBR was invalid and the GPT was damaged and the user opts to try to
734 use the GPT data.
735
736- Enabled default partition type code of 0700 when creating partitions
737 or changing their type codes. (Type 0700, Linux/Windows data, is set if
738 the user hits the Enter key alone.)
739
740- Fixed bug in sort ('s' on main menu) option that caused partition
741 numbers to begin at more than 1 if the original partition list had
742 too many empty partitions before the last one defined.
743
744- Improved code to determine which partition table to load in case of
745 CRC mismatches between the partition tables and the stored CRC values
746 in the headers.
747
748- Compiles using MinGW (http://www.mingw.org) to create a Windows binary.
749
750- Moved all disk I/O functions to the new DiskIO class. This helps with the
751 Windows port; it uses diskio-windows.cc for Windows-specific code,
752 diskio-unix.cc for the Linux, FreeBSD, and OS X code, and diskio.cc for
753 cross-platform disk I/O code.
754
755- Changed BSD disklabel detection code to be more correct (I think).
756 This change has no effect on my test disks, but I hope it'll work
757 better on disks with sector sizes other than 512 or 2048.
758
7590.6.1 (1/20/2010):
760------------------
761
762- Fixed bug that returned incorrect disk size on 32-bit versions of
763 FreeBSD.
764
765- Fixed bug that prevented FreeBSD version from working on disk image
766 files.
767
768- Fixed bug that caused BSD disklabel conversion to fail.
769
7700.6.0 (1/15/2010):
771------------------
772
773- Fixed bug that caused the convert to MBR function to fail.
774
775- Added support for disks with other than 512-byte sectors.
776
777- Created embryonic sgdisk program.
778
779- Fixed bug that caused relative sector numbers entered by users (e.g,
780 "+128M") to be misinterpreted as from the start of the range rather than
781 from the default value.
782
7830.5.3 (1/4/2010):
784-----------------
785
786- Fixed bug in display of GUIDs when compiled with some versions of GCC.
787
788- Eliminated warnings caused by additional checks in latest versions of
789 GCC. These warnings were harmless, but to eliminate them I've added
790 more error checking on disk I/O.
791
792- Eliminated unnecessary warnings about potential data loss if the program
793 was launched with the -l option or if writes aren't possible.
794
795- Added code to set the partition boundary value based on the physical
796 sector size. (FindAlignment() function.) This function, however, works
797 only on Linux, and then only if the BLKPBSZGET ioctl is defined. This
798 ioctl is new in kernel 2.6.32 or thereabouts.
799
8000.5.2 (12/31/2009):
801-------------------
802
803- Modified partition creation function to begin partitions on 8-sector
804 boundaries by default. This improves performance on the new Western
805 Digital Advanced Format drives. The new 'd' and 'l' options on the
806 experts' menu display and change, respectively, the boundary size.
807
808- Tweaked code to produce fewer warnings on the latest versions of
809 GCC.
810
8110.5.1:
812------
813
814- Made some minor edits to the man page.
815
816- Incorporated RPM .spec file changes contributed by Scott Collier
817 (boodle11@gmail.com).
818
819- Changed method of locating and loading backup GPT data, to use the
820 main header's pointer, if it's valid, rather than seeking to the
821 end of the disk.
822
823- Added 'e' option (relocate backup GPT data structures) to the experts'
824 menu.
825
826- Fixed bug that prevented recovery of partitions in case of partially
827 damaged GPT data (bad main and good backup or bad backup and good
828 main header, for instance).
829
8300.5.0:
831------
832
833- Added GPT-to-MBR conversion function. It's very limited, but potentially
834 useful in some cases.
835
836- Fixed bug that caused incorrect file sizes to be reported on 32-bit
837 Linux, thus causing problems when editing partition tables in disk images
838 or when loading GPT backup files.
839
840- Fixed bug that caused bogus CRC error reports when loading backup GPT
841 data.
842
843- Reorganized menus. There are now three: the main menu, the experts' menu,
844 and the recovery & transformation menu. The last of these has most of the
845 items that had been on the earlier versions' experts' menu.
846
847- Added ability to re-load the MBR and generate a fresh GPT from it. This
848 is normally identical to quitting and re-running the program, but it
849 could be handy if, say, the GPT partitions on a hybrid configuration are
850 badly messed up; this will enable using the hybridized partitions as the
851 starting point for a new GPT setup.
852
853- The program now generates CHS values for hybrid and GPT-to-MBR conversion
854 MBRs. For the moment, the assumption is the maximum number of heads and
855 sectors per track (255 and 63, respectively), although the bulk of the
856 code supports other values -- it'd just be awkward to enter the data in
857 the user interface.
858
859- Fixed minor display bug that caused number of sectors on the disk to be
860 shown as 0 on large disks when running 32-bit binaries.
861
862- Reverted 0.4.2's zap (destroy GPT) changes, since I don't want to wipe
863 out a valid MBR if the user created that MBR over an older GPT without
864 first properly wiping out the GPT, and the user now wants to wipe out
865 the GPT.
866
867- Reformatted and edited the man page. Aside from edits related to the
868 preceding program changes, I've altered the markup slightly and trimmed
869 much of the more tutorial information from the man page to better
870 conform to typical terse man page style.
871
8720.4.2:
873------
874
875- Code cleanup.
876
877- Fixed very small formatting bug in display of hex code when a match isn't
878 found when converting from an MBR/gdisk hex code to a GUID type code.
879
880- Added the ability to work on disk image files (raw files for virtual
881 machines, backup images, etc.). The program assumes that all such disk
882 image files have 512-byte sectors.
883
884- Added verification prompt to 'o' main-menu option to avoid accidental
885 erasures of all partitions.
886
887- The "destroy GPT data structures" option ('z' on the experts' menu) now
888 also destroys all EFI GPT (0xEE) partitions in the MBR.
889
890- Added an extra warning to the "destroy GPT data structures" option if an APM
891 or BSD disklabel was detected on the disk.
892
893- Added a buffer flush after destroying GPT data structures, to get the OS
894 to read the new (empty or MBR-only) partition table.
895
896- Fixed bug that allowed entry of nonexistent partition numbers when creating
897 a hybrid MBR.
898
8990.4.1:
900------
901
902- Code cleanup/re-organization
903
904- Partition creation function ('n' on main menu) now uses the start of the
905 largest available chunk of free space rather than the first available
906 sector as the default starting sector number. This should enable easier
907 partition creation if there are small bits of free space on the disk.
908
909- You can now specify the end point of a partition by using a minus sign,
910 in which case the end point is the default value minus the specified
911 size. For instance, "-200M" creates a partition that ends 200MiB before
912 the default end point.
913
914- You can now specify the start point of a partition by using a plus or
915 minus sign, in which case the start point is the specified distance from
916 the start (+) or end (-) of free space. This is exactly the same as the
917 new rules for entry of the end point, except that the default value is
918 set differently.
919
920- Deleting a partition now checks for a matching hybrid MBR partition, and
921 if one is found, it's deleted. Any empty space that then surrounds the
922 0xEE (EFI GPT) MBR partitions is then added to the nearby 0xEE partition.
923 If no non-0xEE partitions are left, a fresh protective MBR is generated.
924
925- Added hybrid MBR consistency check to the verify ('v') option and to
926 pre-write checks. If non-0xEE/non-0x00 MBR partitions without
927 corresponding GPT partitions are found, the user is warned. This finding
928 does NOT prevent writing the partition table, though.
929
930- Added non-destructive write test when opening the device file, in order
931 to detect the problem with FreeBSD being unable to write to disks with
932 mounted partitions (or other potential problems).
933
9340.4.0:
935------
936
937- Added support for BSD disklabels. The program can now convert disks that
938 use "raw" disklabels, with the caveat that the first partition will
939 almost certainly need to be deleted because it'll overlap the main GPT
940 header; and convert disklabels contained within a GPT (or a former MBR,
941 converted to GPT) partition. In the latter case, the 'b' main menu option
942 is used.
943
944- Added support for compiling on FreeBSD.
945
946- Fixed bug that could cause crashes or incomplete sorts when sorting
947 the partition table.
948
949- New partitions, including converted ones, now take on the name of the
950 partition type as a default name.
951
952- Reorganized some code; created a separate C++ class for GPT partitions
953 (GPTPart), which replaced a struct and enabled moving code from the
954 bloated GPTData class into GPTPart.
955
956- Fixed a bug that produced spurious warnings about unknown sector sizes
957 when loading a backup file.
958
9590.3.5:
960------
961
962Note: This version was not officially publicly released; I wanted to test
963the big-endian support while developing 0.4.0.
964
965- Tweaked the disk type identification code to warn users to re-sync their
966 hybrid MBRs when one is detected.
967
968- Tweaked MBR-reading code to ignore 0xEE (EFI GPT) partitions. This will
969 only have an effect on a poorly partitioned MBR disk that contains an
970 inappropriate EFI GPT partition, or when attempting to recover a
971 corrupted disk by using the hybrid MBR for data recovery.
972
973- Added big-endian (PowerPC, etc.) support!
974
975- Added code to identify and warn of the presence of an Apple Partition
976 Map (APM) on the disk.
977
978- Enabled MBR conversion code to handle multiple logical partitions.
979
9800.3.4:
981------
982
983- Fixed bug that enabled (possibly accidental) entry of MBR type codes of
984 0x00 in GPTData::MakeHybrid(). The fix also enables entry of default
985 type code by pressing the Enter key when prompted. Applied a similar
986 fix to the entry of the type code for the second protective partition,
987 if one is used.
988
989- Fixed a typo: "sectors" was spelled "sectprs" in one spot!
990
991- Fixed bug that caused default entry for end sector to be refused if an
992 initial value using a plus sign (e.g., "+20G") was also refused.
993
9940.3.3:
995------
996
997- Gave users control over the way MBR partitions are assigned to slots in a
998 hybrid MBR setup; the original method (putting the 0xEE partition after
999 the real partitions) works well for non-boot disks, but both GRUB and
1000 GRUB2 become confused by this type of setup, so it needs changing.
1001
1002- Changed "blocks" to "sectors" in GPT and MBR table displays.
1003
1004- Added "Boot" column to MBR table display; shows an asterisk (*) when the
1005 partition's status is bootable.
1006
10070.3.2:
1008------
1009
1010- Changed __DARWIN_UNIX03 to __APPLE__ as code to enable MacOS X support.
1011
1012- Added the ability to create a hybrid MBR ('h' on experts' menu). This was
1013 motivated by my discovery that Windows 7 remains brain-dead when it comes
1014 to the ability to boot from a GPT disk, at least on BIOS-based machines.
1015
1016- Added 'z' option to experts' menu, to destroy GPT data structures and
1017 exit. The intent is to use this feature to enable subsequent partitioning
1018 of the disk using fdisk or other GPT-unaware tools. (GNU Parted will wipe
1019 the GPT data structures itself when you create a new MBR ["msdos
1020 disklabel," in Parted parlance], so using Parted is another option.)
1021
1022- Slightly altered the effect of the 'o' command on the main menu. It now
1023 blanks out the protective MBR, as well as the GPT data.
1024
10250.3.1:
1026------
1027
1028- Added Mac OS X support, provided as a patch by David Hubbard
1029 (david.c.hubbard@gmail.com).
1030
1031- Fixed bug in disksize() function on Mac OS. (Possibly dependent on the
1032 kernel and/or GCC version.) The disk size, of type uint64_t, was not
1033 being passed correctly, so I reorganized the function to return it as
1034 the function's return value rather than as a parameter. This seems to
1035 work OK on my Mac OS test system and on both 32- and 64-bit Linux
1036 systems.
1037
1038- Fixed off-by-one bug in GPTData::FindLastAvailable().
1039
1040- Fixed bug that caused display of options after a disk-write error.
1041
1042- Fixed several incorrect MacOS X partition type GUIDs, thanks to Yves
1043 Blusseau (1otnwmz02@sneakemail.com).
1044
10450.3.0:
1046------
1047
1048- Changed version number to 0.3.0, reflecting the fact that I've received
1049 no significant bug reports and so am elevating the program to "beta"
1050 status. This change also entailed altering the warning the program
1051 displays when saving partition table changes.
1052
1053- Fixed minor bug in CHS geometry of the protective MBR's type EE partition
1054 (was producing 0x000200 as the start value, but should be 0x000100).
1055 Should be a non-critical bug since the protective MBR partition
1056 definition is only there to keep MBR-only disk utilities from messing
1057 with the disk.
1058
1059- Added ability to enter GUIDs as single massive strings rather than in
1060 chunks.
1061
10620.2.2:
1063------
1064
1065- Added #include directives required to compile the program using GCC
1066 4.4.0.
1067
10680.2.1:
1069------
1070
1071- Fixed partition numbering problem in reports of partition overlaps in
1072 verification function.
1073
1074- Fixed 1-sector partition size problem when creating new partitions
1075 (partitions were 1 sector too big when using the +size option).
1076
1077- Changed BytesToSI() to display values in bytes without decimal points
1078 (e.g., "512 bytes" rather than "512.0 bytes").
1079
1080- Added GPTData class member functions to retrieve GPT data structure
1081 locations on disk; used in my internal-use-only GPT-wiping program.
1082
1083- Eliminated the "a reboot is recommended" notice after writing the
1084 partition table.
1085
1086- Added notice after sorting the partition table to the effect that
1087 editing /etc/fstab and/or the boot loader files may be required.
1088
1089- Fixed bug in MBR-reading function that caused 0x0f (Win95 LBA) and 0x85
1090 (Linux extended) extended partitions to not be read.
1091
1092- Fixed bug in GetLastSector() (in support.cc) that would have prevented
1093 correct user entry of over-32-bit sector numbers on 32-bit systems.
1094
1095- Made some changes/corrections to the partition type list in
1096 parttypes.cc. Most of these were based on newly-discovered MBR type
1097 codes for Apple (Mac OS X) filesystems.
1098
1099- General code cleanup (setting explicit casts, etc.)
1100
11010.2.0:
1102------
1103
1104- Initial semi-public release