diff options
author | Lennart Poettering <lennart@poettering.net> | 2023-11-16 17:05:57 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2023-11-20 11:15:04 +0100 |
commit | e61a0dde83fab11b063814d69b393d06f556d024 (patch) | |
tree | 347ca3e062fee75afd03b749efab6bbd3161fc5c | |
parent | c918fe77e255150938e83a6aec259f153d303573 (diff) |
mime-detection: detect GPT disk images by contents, not just suffix
-rw-r--r-- | data/freedesktop.org.xml.in | 7 | ||||
-rw-r--r-- | tests/mime-detection/disk.gpt | bin | 0 -> 65536 bytes | |||
-rw-r--r-- | tests/mime-detection/list | 1 |
3 files changed, 8 insertions, 0 deletions
diff --git a/data/freedesktop.org.xml.in b/data/freedesktop.org.xml.in index 1f8eabb..1a37e9d 100644 --- a/data/freedesktop.org.xml.in +++ b/data/freedesktop.org.xml.in @@ -1755,6 +1755,13 @@ command to generate the output files. <alias type="application/x-raw-disk-image"/> <glob pattern="*.raw-disk-image"/> <glob pattern="*.img"/> + <!-- The magic GPT partition table header is at sector 1, which might a different byte offsets, depending on the sector size. Let's cover the 4 most relevant sectors sizes --> + <magic> + <match type="string" value="EFI PART" offset="512"/> + <match type="string" value="EFI PART" offset="1024"/> + <match type="string" value="EFI PART" offset="2048"/> + <match type="string" value="EFI PART" offset="4096"/> + </magic> </mime-type> <mime-type type="application/x-raw-floppy-disk-image"> <comment>Floppy disk image</comment> diff --git a/tests/mime-detection/disk.gpt b/tests/mime-detection/disk.gpt Binary files differnew file mode 100644 index 0000000..41de196 --- /dev/null +++ b/tests/mime-detection/disk.gpt diff --git a/tests/mime-detection/list b/tests/mime-detection/list index aafd45b..cc12a8b 100644 --- a/tests/mime-detection/list +++ b/tests/mime-detection/list @@ -666,6 +666,7 @@ disk.img application/vnd.efi.img oxo disk.img.xz application/x-raw-disk-image-xz-compressed oxo disk.raw-disk-image application/vnd.efi.img oxo disk.raw-disk-image.xz application/x-raw-disk-image-xz-compressed oxo +disk.gpt application/vnd.efi.img xoo # Disk 1 of the Agony Amiga game truncated to 1Ko adf-test.adf application/x-amiga-disk-format # AppImage |