* [PATCH EDK2 v1 0/1] MdeModulePkg/FileExplorerLib: Add return value check @ 2021-01-12 7:06 wenyi,xie 2021-01-12 7:06 ` [PATCH EDK2 v1 1/1] " wenyi,xie 0 siblings, 1 reply; 5+ messages in thread From: wenyi,xie @ 2021-01-12 7:06 UTC (permalink / raw) To: devel, jian.j.wang, hao.a.wu, dandan.bi, eric.dong Cc: songdongkuang, xiewenyi2 Main Changes : Add status check after calling LibGetFileHandleFromMenu, if the status is not success, then do not call LibFindFiles. Wenyi Xie (1): MdeModulePkg/FileExplorerLib: Add return value check MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) -- 2.20.1.windows.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return value check 2021-01-12 7:06 [PATCH EDK2 v1 0/1] MdeModulePkg/FileExplorerLib: Add return value check wenyi,xie @ 2021-01-12 7:06 ` wenyi,xie 2021-01-13 6:07 ` Dandan Bi 0 siblings, 1 reply; 5+ messages in thread From: wenyi,xie @ 2021-01-12 7:06 UTC (permalink / raw) To: devel, jian.j.wang, hao.a.wu, dandan.bi, eric.dong Cc: songdongkuang, xiewenyi2 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3113 According to FAT specification, the length of file path should not larger than 260. When the length exceed 260, function FatLocateOFile will return EFI_INVALID_PARAMETER and the parameter FileHandle will be NULL. Then on the top-level function,an exception happens when the NULL pointer is passed and be used. So adding return value check after calling LibGetFileHandleFromMenu, if return value is not success, stop calling LibFindFiles. Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Dandan Bi <dandan.bi@intel.com> Cc: Eric Dong <eric.dong@intel.com> Signed-off-by: Wenyi Xie <xiewenyi2@huawei.com> --- MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c index 13a214b06af9..03630a29bc3b 100644 --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c @@ -1408,12 +1408,14 @@ LibUpdateFileExplorer ( if (NewFileContext->IsDir) { RemoveEntryList (&NewMenuEntry->Link); LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); - LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); - Status = LibFindFiles (FileHandle, NewFileContext->FileName, NewFileContext->DeviceHandle); + Status = LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); if (!EFI_ERROR (Status)) { - LibUpdateFileExplorePage (); - } else { - LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); + Status = LibFindFiles (FileHandle, NewFileContext->FileName, NewFileContext->DeviceHandle); + if (!EFI_ERROR (Status)) { + LibUpdateFileExplorePage (); + } else { + LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); + } } LibDestroyMenuEntry (NewMenuEntry); } -- 2.20.1.windows.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return value check 2021-01-12 7:06 ` [PATCH EDK2 v1 1/1] " wenyi,xie @ 2021-01-13 6:07 ` Dandan Bi 2021-01-14 1:35 ` 回复: [edk2-devel] " gaoliming [not found] ` <1659F55FB44C27DA.15468@groups.io> 0 siblings, 2 replies; 5+ messages in thread From: Dandan Bi @ 2021-01-13 6:07 UTC (permalink / raw) To: Wenyi Xie, devel@edk2.groups.io, Wang, Jian J, Wu, Hao A, Dong, Eric Cc: songdongkuang@huawei.com Reviewed-by: Dandan Bi <dandan.bi@intel.com> Thanks, Dandan > -----Original Message----- > From: Wenyi Xie <xiewenyi2@huawei.com> > Sent: Tuesday, January 12, 2021 3:07 PM > To: devel@edk2.groups.io; Wang, Jian J <jian.j.wang@intel.com>; Wu, Hao A > <hao.a.wu@intel.com>; Bi, Dandan <dandan.bi@intel.com>; Dong, Eric > <eric.dong@intel.com> > Cc: songdongkuang@huawei.com; xiewenyi2@huawei.com > Subject: [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return > value check > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3113 > According to FAT specification, the length of file path should not larger than > 260. When the length exceed 260, function FatLocateOFile will return > EFI_INVALID_PARAMETER and the parameter FileHandle will be NULL. Then > on the top-level function,an exception happens when the NULL pointer is > passed and be used. > So adding return value check after calling LibGetFileHandleFromMenu, if > return value is not success, stop calling LibFindFiles. > > Cc: Jian J Wang <jian.j.wang@intel.com> > Cc: Hao A Wu <hao.a.wu@intel.com> > Cc: Dandan Bi <dandan.bi@intel.com> > Cc: Eric Dong <eric.dong@intel.com> > Signed-off-by: Wenyi Xie <xiewenyi2@huawei.com> > --- > MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > index 13a214b06af9..03630a29bc3b 100644 > --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > @@ -1408,12 +1408,14 @@ LibUpdateFileExplorer ( > if (NewFileContext->IsDir) { > RemoveEntryList (&NewMenuEntry->Link); > LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > - LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); > - Status = LibFindFiles (FileHandle, NewFileContext->FileName, > NewFileContext->DeviceHandle); > + Status = LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); > if (!EFI_ERROR (Status)) { > - LibUpdateFileExplorePage (); > - } else { > - LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > + Status = LibFindFiles (FileHandle, NewFileContext->FileName, > NewFileContext->DeviceHandle); > + if (!EFI_ERROR (Status)) { > + LibUpdateFileExplorePage (); > + } else { > + LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > + } > } > LibDestroyMenuEntry (NewMenuEntry); > } > -- > 2.20.1.windows.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* 回复: [edk2-devel] [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return value check 2021-01-13 6:07 ` Dandan Bi @ 2021-01-14 1:35 ` gaoliming [not found] ` <1659F55FB44C27DA.15468@groups.io> 1 sibling, 0 replies; 5+ messages in thread From: gaoliming @ 2021-01-14 1:35 UTC (permalink / raw) To: devel, dandan.bi, 'Wenyi Xie', 'Wang, Jian J', 'Wu, Hao A', 'Dong, Eric' Cc: songdongkuang Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> > -----邮件原件----- > 发件人: bounce+27952+70200+4905953+8761045@groups.io > <bounce+27952+70200+4905953+8761045@groups.io> 代表 Dandan Bi > 发送时间: 2021年1月13日 14:07 > 收件人: Wenyi Xie <xiewenyi2@huawei.com>; devel@edk2.groups.io; Wang, > Jian J <jian.j.wang@intel.com>; Wu, Hao A <hao.a.wu@intel.com>; Dong, Eric > <eric.dong@intel.com> > 抄送: songdongkuang@huawei.com > 主题: Re: [edk2-devel] [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: > Add return value check > > Reviewed-by: Dandan Bi <dandan.bi@intel.com> > > > > Thanks, > Dandan > > -----Original Message----- > > From: Wenyi Xie <xiewenyi2@huawei.com> > > Sent: Tuesday, January 12, 2021 3:07 PM > > To: devel@edk2.groups.io; Wang, Jian J <jian.j.wang@intel.com>; Wu, Hao > A > > <hao.a.wu@intel.com>; Bi, Dandan <dandan.bi@intel.com>; Dong, Eric > > <eric.dong@intel.com> > > Cc: songdongkuang@huawei.com; xiewenyi2@huawei.com > > Subject: [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return > > value check > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3113 > > According to FAT specification, the length of file path should not larger than > > 260. When the length exceed 260, function FatLocateOFile will return > > EFI_INVALID_PARAMETER and the parameter FileHandle will be NULL. > Then > > on the top-level function,an exception happens when the NULL pointer is > > passed and be used. > > So adding return value check after calling LibGetFileHandleFromMenu, if > > return value is not success, stop calling LibFindFiles. > > > > Cc: Jian J Wang <jian.j.wang@intel.com> > > Cc: Hao A Wu <hao.a.wu@intel.com> > > Cc: Dandan Bi <dandan.bi@intel.com> > > Cc: Eric Dong <eric.dong@intel.com> > > Signed-off-by: Wenyi Xie <xiewenyi2@huawei.com> > > --- > > MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 12 +++++++----- > > 1 file changed, 7 insertions(+), 5 deletions(-) > > > > diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > index 13a214b06af9..03630a29bc3b 100644 > > --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > @@ -1408,12 +1408,14 @@ LibUpdateFileExplorer ( > > if (NewFileContext->IsDir) { > > RemoveEntryList (&NewMenuEntry->Link); > > LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > - LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); > > - Status = LibFindFiles (FileHandle, NewFileContext->FileName, > > NewFileContext->DeviceHandle); > > + Status = LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); > > if (!EFI_ERROR (Status)) { > > - LibUpdateFileExplorePage (); > > - } else { > > - LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > + Status = LibFindFiles (FileHandle, NewFileContext->FileName, > > NewFileContext->DeviceHandle); > > + if (!EFI_ERROR (Status)) { > > + LibUpdateFileExplorePage (); > > + } else { > > + LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > + } > > } > > LibDestroyMenuEntry (NewMenuEntry); > > } > > -- > > 2.20.1.windows.1 > > > > > ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <1659F55FB44C27DA.15468@groups.io>]
* 回复: [edk2-devel] [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return value check [not found] ` <1659F55FB44C27DA.15468@groups.io> @ 2021-01-15 0:44 ` gaoliming 0 siblings, 0 replies; 5+ messages in thread From: gaoliming @ 2021-01-15 0:44 UTC (permalink / raw) To: devel, gaoliming, dandan.bi, 'Wenyi Xie', 'Wang, Jian J', 'Wu, Hao A', 'Dong, Eric' Cc: songdongkuang Create PR https://github.com/tianocore/edk2/pull/1357 Thanks Liming > -----邮件原件----- > 发件人: bounce+27952+70264+4905953+8761045@groups.io > <bounce+27952+70264+4905953+8761045@groups.io> 代表 gaoliming > 发送时间: 2021年1月14日 9:35 > 收件人: devel@edk2.groups.io; dandan.bi@intel.com; 'Wenyi Xie' > <xiewenyi2@huawei.com>; 'Wang, Jian J' <jian.j.wang@intel.com>; 'Wu, Hao > A' <hao.a.wu@intel.com>; 'Dong, Eric' <eric.dong@intel.com> > 抄送: songdongkuang@huawei.com > 主题: 回复: [edk2-devel] [PATCH EDK2 v1 1/1] > MdeModulePkg/FileExplorerLib: Add return value check > > Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> > > > -----邮件原件----- > > 发件人: bounce+27952+70200+4905953+8761045@groups.io > > <bounce+27952+70200+4905953+8761045@groups.io> 代表 Dandan Bi > > 发送时间: 2021年1月13日 14:07 > > 收件人: Wenyi Xie <xiewenyi2@huawei.com>; devel@edk2.groups.io; > Wang, > > Jian J <jian.j.wang@intel.com>; Wu, Hao A <hao.a.wu@intel.com>; Dong, > Eric > > <eric.dong@intel.com> > > 抄送: songdongkuang@huawei.com > > 主题: Re: [edk2-devel] [PATCH EDK2 v1 1/1] > MdeModulePkg/FileExplorerLib: > > Add return value check > > > > Reviewed-by: Dandan Bi <dandan.bi@intel.com> > > > > > > > > Thanks, > > Dandan > > > -----Original Message----- > > > From: Wenyi Xie <xiewenyi2@huawei.com> > > > Sent: Tuesday, January 12, 2021 3:07 PM > > > To: devel@edk2.groups.io; Wang, Jian J <jian.j.wang@intel.com>; Wu, > Hao > > A > > > <hao.a.wu@intel.com>; Bi, Dandan <dandan.bi@intel.com>; Dong, Eric > > > <eric.dong@intel.com> > > > Cc: songdongkuang@huawei.com; xiewenyi2@huawei.com > > > Subject: [PATCH EDK2 v1 1/1] MdeModulePkg/FileExplorerLib: Add return > > > value check > > > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3113 > > > According to FAT specification, the length of file path should not larger than > > > 260. When the length exceed 260, function FatLocateOFile will return > > > EFI_INVALID_PARAMETER and the parameter FileHandle will be NULL. > > Then > > > on the top-level function,an exception happens when the NULL pointer is > > > passed and be used. > > > So adding return value check after calling LibGetFileHandleFromMenu, if > > > return value is not success, stop calling LibFindFiles. > > > > > > Cc: Jian J Wang <jian.j.wang@intel.com> > > > Cc: Hao A Wu <hao.a.wu@intel.com> > > > Cc: Dandan Bi <dandan.bi@intel.com> > > > Cc: Eric Dong <eric.dong@intel.com> > > > Signed-off-by: Wenyi Xie <xiewenyi2@huawei.com> > > > --- > > > MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 12 +++++++----- > > > 1 file changed, 7 insertions(+), 5 deletions(-) > > > > > > diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > > b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > > index 13a214b06af9..03630a29bc3b 100644 > > > --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > > +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c > > > @@ -1408,12 +1408,14 @@ LibUpdateFileExplorer ( > > > if (NewFileContext->IsDir) { > > > RemoveEntryList (&NewMenuEntry->Link); > > > LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > > - LibGetFileHandleFromMenu (NewMenuEntry, &FileHandle); > > > - Status = LibFindFiles (FileHandle, NewFileContext->FileName, > > > NewFileContext->DeviceHandle); > > > + Status = LibGetFileHandleFromMenu (NewMenuEntry, > &FileHandle); > > > if (!EFI_ERROR (Status)) { > > > - LibUpdateFileExplorePage (); > > > - } else { > > > - LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > > + Status = LibFindFiles (FileHandle, NewFileContext->FileName, > > > NewFileContext->DeviceHandle); > > > + if (!EFI_ERROR (Status)) { > > > + LibUpdateFileExplorePage (); > > > + } else { > > > + LibFreeMenu (gFileExplorerPrivate.FsOptionMenu); > > > + } > > > } > > > LibDestroyMenuEntry (NewMenuEntry); > > > } > > > -- > > > 2.20.1.windows.1 > > > > > > > > > > > > > > > > > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-01-15 0:44 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-01-12 7:06 [PATCH EDK2 v1 0/1] MdeModulePkg/FileExplorerLib: Add return value check wenyi,xie 2021-01-12 7:06 ` [PATCH EDK2 v1 1/1] " wenyi,xie 2021-01-13 6:07 ` Dandan Bi 2021-01-14 1:35 ` 回复: [edk2-devel] " gaoliming [not found] ` <1659F55FB44C27DA.15468@groups.io> 2021-01-15 0:44 ` gaoliming
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox