grub-module-verifier: fix unintended sign extension
authorAndrei Borzenkov <arvidjaar@gmail.com>
Fri, 8 Jan 2016 08:05:16 +0000 (11:05 +0300)
committerAndrei Borzenkov <arvidjaar@gmail.com>
Sat, 9 Jan 2016 08:36:42 +0000 (11:36 +0300)
Found by: Coverity scan.
CID: 156533, 156532

util/grub-module-verifierXX.c

index 25988eb..f612d51 100644 (file)
@@ -337,7 +337,7 @@ SUFFIX(grub_module_verify) (void *module_img, size_t size, const struct grub_mod
 
   /* Make sure that every section is within the core.  */
   if (size < grub_target_to_host (e->e_shoff)
-      + grub_target_to_host16 (e->e_shentsize) * grub_target_to_host16(e->e_shnum))
+      + (grub_uint32_t) grub_target_to_host16 (e->e_shentsize) * grub_target_to_host16(e->e_shnum))
     {
       grub_util_error ("ELF sections outside core");
     }