Blame 0070-Fix-the-MSDOS_MBR_MAGIC-type-not-the-format-string.patch

38cfe28
From db5e7f4244150b108970093fdc97072934e2bf2a Mon Sep 17 00:00:00 2001
38cfe28
From: Peter Jones <pjones@redhat.com>
38cfe28
Date: Wed, 29 Jan 2020 13:15:51 -0500
38cfe28
Subject: [PATCH 70/86] Fix the MSDOS_MBR_MAGIC type, not the format string.
38cfe28
38cfe28
The value of MSDOS_MBR_MAGIC is 16 bits; make it evaluate that way,
38cfe28
instead of promoting it to int for efi_error() formatting.
38cfe28
38cfe28
Fixes: 3cf3b3d5cf3f6ff7ddb315676e338a0632aa6dc8
38cfe28
38cfe28
Signed-off-by: Peter Jones <pjones@redhat.com>
38cfe28
---
38cfe28
 src/disk.c | 2 +-
38cfe28
 src/gpt.h  | 6 +++---
38cfe28
 2 files changed, 4 insertions(+), 4 deletions(-)
38cfe28
38cfe28
diff --git a/src/disk.c b/src/disk.c
38cfe28
index 2eaf57436a2..3b5bf8330b1 100644
38cfe28
--- a/src/disk.c
38cfe28
+++ b/src/disk.c
38cfe28
@@ -55,7 +55,7 @@ is_mbr_valid(legacy_mbr *mbr)
38cfe28
 	ret = (mbr->magic == MSDOS_MBR_MAGIC);
38cfe28
 	if (!ret) {
38cfe28
 		errno = ENOTTY;
38cfe28
-		efi_error("mbr magic is 0x%04hx not MSDOS_MBR_MAGIC (0x%04x)",
38cfe28
+		efi_error("mbr magic is 0x%04hx not MSDOS_MBR_MAGIC (0x%04hx)",
38cfe28
 			  mbr->magic, MSDOS_MBR_MAGIC);
38cfe28
 	}
38cfe28
 	return ret;
38cfe28
diff --git a/src/gpt.h b/src/gpt.h
38cfe28
index 66fbc21106c..45a048b21e1 100644
38cfe28
--- a/src/gpt.h
38cfe28
+++ b/src/gpt.h
38cfe28
@@ -27,9 +27,9 @@
38cfe28
 
38cfe28
 #include <inttypes.h>
38cfe28
 
38cfe28
-#define EFI_PMBR_OSTYPE_EFI 0xEF
38cfe28
-#define EFI_PMBR_OSTYPE_EFI_GPT 0xEE
38cfe28
-#define MSDOS_MBR_MAGIC 0xaa55
38cfe28
+#define EFI_PMBR_OSTYPE_EFI ((uint8_t)0xEF)
38cfe28
+#define EFI_PMBR_OSTYPE_EFI_GPT ((uint8_t)0xEE)
38cfe28
+#define MSDOS_MBR_MAGIC ((uint16_t)0xaa55)
38cfe28
 #define GPT_BLOCK_SIZE 512
38cfe28
 
38cfe28
 #define GPT_HEADER_MAGIC ((uint64_t)(0x5452415020494645ULL))
38cfe28
-- 
38cfe28
2.24.1
38cfe28