[netdevice] Limit MTU by hardware maximum frame length
authorMichael Brown <mcb30@ipxe.org>
Wed, 25 Jan 2017 14:48:24 +0000 (14:48 +0000)
committerMichael Brown <mcb30@ipxe.org>
Wed, 25 Jan 2017 14:55:09 +0000 (14:55 +0000)
commit70fc25ad6e71a99b5802eb92b95c26407acbe990
treeb5b399a427584f7a78258601fa3d645b3a7ae16d
parentf450c75dad04061f2d51401088f156e1226804ac
[netdevice] Limit MTU by hardware maximum frame length

Separate out the concept of "hardware maximum supported frame length"
and "configured link MTU", and limit the latter according to the
former.

In networks where the DHCP-supplied link MTU is inconsistent with the
hardware or driver capabilities (e.g. a network using jumbo frames),
this will result in iPXE advertising a TCP MSS consistent with a size
that can actually be received.

Note that the term "MTU" is typically used to refer to the maximum
length excluding the link-layer headers; we adopt this usage.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/include/ipxe/netdevice.h
src/net/infiniband/xsigo.c
src/net/netdev_settings.c
src/net/netdevice.c
src/net/tcpip.c