mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-07 19:45:07 +02:00
ArmPkg/BdsLib: Prevent memory leak whith TFTP
In some case, the size of the downloaded TFTP image cannot be known. An arbitrary larger buffer is allocated to receive the image. We need to make sure when we free the buffer we free the size of the allocated buffer and not the size of the actual image. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15609 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
a6217114e3
commit
edc93a3191
@ -756,6 +756,7 @@ BdsTftpLoadImage (
|
||||
EFI_STATUS Status;
|
||||
EFI_PXE_BASE_CODE_PROTOCOL *Pxe;
|
||||
UINT64 TftpBufferSize;
|
||||
UINT64 TftpTransferSize;
|
||||
EFI_IP_ADDRESS ServerIp;
|
||||
IPv4_DEVICE_PATH* IPv4DevicePathNode;
|
||||
FILEPATH_DEVICE_PATH* FilePathDevicePath;
|
||||
@ -857,12 +858,13 @@ BdsTftpLoadImage (
|
||||
goto EXIT;
|
||||
}
|
||||
|
||||
TftpTransferSize = TftpBufferSize;
|
||||
Status = Pxe->Mtftp (
|
||||
Pxe,
|
||||
EFI_PXE_BASE_CODE_TFTP_READ_FILE,
|
||||
(VOID *)(UINTN)*Image,
|
||||
FALSE,
|
||||
&TftpBufferSize,
|
||||
&TftpTransferSize,
|
||||
NULL,
|
||||
&ServerIp,
|
||||
(UINT8*)AsciiPathName,
|
||||
|
Loading…
x
Reference in New Issue
Block a user