diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcBoot.c b/NetworkPkg/UefiPxeBcDxe/PxeBcBoot.c index fc50a82959..0bb1d661e5 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcBoot.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcBoot.c @@ -1242,7 +1242,7 @@ ON_EXIT: } else if (Status == EFI_NO_MEDIA) { AsciiPrint ("\n PXE-E12: Could not detect network connection.\n"); } else if (Status == EFI_NO_RESPONSE) { - AsciiPrint ("\n PXE-E16: No offer received.\n"); + AsciiPrint ("\n PXE-E16: No valid offer received.\n"); } else if (Status == EFI_TIMEOUT) { AsciiPrint ("\n PXE-E18: Server response timeout.\n"); } else if (Status == EFI_ABORTED) { diff --git a/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp4.c b/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp4.c index 97829e9842..101c65824a 100644 --- a/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp4.c +++ b/NetworkPkg/UefiPxeBcDxe/PxeBcDhcp4.c @@ -1707,6 +1707,11 @@ PxeBcDhcp4Dora ( if (Status == EFI_ICMP_ERROR) { PxeMode->IcmpErrorReceived = TRUE; } + + if (Status == EFI_TIMEOUT && Private->OfferNum > 0) { + Status = EFI_NO_RESPONSE; + } + goto ON_EXIT; }