Reconfigure the UdpRead instance if an error occurred in Dhcp, Discover and Mtftp process.

Signed-off-by: sfu5
Reviewed-by: qianouyang
Reviewed-by: tye

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12884 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
sfu5
2011-12-16 09:00:47 +00:00
parent 9508d0fa4f
commit 357af28525
3 changed files with 35 additions and 26 deletions

View File

@@ -727,7 +727,7 @@ ON_EXIT:
}
}
Status = Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
//
// Dhcp(), Discover(), and Mtftp() set the IP filter, and return with the IP
@@ -1024,7 +1024,7 @@ EfiPxeBcDiscover (
} else {
Status = EFI_DEVICE_ERROR;
}
return Status;
goto ON_EXIT;
} else {
PxeBcParseCachedDhcpPacket (&Private->PxeReply);
}
@@ -1043,7 +1043,7 @@ EfiPxeBcDiscover (
ON_EXIT:
Status = Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
//
// Dhcp(), Discover(), and Mtftp() set the IP filter, and return with the IP
@@ -1280,10 +1280,11 @@ EfiPxeBcMtftp (
}
if (EFI_ERROR (Status)) {
return Status;
goto ON_EXIT;
}
Status = Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
ON_EXIT:
Private->Udp4Read->Configure (Private->Udp4Read, &Private->Udp4CfgData);
//
// Dhcp(), Discover(), and Mtftp() set the IP filter, and return with the IP
// receive filter list emptied and the filter set to EFI_PXE_BASE_CODE_IP_FILTER_STATION_IP.