partition table creation improvements#19
Open
learmj wants to merge 2 commits into
Open
partition table creation improvements#19learmj wants to merge 2 commits into
learmj wants to merge 2 commits into
Conversation
libfdisk accepts an all-zero disk ID for dos or GPT, but libparted rewrites it on probe when doing on-device resize, invalidating any PARTUUID= references. Validate the ID libfdisk actually applied and reject it if all-zero rather than trusting the caller-supplied string verbatim.
Disk ID capture in the parser was gated on GPT, and a dos ID never propagated down to partition table creation at all. Fix that, and add some additional checks on the incoming data in the parser.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two important bug fixes:
RPIparted::createPartitionTable(). This is critical to avoid libparted rewriting it with a non-zero ID before commencing on-device resize, and therefore breaking any subsequent reliance on the prior value. The API will now reject an attempt to create a partition table with an ID of all-zeros. The ID is still optional in the API, so if not provided, one will be created automatically based on the type of partition table being created.Fixes #17