In EfiSocketLib\Udp4, the EslUdp4SocketIsConfigured() routine calls
EFI_IP4_PROTOCOL.Configure().
In a system configured for DHCP, the first use of this call after boot will
trigger the DHCP process to begin.
In this case, the error returned is EFI_NO_MAPPING, and this means the DHCP
process is not complete.
Reading the spec, it appears that the designers of the function instruct the
caller to poll GetModeData() in this case, to wait until the address is
ready.
By returning this error instead, the use of EfiSocketLib will fail the first
time it is used after boot.
It is not clear what the calling program using the library should do other
than wait for a while and then retry the operation.
If the caller checks for EAFNOSUPPORT, and retries the operation, this will
result in unnecessary calls to Configure().
Is it possible to have the EfiSocketLib handle this "first use triggers DHCP
process" better?
Or should the library user handle the retries?
---Jeff
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel