summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg
diff options
context:
space:
mode:
authorsfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>2011-12-16 09:00:47 +0000
committersfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>2011-12-16 09:00:47 +0000
commit357af28525c3a5be6ca0a201f2533dc0a372dbfb (patch)
treeea50fbf3c8807ddf36c9a69791bcfe32ed151c1a /MdeModulePkg
parent9508d0fa4fb2cd2ff03604bc3b1b1abf8f69ccb6 (diff)
downloadedk2-357af28525c3a5be6ca0a201f2533dc0a372dbfb.tar.gz
edk2-357af28525c3a5be6ca0a201f2533dc0a372dbfb.tar.bz2
edk2-357af28525c3a5be6ca0a201f2533dc0a372dbfb.zip
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
Diffstat (limited to 'MdeModulePkg')
-rw-r--r--MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
index 6f6d7f92ae..511e064873 100644
--- a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
+++ b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
@@ -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.