mirror of
https://github.com/xcat2/xNBA.git
synced 2026-05-07 17:27:09 +00:00
1b1e63d54d
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.
22 lines
512 B
C
22 lines
512 B
C
#ifndef _GPXE_ETHERNET_H
|
|
#define _GPXE_ETHERNET_H
|
|
|
|
/** @file
|
|
*
|
|
* Ethernet protocol
|
|
*
|
|
*/
|
|
|
|
FILE_LICENCE ( GPL2_OR_LATER );
|
|
|
|
#include <stdint.h>
|
|
|
|
extern void eth_init_addr ( const void *hw_addr, void *ll_addr );
|
|
extern const char * eth_ntoa ( const void *ll_addr );
|
|
extern int eth_mc_hash ( unsigned int af, const void *net_addr,
|
|
void *ll_addr );
|
|
extern int eth_eth_addr ( const void *ll_addr, void *eth_addr );
|
|
extern struct net_device * alloc_etherdev ( size_t priv_size );
|
|
|
|
#endif /* _GPXE_ETHERNET_H */
|