summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristophe Grenier <grenier@cgsecurity.org>2017-12-24 15:24:36 +0100
committerChristophe Grenier <grenier@cgsecurity.org>2017-12-24 15:24:36 +0100
commit291fec31472be0cedb96f5c3fbc9af96af80d1d5 (patch)
treea456a779bdf672076bcb7eaa067e1c62dfb75a7e /src
parentb3637b25c9657e574a8abe39e18b42b6b6d6a9e6 (diff)
Add Windows Recovery, Linux /home, /src and data EFI uuid partition type
Diffstat (limited to 'src')
-rw-r--r--src/adv.c9
-rw-r--r--src/common.h10
-rw-r--r--src/partgpt.c5
3 files changed, 18 insertions, 6 deletions
diff --git a/src/adv.c b/src/adv.c
index 802fd58..0a6e693 100644
--- a/src/adv.c
+++ b/src/adv.c
@@ -156,10 +156,13 @@ int is_part_linux(const partition_t *partition)
return 1;
if(partition->arch==&arch_mac && partition->part_type_mac==PMAC_LINUX)
return 1;
-#if 0
- if(partition->arch==&arch_gpt && guid_cmp(partition->part_type_gpt,GPT_ENT_TYPE_LINUX_DATA)==0)
+ if(partition->arch==&arch_gpt &&
+ (
+ guid_cmp(partition->part_type_gpt,GPT_ENT_TYPE_LINUX_DATA)==0 ||
+ guid_cmp(partition->part_type_gpt,GPT_ENT_TYPE_LINUX_HOME)==0 ||
+ guid_cmp(partition->part_type_gpt,GPT_ENT_TYPE_LINUX_SRV)==0
+ ))
return 1;
-#endif
return 0;
}
diff --git a/src/common.h b/src/common.h
index 5094573..a4a0654 100644
--- a/src/common.h
+++ b/src/common.h
@@ -151,8 +151,9 @@ struct efi_guid_s
((const efi_guid_t){le32(0x5808c8aa),le16(0x7e8f),le16(0x42e0),0x85,0xd2,{0xe1,0xe9,0x04,0x34,0xcf,0xb3}})
#define GPT_ENT_TYPE_MS_LDM_DATA \
((const efi_guid_t){le32(0xaf9b60a0),le16(0x1431),le16(0x4f62),0xbc,0x68,{0x33,0x11,0x71,0x4a,0x69,0xad}})
+#define GPT_ENT_TYPE_MS_RECOVERY \
+ ((const efi_guid_t){le32(0xde94bba4),le16(0x06d1),le16(0x4d40),0xa1,0x6a,{0xbf,0xd5,0x01,0x79,0xd6,0xac}})
-#define GPT_ENT_TYPE_LINUX_DATA GPT_ENT_TYPE_MS_BASIC_DATA
#define GPT_ENT_TYPE_LINUX_RAID \
((const efi_guid_t){le32(0xa19d880f),le16(0x05fc),le16(0x4d3b),0xa0,0x06,{0x74,0x3f,0x0f,0x84,0x91,0x1e}})
#define GPT_ENT_TYPE_LINUX_SWAP \
@@ -161,7 +162,12 @@ struct efi_guid_s
((const efi_guid_t){le32(0xe6d6d379),le16(0xf507),le16(0x44c2),0xa2,0x3c,{0x23,0x8f,0x2a,0x3d,0xf9,0x28}})
#define GPT_ENT_TYPE_LINUX_RESERVED \
((const efi_guid_t){le32(0x8da63339),le16(0x0007),le16(0x60c0),0xc4,0x36,{0x08,0x3a,0xc8,0x23,0x09,0x08}})
-
+#define GPT_ENT_TYPE_LINUX_DATA \
+ ((const efi_guid_t){le32(0x0fc63daf),le16(0x8483),le16(0x4772),0x8e,0x79,{0x3d,0x69,0xd8,0x47,0x7d,0xe4}})
+#define GPT_ENT_TYPE_LINUX_HOME \
+ ((const efi_guid_t){le32(0x933ac7e1),le16(0x2eb4),le16(0x4f13),0xb8,0x44,{0x0e,0x14,0xe2,0xae,0xf9,0x15}})
+#define GPT_ENT_TYPE_LINUX_SRV \
+ ((const efi_guid_t){le32(0x3b8f8425),le16(0x20e0),le16(0x4f3b),0x90,0x7f,{0x1a,0x25,0xa7,0x6f,0x98,0xe8}})
#define GPT_ENT_TYPE_HPUX_DATA \
((const efi_guid_t){le32(0x75894c1e),le16(0x3aeb),le16(0x11d3),0xb7,0xc1,{0x7b,0x03,0xa0,0x00,0x00,0x00}})
diff --git a/src/partgpt.c b/src/partgpt.c
index cac4e78..c920e5e 100644
--- a/src/partgpt.c
+++ b/src/partgpt.c
@@ -88,11 +88,14 @@ const struct systypes_gtp gpt_sys_types[] = {
{ GPT_ENT_TYPE_MS_BASIC_DATA, "MS Data" },
{ GPT_ENT_TYPE_MS_LDM_METADATA, "MS LDM MetaData" },
{ GPT_ENT_TYPE_MS_LDM_DATA, "MS LDM Data" },
-// { GPT_ENT_TYPE_LINUX_DATA
+ { GPT_ENT_TYPE_MS_RECOVERY, "Windows Recovery Env" },
{ GPT_ENT_TYPE_LINUX_RAID, "Linux Raid" },
{ GPT_ENT_TYPE_LINUX_SWAP, "Linux Swap" },
{ GPT_ENT_TYPE_LINUX_LVM, "Linux LVM" },
{ GPT_ENT_TYPE_LINUX_RESERVED, "Linux Reserved" },
+ { GPT_ENT_TYPE_LINUX_HOME, "Linux /home" },
+ { GPT_ENT_TYPE_LINUX_SRV, "Linux /src" },
+ { GPT_ENT_TYPE_LINUX_DATA, "Linux filesys. data" },
{ GPT_ENT_TYPE_HPUX_DATA, "HPUX Data" },
{ GPT_ENT_TYPE_HPUX_SERVICE, "HPUX Service" },
{ GPT_ENT_TYPE_MAC_HFS, "Mac HFS" },