Merge branch 'master' of https://github.com/pali/util-linux
* 'master' of https://github.com/pali/util-linux: tests: Add tests for FAT32 labels blkid: Encode any field which starts with LABEL in same way as LABEL field libblkid: vfat: Change parsing label in special cases
This commit is contained in:
commit
04060bc3f1
|
@ -308,6 +308,7 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag)
|
|||
struct vfat_super_block *vs;
|
||||
struct msdos_super_block *ms;
|
||||
const unsigned char *vol_label = NULL;
|
||||
const unsigned char *boot_label = NULL;
|
||||
unsigned char *vol_serno = NULL, vol_label_buf[11];
|
||||
uint16_t sector_size = 0, reserved;
|
||||
uint32_t cluster_count, fat_size;
|
||||
|
@ -338,8 +339,7 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag)
|
|||
vol_label = vol_label_buf;
|
||||
}
|
||||
|
||||
if (!vol_label || !memcmp(vol_label, no_name, 11))
|
||||
vol_label = ms->ms_label;
|
||||
boot_label = ms->ms_label;
|
||||
vol_serno = ms->ms_serno;
|
||||
|
||||
blkid_probe_set_value(pr, "SEC_TYPE", (unsigned char *) "msdos",
|
||||
|
@ -393,8 +393,7 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag)
|
|||
|
||||
version = "FAT32";
|
||||
|
||||
if (!vol_label || !memcmp(vol_label, no_name, 11))
|
||||
vol_label = vs->vs_label;
|
||||
boot_label = vs->vs_label;
|
||||
vol_serno = vs->vs_serno;
|
||||
|
||||
/*
|
||||
|
@ -423,7 +422,10 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag)
|
|||
}
|
||||
}
|
||||
|
||||
if (vol_label && memcmp(vol_label, no_name, 11))
|
||||
if (boot_label && memcmp(boot_label, no_name, 11))
|
||||
blkid_probe_set_id_label(pr, "LABEL_FATBOOT", (unsigned char *) boot_label, 11);
|
||||
|
||||
if (vol_label)
|
||||
blkid_probe_set_label(pr, (unsigned char *) vol_label, 11);
|
||||
|
||||
/* We can't just print them as %04X, because they are unaligned */
|
||||
|
|
|
@ -254,7 +254,7 @@ static void print_udev_format(const char *name, const char *value)
|
|||
printf("ID_FS_%s=%s\n", name, enc);
|
||||
|
||||
} else if (!strcmp(name, "UUID") ||
|
||||
!strcmp(name, "LABEL") ||
|
||||
!strncmp(name, "LABEL", 5) ||
|
||||
!strcmp(name, "UUID_SUB")) {
|
||||
|
||||
blkid_safe_string(value, safe, sizeof(safe));
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
ID_FS_LABEL=TEST-FAT
|
||||
ID_FS_LABEL_ENC=TEST-FAT
|
||||
ID_FS_LABEL_FATBOOT=TEST-FAT
|
||||
ID_FS_LABEL_FATBOOT_ENC=TEST-FAT
|
||||
ID_FS_SEC_TYPE=msdos
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
ID_FS_LABEL=___
|
||||
ID_FS_LABEL_ENC=\xe5\xe5\xe5
|
||||
ID_FS_LABEL_FATBOOT=___
|
||||
ID_FS_LABEL_FATBOOT_ENC=\xe5\xe5\xe5
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=2826-F9B3
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=label1
|
||||
ID_FS_LABEL_ENC=label1
|
||||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL=NO_NAME
|
||||
ID_FS_LABEL_ENC=NO\x20NAME
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,5 @@
|
|||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=label2
|
||||
ID_FS_LABEL_ENC=label2
|
||||
ID_FS_LABEL_FATBOOT=label2
|
||||
ID_FS_LABEL_FATBOOT_ENC=label2
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL=NO_NAME
|
||||
ID_FS_LABEL_ENC=NO\x20NAME
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,5 @@
|
|||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=LABEL2
|
||||
ID_FS_LABEL_ENC=LABEL2
|
||||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=92B4-BA66
|
||||
ID_FS_UUID_ENC=92B4-BA66
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,5 @@
|
|||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,5 @@
|
|||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=LABEL2
|
||||
ID_FS_LABEL_ENC=LABEL2
|
||||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL=LABEL1
|
||||
ID_FS_LABEL_ENC=LABEL1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=label2
|
||||
ID_FS_LABEL_ENC=label2
|
||||
ID_FS_LABEL_FATBOOT=label2
|
||||
ID_FS_LABEL_FATBOOT_ENC=label2
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=E6B8-AF8C
|
||||
ID_FS_UUID_ENC=E6B8-AF8C
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL=LABEL1
|
||||
ID_FS_LABEL_ENC=LABEL1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=A420-9304
|
||||
ID_FS_UUID_ENC=A420-9304
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,5 @@
|
|||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=54B6-DC94
|
||||
ID_FS_UUID_ENC=54B6-DC94
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,7 @@
|
|||
ID_FS_LABEL_FATBOOT=label1
|
||||
ID_FS_LABEL_FATBOOT_ENC=label1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=54B6-DC94
|
||||
ID_FS_UUID_ENC=54B6-DC94
|
||||
ID_FS_VERSION=FAT32
|
|
@ -0,0 +1,9 @@
|
|||
ID_FS_LABEL=LABEL1
|
||||
ID_FS_LABEL_ENC=LABEL1
|
||||
ID_FS_LABEL_FATBOOT=LABEL1
|
||||
ID_FS_LABEL_FATBOOT_ENC=LABEL1
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=54B6-DC94
|
||||
ID_FS_UUID_ENC=54B6-DC94
|
||||
ID_FS_VERSION=FAT32
|
|
@ -1,5 +1,7 @@
|
|||
ID_FS_LABEL=TESTVFAT
|
||||
ID_FS_LABEL_ENC=TESTVFAT
|
||||
ID_FS_LABEL_FATBOOT=TESTVFAT
|
||||
ID_FS_LABEL_FATBOOT_ENC=TESTVFAT
|
||||
ID_FS_TYPE=vfat
|
||||
ID_FS_USAGE=filesystem
|
||||
ID_FS_UUID=1423-AAE1
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue