fs/iso9660: Set a grub_errno if mount fails

It was possible for a grub_errno to not be set if mount of an ISO 9660
filesystem failed when set_rockridge() returned 0.

This isn't known to be exploitable as the other filesystems due to
filesystem helper checking the requested file type. Though fixing
as a precaution.

Reported-by: B Horn <b@horn.uk>
Signed-off-by: B Horn <b@horn.uk>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
B Horn 2024-05-12 06:37:08 +01:00 committed by Daniel Kiper
parent f7c070a2e2
commit 965db59708

View File

@ -551,6 +551,9 @@ grub_iso9660_mount (grub_disk_t disk)
return data;
fail:
if (grub_errno == GRUB_ERR_NONE)
grub_error (GRUB_ERR_BAD_FS, "not a ISO9660 filesystem");
grub_free (data);
return 0;
}