]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
kern/partition: Check for NULL before dereferencing input string
authorDarren Kenny <darren.kenny@oracle.com>
Fri, 23 Oct 2020 09:49:59 +0000 (09:49 +0000)
committerDaniel Kiper <daniel.kiper@oracle.com>
Tue, 2 Mar 2021 14:54:16 +0000 (15:54 +0100)
There is the possibility that the value of str comes from an external
source and continuing to use it before ever checking its validity is
wrong. So, needs fixing.

Additionally, drop unneeded part initialization.

Fixes: CID 292444
Signed-off-by: Darren Kenny <darren.kenny@oracle.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
grub-core/kern/partition.c

index 2c401b866c4be036dc13864e3254ea5015f0e671..3068c4dcac0a1e862846c6163eb83a9d15bd76ea 100644 (file)
@@ -109,11 +109,14 @@ grub_partition_map_probe (const grub_partition_map_t partmap,
 grub_partition_t
 grub_partition_probe (struct grub_disk *disk, const char *str)
 {
-  grub_partition_t part = 0;
+  grub_partition_t part;
   grub_partition_t curpart = 0;
   grub_partition_t tail;
   const char *ptr;
 
+  if (str == NULL)
+    return 0;
+
   part = tail = disk->partition;
 
   for (ptr = str; *ptr;)