mirror of
https://github.com/systemd/systemd.git
synced 2025-09-16 17:45:36 +03:00
Merge pull request #25485 from DaanDeMeyer/gpt-fix
gpt: Specify designator array sizes explicitly
This commit is contained in:
@@ -811,7 +811,8 @@ static int dissect_image(
|
||||
if (pflags & SD_GPT_FLAG_NO_AUTO)
|
||||
continue;
|
||||
|
||||
} else if (type.designator == PARTITION_LINUX_GENERIC) {
|
||||
/* We don't have a designator for SD_GPT_LINUX_GENERIC so check the UUID instead. */
|
||||
} else if (sd_id128_equal(type.uuid, SD_GPT_LINUX_GENERIC)) {
|
||||
|
||||
check_partition_flags(node, pflags,
|
||||
SD_GPT_FLAG_NO_AUTO | SD_GPT_FLAG_READ_ONLY | SD_GPT_FLAG_GROWFS);
|
||||
|
@@ -59,7 +59,7 @@ PartitionDesignator partition_verity_sig_of(PartitionDesignator p) {
|
||||
}
|
||||
|
||||
|
||||
static const char *const partition_designator_table[] = {
|
||||
static const char *const partition_designator_table[_PARTITION_DESIGNATOR_MAX] = {
|
||||
[PARTITION_ROOT] = "root",
|
||||
[PARTITION_USR] = "usr",
|
||||
[PARTITION_HOME] = "home",
|
||||
@@ -73,13 +73,11 @@ static const char *const partition_designator_table[] = {
|
||||
[PARTITION_USR_VERITY_SIG] = "usr-verity-sig",
|
||||
[PARTITION_TMP] = "tmp",
|
||||
[PARTITION_VAR] = "var",
|
||||
[PARTITION_USER_HOME] = "user-home",
|
||||
[PARTITION_LINUX_GENERIC] = "linux-generic",
|
||||
};
|
||||
|
||||
DEFINE_STRING_TABLE_LOOKUP(partition_designator, PartitionDesignator);
|
||||
|
||||
static const char *const partition_mountpoint_table[] = {
|
||||
static const char *const partition_mountpoint_table[_PARTITION_DESIGNATOR_MAX] = {
|
||||
[PARTITION_ROOT] = "/\0",
|
||||
[PARTITION_USR] = "/usr\0",
|
||||
[PARTITION_HOME] = "/home\0",
|
||||
@@ -144,8 +142,8 @@ const GptPartitionType gpt_partition_type_table[] = {
|
||||
{ SD_GPT_SRV, "srv", _ARCHITECTURE_INVALID, .designator = PARTITION_SRV },
|
||||
{ SD_GPT_VAR, "var", _ARCHITECTURE_INVALID, .designator = PARTITION_VAR },
|
||||
{ SD_GPT_TMP, "tmp", _ARCHITECTURE_INVALID, .designator = PARTITION_TMP },
|
||||
{ SD_GPT_USER_HOME, "user-home", _ARCHITECTURE_INVALID, .designator = PARTITION_USER_HOME },
|
||||
{ SD_GPT_LINUX_GENERIC, "linux-generic", _ARCHITECTURE_INVALID, .designator = PARTITION_LINUX_GENERIC },
|
||||
{ SD_GPT_USER_HOME, "user-home", _ARCHITECTURE_INVALID, .designator = _PARTITION_DESIGNATOR_INVALID },
|
||||
{ SD_GPT_LINUX_GENERIC, "linux-generic", _ARCHITECTURE_INVALID, .designator = _PARTITION_DESIGNATOR_INVALID },
|
||||
{}
|
||||
};
|
||||
|
||||
|
@@ -24,8 +24,6 @@ typedef enum PartitionDesignator {
|
||||
PARTITION_USR_VERITY_SIG,
|
||||
PARTITION_TMP,
|
||||
PARTITION_VAR,
|
||||
PARTITION_USER_HOME,
|
||||
PARTITION_LINUX_GENERIC,
|
||||
_PARTITION_DESIGNATOR_MAX,
|
||||
_PARTITION_DESIGNATOR_INVALID = -EINVAL,
|
||||
} PartitionDesignator;
|
||||
|
Reference in New Issue
Block a user