grub-install-common: avoid out of bound access when read failed
Check that modinfo.sh could be read successfully; abort on error. Avoids potential out-of-bound array access. CID: 73819
This commit is contained in:
parent
478b567520
commit
0415dbe28f
2 changed files with 4 additions and 0 deletions
|
@ -1,5 +1,7 @@
|
||||||
2014-11-28 Andrei Borzenkov <arvidjaar@gmail.com>
|
2014-11-28 Andrei Borzenkov <arvidjaar@gmail.com>
|
||||||
|
|
||||||
|
* util/grub-install-common.c (grub_install_get_target): Check return
|
||||||
|
value of grub_util_fd_read (Coverity CID 73819).
|
||||||
* util/grub-mkstandalone.c (add_tar_file): Fix out of bound access
|
* util/grub-mkstandalone.c (add_tar_file): Fix out of bound access
|
||||||
to hd.magic (Coverity CID 73587, 73888, bug 43690).
|
to hd.magic (Coverity CID 73587, 73888, bug 43690).
|
||||||
|
|
||||||
|
|
|
@ -911,6 +911,8 @@ grub_install_get_target (const char *src)
|
||||||
grub_util_error (_("%s doesn't exist. Please specify --target or --directory"),
|
grub_util_error (_("%s doesn't exist. Please specify --target or --directory"),
|
||||||
fn);
|
fn);
|
||||||
r = grub_util_fd_read (f, buf, sizeof (buf) - 1);
|
r = grub_util_fd_read (f, buf, sizeof (buf) - 1);
|
||||||
|
if (r < 0)
|
||||||
|
grub_util_error (_("cannot read `%s': %s"), fn, strerror (errno));
|
||||||
grub_util_fd_close (f);
|
grub_util_fd_close (f);
|
||||||
buf[r] = '\0';
|
buf[r] = '\0';
|
||||||
c = strstr (buf, "grub_modinfo_target_cpu=");
|
c = strstr (buf, "grub_modinfo_target_cpu=");
|
||||||
|
|
Loading…
Reference in a new issue