iPXE - Open Source Boot Firmware

[netdevice] Add the concept of an "Ethernet-compatible" MAC address
authorMichael Brown <mcb30@etherboot.org>
Fri, 23 Oct 2009 21:14:05 +0000 (22:14 +0100)
committerMichael Brown <mcb30@etherboot.org>
Fri, 23 Oct 2009 21:14:05 +0000 (22:14 +0100)
commit1b1e63d54d7697c1fd156dcf365e74c7836d4d37
treef582b2ffbd80ebc45c97b6f0ac27a9d6f4d8ef8c
parentd000c6b8c73211dbbf4388758e7ccd98564ed110
[netdevice] Add the concept of an "Ethernet-compatible" MAC address

The iBFT is Ethernet-centric in providing only six bytes for a MAC
address.  This is most probably an indirect consequence of a similar
design flaw in the Windows NDIS stack.  (The WinOF IPoIB stack
performs all sorts of contortions in order to pretend to the NDIS
layer that it is dealing with six-byte MAC addresses.)

There is no sensible way in which to extend the iBFT without breaking
compatibility with programs that expect to parse it.  Add the notion
of an "Ethernet-compatible" MAC address to our link layer abstraction,
so that link layers can provide their own workarounds for this
limitation.
src/drivers/net/ipoib.c
src/include/gpxe/ethernet.h
src/include/gpxe/netdevice.h
src/net/80211/net80211.c
src/net/ethernet.c