mirror of https://github.com/acidanthera/audk.git
MdeModulePkg: Update DBsize in SNP GetStatus command.
Update the DBsize in GetStatus command to let UNDI return an array of recycled buffers. This is to make the loop at the end of PxeGetStatus() useful and to prevent buffer overflow with some non-conformant UNDI drivers which not check the value of the input DBsize in UNDI GetStatus command. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Sriram Subramanian <sriram-s@hpe.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ye Ting <ting.ye@intel.com>
This commit is contained in:
parent
072289f45c
commit
f000a8c60e
|
@ -65,11 +65,7 @@ PxeGetStatus (
|
|||
Snp->Cdb.CPBsize = PXE_CPBSIZE_NOT_USED;
|
||||
Snp->Cdb.CPBaddr = PXE_CPBADDR_NOT_USED;
|
||||
|
||||
//
|
||||
// size DB for return of one buffer
|
||||
//
|
||||
Snp->Cdb.DBsize = (UINT16) ((sizeof (PXE_DB_GET_STATUS) - sizeof (Db->TxBuffer)) + sizeof (Db->TxBuffer[0]));
|
||||
|
||||
Snp->Cdb.DBsize = (UINT16) sizeof (PXE_DB_GET_STATUS);
|
||||
Snp->Cdb.DBaddr = (UINT64)(UINTN) Db;
|
||||
|
||||
Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
|
||||
|
|
Loading…
Reference in New Issue