From 635c0acc1c9d8524016f86276c99a5e27c9a0022 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 13 Jun 2013 14:45:36 +0200 Subject: [PATCH] libblkid: split blkid_parttable_set_id() to avoid things like strcmp(tab->type, "gpt") in generic code. Signed-off-by: Karel Zak --- libblkid/src/partitions/gpt.c | 2 +- libblkid/src/partitions/partitions.c | 15 ++++++++++----- libblkid/src/partitions/partitions.h | 1 + 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/libblkid/src/partitions/gpt.c b/libblkid/src/partitions/gpt.c index ee98154a30..6881c58104 100644 --- a/libblkid/src/partitions/gpt.c +++ b/libblkid/src/partitions/gpt.c @@ -340,7 +340,7 @@ static int probe_gpt_pt(blkid_probe pr, if (!tab) goto err; - blkid_parttable_set_id(tab, (const unsigned char *) &guid); + blkid_parttable_set_uuid(tab, (const unsigned char *) &guid); ssf = blkid_probe_get_sectorsize(pr) / 512; diff --git a/libblkid/src/partitions/partitions.c b/libblkid/src/partitions/partitions.c index 20835c6df9..46631032af 100644 --- a/libblkid/src/partitions/partitions.c +++ b/libblkid/src/partitions/partitions.c @@ -1001,16 +1001,21 @@ blkid_partition blkid_partlist_devno_to_partition(blkid_partlist ls, dev_t devno return NULL; } -int blkid_parttable_set_id(blkid_parttable tab, const unsigned char *id) +int blkid_parttable_set_uuid(blkid_parttable tab, const unsigned char *id) { if (!tab) return -1; - if (strcmp(tab->type, "gpt") == 0) - blkid_unparse_uuid(id, tab->id, sizeof(tab->id)); - else if (strcmp(tab->type, "dos") == 0) - strncpy(tab->id, (const char *) id, sizeof(tab->id)); + blkid_unparse_uuid(id, tab->id, sizeof(tab->id)); + return 0; +} + +int blkid_parttable_set_id(blkid_parttable tab, const unsigned char *id) +{ + if (!tab) + return -1; + strncpy(tab->id, (const char *) id, sizeof(tab->id)); return 0; } diff --git a/libblkid/src/partitions/partitions.h b/libblkid/src/partitions/partitions.h index 43f9a3cab6..44423d9ccf 100644 --- a/libblkid/src/partitions/partitions.h +++ b/libblkid/src/partitions/partitions.h @@ -9,6 +9,7 @@ extern int blkid_partitions_get_flags(blkid_probe pr); extern blkid_parttable blkid_partlist_new_parttable(blkid_partlist ls, const char *type, blkid_loff_t offset); +extern int blkid_parttable_set_uuid(blkid_parttable tab, const unsigned char *id); extern int blkid_parttable_set_id(blkid_parttable tab, const unsigned char *id); extern blkid_partition blkid_partlist_add_partition(blkid_partlist ls, -- 2.47.3