diff options
| author | Michael Brown | 2015-08-18 16:43:06 +0200 |
|---|---|---|
| committer | Michael Brown | 2015-08-18 16:43:06 +0200 |
| commit | 60e2b71471aabce2b289320dd4322a994c772ce9 (patch) | |
| tree | bb8888e5337c7ce33bf44683d268bb40cc40afdd /src/arch | |
| parent | [efi] Work around bugs in Emulex NII driver (diff) | |
| download | ipxe-60e2b71471aabce2b289320dd4322a994c772ce9.tar.gz ipxe-60e2b71471aabce2b289320dd4322a994c772ce9.tar.xz ipxe-60e2b71471aabce2b289320dd4322a994c772ce9.zip | |
[dhcp] Allow pseudo-DHCP servers to use pseudo-identifiers
Some ProxyDHCP servers and PXE boot servers do not specify a DHCP
server identifier via option 54. We currently work around this in a
variety of ad-hoc ways:
- if a ProxyDHCPACK has no server identifier then we treat it as
having the correct server identifier,
- if a boot server ACK has no server identifier then we use the
packet's source IP address as the server identifier.
Introduce the concept of a DHCP server pseudo-identifier, defined as
being:
- the server identifier (option 54), or
- if there is no server identifier, then the next-server address
(siaddr),
- if there is no server identifier or next-server address, then the
DHCP packet's source IP address.
Use the pseudo-identifier in place of the server identifier when
handling ProxyDHCP and PXE boot server responses.
Originally-fixed-by: Wissam Shoukair <wissams@mellanox.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch')
0 files changed, 0 insertions, 0 deletions
