xref: /OK3568_Linux_fs/buildroot/boot/grub2/0051-net-tftp-Fix-dangling-memory-pointer.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom 0cb838b281a68b536a09681f9557ea6a7ac5da7a Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Darren Kenny <darren.kenny@oracle.com>
3*4882a593SmuzhiyunDate: Fri, 19 Feb 2021 17:12:23 +0000
4*4882a593SmuzhiyunSubject: [PATCH] net/tftp: Fix dangling memory pointer
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunThe static code analysis tool, Parfait, reported that the valid of
7*4882a593Smuzhiyunfile->data was left referencing memory that was freed by the call to
8*4882a593Smuzhiyungrub_free(data) where data was initialized from file->data.
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunTo ensure that there is no unintentional access to this memory
11*4882a593Smuzhiyunreferenced by file->data we should set the pointer to NULL.
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunSigned-off-by: Darren Kenny <darren.kenny@oracle.com>
14*4882a593SmuzhiyunReviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
15*4882a593SmuzhiyunSigned-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
16*4882a593Smuzhiyun---
17*4882a593Smuzhiyun grub-core/net/tftp.c | 1 +
18*4882a593Smuzhiyun 1 file changed, 1 insertion(+)
19*4882a593Smuzhiyun
20*4882a593Smuzhiyundiff --git a/grub-core/net/tftp.c b/grub-core/net/tftp.c
21*4882a593Smuzhiyunindex b4297bc..c106704 100644
22*4882a593Smuzhiyun--- a/grub-core/net/tftp.c
23*4882a593Smuzhiyun+++ b/grub-core/net/tftp.c
24*4882a593Smuzhiyun@@ -406,6 +406,7 @@ tftp_close (struct grub_file *file)
25*4882a593Smuzhiyun       grub_net_udp_close (data->sock);
26*4882a593Smuzhiyun     }
27*4882a593Smuzhiyun   grub_free (data);
28*4882a593Smuzhiyun+  file->data = NULL;
29*4882a593Smuzhiyun   return GRUB_ERR_NONE;
30*4882a593Smuzhiyun }
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun--
33*4882a593Smuzhiyun2.14.2
34*4882a593Smuzhiyun
35