diff options
Diffstat (limited to 'meta/recipes-bsp/grub/files/0015-kern-partition-Check-for-NULL-before-dereferencing-i.patch')
-rw-r--r-- | meta/recipes-bsp/grub/files/0015-kern-partition-Check-for-NULL-before-dereferencing-i.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-bsp/grub/files/0015-kern-partition-Check-for-NULL-before-dereferencing-i.patch b/meta/recipes-bsp/grub/files/0015-kern-partition-Check-for-NULL-before-dereferencing-i.patch new file mode 100644 index 0000000000..af9fcd45cc --- /dev/null +++ b/meta/recipes-bsp/grub/files/0015-kern-partition-Check-for-NULL-before-dereferencing-i.patch | |||
@@ -0,0 +1,43 @@ | |||
1 | From 0da8ef2e03a8591586b53a29af92d2ace76a04e3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Darren Kenny <darren.kenny@oracle.com> | ||
3 | Date: Fri, 23 Oct 2020 09:49:59 +0000 | ||
4 | Subject: [PATCH] kern/partition: Check for NULL before dereferencing input | ||
5 | string | ||
6 | |||
7 | There is the possibility that the value of str comes from an external | ||
8 | source and continuing to use it before ever checking its validity is | ||
9 | wrong. So, needs fixing. | ||
10 | |||
11 | Additionally, drop unneeded part initialization. | ||
12 | |||
13 | Fixes: CID 292444 | ||
14 | |||
15 | Signed-off-by: Darren Kenny <darren.kenny@oracle.com> | ||
16 | Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com> | ||
17 | |||
18 | Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/grub.git/commit/?id=bc9c468a2ce84bc767234eec888b71f1bc744fff] | ||
19 | Signed-off-by: Marta Rybczynska <marta.rybczynska@huawei.com> | ||
20 | --- | ||
21 | grub-core/kern/partition.c | 5 ++++- | ||
22 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
23 | |||
24 | diff --git a/grub-core/kern/partition.c b/grub-core/kern/partition.c | ||
25 | index e499147..b10a184 100644 | ||
26 | --- a/grub-core/kern/partition.c | ||
27 | +++ b/grub-core/kern/partition.c | ||
28 | @@ -109,11 +109,14 @@ grub_partition_map_probe (const grub_partition_map_t partmap, | ||
29 | grub_partition_t | ||
30 | grub_partition_probe (struct grub_disk *disk, const char *str) | ||
31 | { | ||
32 | - grub_partition_t part = 0; | ||
33 | + grub_partition_t part; | ||
34 | grub_partition_t curpart = 0; | ||
35 | grub_partition_t tail; | ||
36 | const char *ptr; | ||
37 | |||
38 | + if (str == NULL) | ||
39 | + return 0; | ||
40 | + | ||
41 | part = tail = disk->partition; | ||
42 | |||
43 | for (ptr = str; *ptr;) | ||