util/grub-mount: Check file path sanity
The function argp_parser() in util/grub-mount.c lacks a check on the sanity of the file path when parsing parameters. This results in a segmentation fault if a partition is mounted to a non-existent path. Signed-off-by: Qiumiao Zhang <zhangqiumiao1@huawei.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
parent
85e40b36ed
commit
3f79e3b158
@ -563,6 +563,8 @@ argp_parser (int key, char *arg, struct argp_state *state)
|
|||||||
|
|
||||||
images = xrealloc (images, (num_disks + 1) * sizeof (images[0]));
|
images = xrealloc (images, (num_disks + 1) * sizeof (images[0]));
|
||||||
images[num_disks] = grub_canonicalize_file_name (arg);
|
images[num_disks] = grub_canonicalize_file_name (arg);
|
||||||
|
if (images[num_disks] == NULL)
|
||||||
|
grub_util_error (_("cannot find `%s': %s"), arg, strerror (errno));
|
||||||
num_disks++;
|
num_disks++;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user