The following issues exist with the EFI Socket Library: | |
* Don't run socket applications or the socket driver for a long time - The IPv4Config | |
and DHCP protocols are not properly running the renew and lease expiration timers. | |
When the DHCP lease expires it is possible for a duplicate IP address to exist on | |
the network. HSD 206136 | |
* Network adapters must be initialized prior to running the socket application - Static | |
and dynamic IP address need to be properly assigned to the network adapters on the | |
system. Note that sockets does not assign the IP addresses since it does not | |
understand how the system is connected to the network! | |
* The default device must contain the Efi\etc directory populated with files containing | |
the proper network configuration - A template set of files is in StdLib\Efi\etc. Note | |
that the resolv.conf file contains the set of DNS servers. | |
* Since DHCP is not running when the sockets application is running, the last negotiated | |
packet is no longer available. As a result, any of the options that DHCP did negotiate | |
are no longer available for sockets such as the list of DNS servers. | |
* DHCP does not request the domain name and domain name server (DNS) addresses. This | |
requires that sockets use configuration files in Efi\etc! | |
* TCPv4 transfer rate is slow (< 10 Mbits/sec) - This is an unidentified issue. | |
* Tcp4Dxe transmits more urgent data than is sent through sockets when normal data is | |
queued for transmission before the urgent data. HSD 206365 | |
* Raw socket applications are not able to pass the IP header as part of their | |
payload by using the IP option IP_HDRINCL. This is because the UEFI IPv4 driver | |
(Ip4Dxe) does not support RawData. HSD 206136 | |
* Only version 4 of the UEFI network stack is supported | |