Laszlo Ersek
edfebee404
daemon/parted: work around part table type misreporting by "parted"
...
"parted" incorrectly reports "loop" rather than "msdos" for the partition
table type, when the (fake) partition table comes from the "--mbr" option
of "mkfs.fat" (in dosfstools-4.2+), and the FAT variant in question is
FAT16 or FAT32. (See RHBZ#2026224.) Work this around by
- parsing the partition table ourselves, and
- overriding "loop" with "msdos" when appropriate.
Note that when the FAT variant is FAT12, "parted" fails to parse the fake
MBR partition table completely (see RHBZ#2026220), which we cannot work
around. However, FAT12 should be a rare corner case in libguestfs usage --
"mkfs.fat" auto-chooses FAT12 only below 9MB disk size, and even "-F 12"
can only be forced up to and including 255MB disk size.
Add the helper function "has_bogus_mbr" to the Utils module; we'll use it
elsewhere too.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1931821
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Acked-by: Richard W.M. Jones <rjones@redhat.com >
Message-Id: <20211125094954.9713-5-lersek@redhat.com >
[lersek@redhat.com: drop "fun" keyword, and use partial application, in
the definition of "sec0at" [Rich]]
2021-11-26 10:17:05 +01:00
..
2021-11-26 10:16:05 +01:00
2019-05-30 09:12:32 +02:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 22:31:22 +01:00
2020-03-06 19:32:32 +00:00
2017-07-27 17:31:41 +01:00
2021-03-22 14:26:57 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-03-26 16:06:03 +00:00
2020-03-06 19:32:32 +00:00
2017-07-10 17:01:59 +01:00
2017-07-27 17:31:41 +01:00
2021-04-08 11:36:40 +01:00
2016-01-22 09:12:17 +00:00
2017-07-27 17:31:41 +01:00
2016-07-26 10:43:45 +01:00
2019-11-28 13:09:21 +01:00
2020-03-06 19:32:32 +00:00
2020-10-12 10:44:08 +01:00
2018-02-06 17:27:23 +01:00
2018-02-06 17:27:23 +01:00
2020-03-06 19:32:32 +00:00
2021-03-16 11:24:37 +00:00
2017-09-16 22:27:16 +01:00
2018-01-09 12:17:53 +00:00
2020-03-30 10:40:13 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2017-08-08 17:50:23 +01:00
2021-02-22 10:37:49 +00:00
2020-03-06 19:32:32 +00:00
2021-03-22 14:56:10 +00:00
2020-03-06 19:32:32 +00:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2020-03-06 19:32:32 +00:00
2017-07-10 17:01:59 +01:00
2020-03-06 19:32:32 +00:00
2018-04-19 11:30:29 +02:00
2016-07-26 10:43:45 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2016-07-26 10:43:45 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2015-10-27 17:25:49 +00:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2016-02-04 11:25:56 +01:00
2020-03-06 19:32:32 +00:00
2021-04-08 11:36:40 +01:00
2020-03-06 19:32:32 +00:00
2017-09-16 22:27:16 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2021-09-07 14:48:03 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-10-14 19:49:56 +02:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-10-14 19:49:56 +02:00
2020-03-06 19:32:32 +00:00
2021-10-14 19:49:56 +02:00
2021-10-14 19:49:56 +02:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-04-15 09:41:35 +01:00
2016-04-12 20:59:40 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-05-13 09:19:31 +01:00
2017-07-27 17:31:41 +01:00
2018-02-12 11:24:06 +01:00
2020-03-06 19:32:32 +00:00
2021-05-13 12:04:41 +01:00
2020-03-06 19:32:32 +00:00
2020-10-12 10:44:29 +01:00
2017-07-27 17:31:41 +01:00
2021-09-07 14:53:06 +01:00
2020-10-12 10:44:29 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2018-07-26 12:02:59 +01:00
2021-02-22 11:04:15 +00:00
2020-03-06 19:32:32 +00:00
2021-09-09 14:52:03 +02:00
2021-11-09 10:20:37 +00:00
2021-11-09 10:20:37 +00:00
2021-11-26 10:16:05 +01:00
2017-03-03 11:32:37 +00:00
2017-07-27 17:31:41 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2017-08-08 17:50:23 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-01-05 10:31:00 +00:00
2021-11-26 10:16:06 +01:00
2021-11-26 10:17:05 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-03-27 09:31:00 +00:00
2021-03-26 16:26:00 +00:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2020-07-30 13:58:35 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-27 17:31:41 +01:00
2017-07-10 17:01:59 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2017-07-27 17:31:41 +01:00
2020-03-06 19:32:32 +00:00
2017-07-27 17:31:41 +01:00
2017-07-27 22:31:22 +01:00
2020-03-06 19:32:32 +00:00
2020-03-06 19:32:32 +00:00
2021-02-22 10:38:19 +00:00
2018-05-15 11:15:54 +01:00
2015-07-02 16:08:44 +01:00
2020-03-06 19:32:32 +00:00
2021-11-09 10:20:37 +00:00
2021-09-07 15:55:48 +01:00
2021-11-26 10:17:05 +01:00
2021-11-26 10:17:05 +01:00
2015-10-05 14:28:33 +01:00
2021-09-07 15:55:43 +01:00
2021-03-30 12:56:58 +01:00
2021-10-12 16:48:04 +02:00
2020-03-06 19:32:32 +00:00
2017-07-27 17:31:41 +01:00