History log of /src/sbin/gpt/restore.c |
Revision | | Date | Author | Comments |
1.21 |
| 23-Feb-2025 |
christos | Pass some lint.
|
1.20 |
| 07-Jun-2020 |
thorpej | branches: 1.20.8; Update for proplib(3) API changes.
|
1.19 |
| 14-May-2020 |
msaitoh | Remove extra semicolon.
|
1.18 |
| 03-Jul-2018 |
jnemeth | Not all things that write to the disk do something that dk(4) will be interested in. Let individual commands decide if ioctl(DIOCMWEDGES) should be done. I was conservative and set the flag on any command that might create/modify/delete partitions in any way.
|
1.17 |
| 07-Sep-2017 |
christos | branches: 1.17.2; 1.17.4; use __arraycount
|
1.16 |
| 03-Dec-2015 |
christos | branches: 1.16.8; WARNS=6
|
1.15 |
| 03-Dec-2015 |
christos | eliminate static globals so that commands can be re-used.
|
1.14 |
| 02-Dec-2015 |
christos | - factor out into smaller separate functions - fix signed/unsigned confusion - do proper write checks - fix some memory leaks
|
1.13 |
| 02-Dec-2015 |
christos | Allow backup and restore to operate on files.
|
1.12 |
| 02-Dec-2015 |
christos | refactor the utf code so that it does not leak memory.
|
1.11 |
| 01-Dec-2015 |
christos | Refactor the command dispatching and help printing logic.
|
1.10 |
| 01-Dec-2015 |
christos | Firs step of refactoring, remove all globals, factor out some common code, handle alternate usage but not advertise it.
|
1.9 |
| 29-Nov-2015 |
christos | merge the create errors in one place and fix them.
|
1.8 |
| 16-Jun-2015 |
christos | fix error messages containing \n
|
1.7 |
| 01-Oct-2014 |
jnemeth | using random values for hdr->hdr_guid does not work very well
|
1.6 |
| 30-Sep-2014 |
christos | Add internal uuid support, since the linux+macos versions of the library are different than than *bsd ones, and others might not have it at all.
|
1.5 |
| 30-Sep-2014 |
christos | remove compat defines.
|
1.4 |
| 29-Sep-2014 |
christos | minor toolification: need libprop...
|
1.3 |
| 26-Sep-2014 |
jnemeth | - handle a GPT that isn't an exact multiple of a sector - adjust PMBR size, in case new disk is a different size - don't leak as much memory - clean up error handling somewhat
|
1.2 |
| 20-Sep-2014 |
jnemeth | Initial cut of gpt restore. This functions correctly in testing, but isn't all that pretty. It has minimal error testing and may leak memory. It also only works with empty disks. If passed "-F" flag, it will blank the disk for you.
|
1.1 |
| 10-Aug-2014 |
jnemeth | branches: 1.1.2; 1.1.4; Add restore subcommand.
XXX It does not actually work yet. It is being committed now to make later pullups easier.
|
1.1.4.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.1.4.1 |
| 10-Aug-2014 |
tls | file restore.c was added on branch tls-maxphys on 2014-08-20 00:02:25 +0000
|
1.1.2.2 |
| 13-Aug-2018 |
martin | Catch up to current for the following, requested by sborrill in ticket #1629:
sbin/gpt/gpt_private.h up to 1.2 sbin/gpt/header.c up to 1.9 sbin/gpt/main.c up to 1.11 sbin/gpt/drvctl.c delete sbin/gpt/Makefile up to 1.18 sbin/gpt/add.c up to 1.44 sbin/gpt/backup.c up to 1.18 sbin/gpt/biosboot.c up to 1.30 sbin/gpt/create.c up to 1.23 sbin/gpt/destroy.c up to 1.10 sbin/gpt/gpt.8 up to 1.63 sbin/gpt/gpt.c up to 1.75 sbin/gpt/gpt.h up to 1.38 sbin/gpt/gpt_uuid.c up to 1.15 sbin/gpt/gpt_uuid.h up to 1.7 sbin/gpt/label.c up to 1.29 sbin/gpt/map.c up to 1.14 sbin/gpt/map.h up to 1.6 sbin/gpt/migrate.c up to 1.33 sbin/gpt/recover.c up to 1.18 sbin/gpt/remove.c up to 1.22 sbin/gpt/resize.c up to 1.23 sbin/gpt/resizedisk.c up to 1.17 sbin/gpt/restore.c up to 1.18 sbin/gpt/set.c up to 1.14 sbin/gpt/show.c up to 1.41 sbin/gpt/type.c up to 1.15 sbin/gpt/unset.c up to 1.14
Many changes including: - Significant refactoring - PR/51230: Add the ability to set the active flag in the PMBR - Let individual commands decide if ioctl(DIOCMWEDGES) should be done - Add a "header" subcommand that displays information about the size of the disk along with information from the GPT header if it exists - Add listing commands for type, set and unset - Add help and formatting for set and unset - Change show to print all the attribute info in one line. - Improve documentation, including booting and exit status - Check device parameter to avoid segfaults
|
1.1.2.1 |
| 02-Jun-2015 |
snj | Pull up following revision(s) (requested by jnemeth in ticket #774): sbin/gpt/Makefile: revisions 1.9-1.13 sbin/gpt/add.c: revisions 1.25-1.27 sbin/gpt/backup.c: revisions 1.2-1.8 sbin/gpt/biosboot.c: revisions 1.8-1.14 sbin/gpt/create.c: revisions 1.8-1.12 sbin/gpt/destroy.c: revisions 1.5-1.6 sbin/gpt/drvctl.c: revision 1.1 sbin/gpt/gpt.8: revisions 1.29-1.36 sbin/gpt/gpt.c: revisions 1.29-1.40 sbin/gpt/gpt.h: revisions 1.12-1.18 sbin/gpt/gpt_uuid.c: revisions 1.1-1.10 sbin/gpt/gpt_uuid.h: revisions 1.1-1.3 sbin/gpt/label.c: revisions 1.15-1.18 sbin/gpt/map.c: revision 1.7 sbin/gpt/migrate.c: revisions 1.15-1.21 sbin/gpt/recover.c: revision 1.5 sbin/gpt/remove.c: revisions 1.13-1.16 sbin/gpt/resize.c: revisions 1.9-1.11 sbin/gpt/resizedisk.c: revisions 1.1-1.6 sbin/gpt/restore.c: revisions 1.2-1.7 sbin/gpt/set.c: revisions 1.3-1.5 sbin/gpt/show.c: revision 1.16-1.21 sbin/gpt/type.c: revisions 1.1-1.6 sbin/gpt/unset.c: revisions 1.3-1.5 - record the sector size of the disk - correct confusion with end_cylinder and end_sector in MBRs -- - dump all partitions, not just ones that are in use - while here, squash a memory leak It shouldn't be necessary to backup unused partitions, however the partition GUID is created at the time the GPT is created and is never changed. It shouldn't matter if the GUID of an unused partition changes, but there may be some special case where it does. Since it isn't a big deal to record the unused partitions, might as well do it. -- Initial cut of gpt restore. This functions correctly in testing, but isn't all that pretty. It has minimal error testing and may leak memory. It also only works with empty disks. If passed "-F" flag, it will blank the disk for you. -- document the new restore subcommand -- - make gpt_gpt() available for use directly by subcommands - create new resizedisk disk subcommand for relocating backup GPT -- Fix compile error observed on i386. Use PRIu64. -- no C99isms in tool code -- - handle a GPT that isn't an exact multiple of a sector - adjust PMBR size, in case new disk is a different size - don't leak as much memory - clean up error handling somewhat -- PR/44218 - David Young -- add "type" subcommand to change a partition type -- PR/47990 - Dr. Wolfgang Stukenbrock -- add "-L <label>" as selector option -- minor toolification: need libprop... -- more toolification -- more toolification changes -- remove compat defines. -- Add internal uuid support, since the linux+macos versions of the library are different than than *bsd ones, and others might not have it at all. -- Check size of correct buffer. Note, just being pedantic as the buffer being checked is the same size as the one that should have been checked. -- correctly show partition type in the new world order -- actually return the uuid when parsing one that is in numeric format -- using random values for hdr->hdr_guid does not work very well -- oops, forgot to update end of data area -- It's HAVE_NBTOOL_CONFIG_H, not HAVE_NBTOOLS_CONFIG_H -- Fix tools build on !NetBSD. -- include <sys/endian.h> for both the non-tools build, and the tools build on a host where the file exists. Fixes a build problem on FreeBSD, reported by Herbert J. Skuhra, where tools/compat's configure detected that be32dec() and friends were available in the host's <sys/endian.h>, so tools/compat did not provide its own versions. -- "0" is not guaranteed to be unique -- provide a copy of the kernel uuid generator (with portable API calls) for tools. -- Allow specifying sector and media size on the command line. -- Remove trailing whitespace. -- Make gpt(8) generate v4 (random) uuids. Don't needlessly leak your date/time and MAC address when you edit the disk. Read from /dev/urandom rather than calling arc4random or anything, since this is a tool. (Cygwin seems to have /dev/urandom, but yell if this breaks the build on your exotic platform because it lacks /dev/urandom.) ok apb -- Paranoia: choke noisily on EOF from /dev/urandom. -- Report the argument instead of (null) when opendisk fails. -- handle constness -- handle constness better -- Add some more common partition types. -- Bump date for previous. -- Fix handling of -t option for the type command. Match any type, when no option is given, just like for the label command. -- Factor out the getdisksize() drvctl method, and provide an alternative that directly uses the disk ioctl's instead of relying on the drvctl device driver which is currently not mandatory.
|
1.16.8.1 |
| 12-Feb-2018 |
snj | Pull up following revision(s) (requested by christos in ticket #545): sbin/gpt/backup.c: 1.17-1.18 sbin/gpt/biosboot.c: 1.29-1.30 sbin/gpt/gpt.c: 1.71-1.73 sbin/gpt/gpt.h: 1.36 sbin/gpt/restore.c: 1.17 sbin/gpt/show.c: 1.40-1.41 sys/dev/dkwedge/dkwedge_gpt.c: 1.19-1.20 PR/52522: Piotr Meyer: Don't NUL terminate the gpt label name. -- - make sure that the utf16 string is padded with 0's where needed. - since the utf16 string is not 0 terminated, pass the size of the string. -- use __arraycount -- PR/52522: ent_name is not necessarily 0 terminated, so check bounds. -- use arraycount.
|
1.17.4.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.17.2.1 |
| 28-Jul-2018 |
pgoyette | Sync with HEAD
|
1.20.8.1 |
| 02-Aug-2025 |
perseant | Sync with HEAD
|