summaryrefslogtreecommitdiff
path: root/gpt.cc
diff options
context:
space:
mode:
authorRoderick W. Smith <rodsmith@rodsbooks.com>2013-08-31 17:40:15 -0400
committerRoderick W. Smith <rodsmith@rodsbooks.com>2013-08-31 17:40:15 -0400
commit042f38a2f716fd4a3b9b03c35951e69f1d1bc942 (patch)
tree2628e199bacf8e8a52bac80c7df075c837d05cf8 /gpt.cc
parentaf39cb48d06f5776855b213b1ef292ddff42821b (diff)
downloadsgdisk-042f38a2f716fd4a3b9b03c35951e69f1d1bc942.tar.gz
Check for boot/active flag on 0xEE protective partition in verify
function.
Diffstat (limited to 'gpt.cc')
-rw-r--r--gpt.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/gpt.cc b/gpt.cc
index f571ad7..afe6ab2 100644
--- a/gpt.cc
+++ b/gpt.cc
@@ -279,6 +279,15 @@ int GPTData::Verify(void) {
// Check for MBR-specific problems....
problems += VerifyMBR();
+ // Check for a 0xEE protective partition that's marked as active....
+ if (protectiveMBR.IsEEActive()) {
+ cout << "\nWarning: The 0xEE protective partition in the MBR is marked as active. This is\n"
+ << "technically a violation of the GPT specification, and can cause some EFIs to\n"
+ << "ignore the disk, but it is required to boot from a GPT disk on some BIOS-based\n"
+ << "computers. You can clear this flag by creating a fresh protective MBR using\n"
+ << "the 'n' option on the experts' menu.\n";
+ }
+
// Verify that partitions don't run into GPT data areas....
problems += CheckGPTSize();