diff options
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/gpxe/ethernet.h | 1 | ||||
| -rw-r--r-- | src/include/gpxe/netdevice.h | 19 |
2 files changed, 14 insertions, 6 deletions
diff --git a/src/include/gpxe/ethernet.h b/src/include/gpxe/ethernet.h index 8cf6b1be7..4dfc24d3f 100644 --- a/src/include/gpxe/ethernet.h +++ b/src/include/gpxe/ethernet.h @@ -15,6 +15,7 @@ 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 */ diff --git a/src/include/gpxe/netdevice.h b/src/include/gpxe/netdevice.h index fd77d893a..858d8e97d 100644 --- a/src/include/gpxe/netdevice.h +++ b/src/include/gpxe/netdevice.h @@ -128,8 +128,8 @@ struct ll_protocol { /** * Transcribe link-layer address * - * @v ll_addr Link-layer address - * @ret string Human-readable transcription of address + * @v ll_addr Link-layer address + * @ret string Human-readable transcription of address * * This method should convert the link-layer address into a * human-readable format. @@ -141,13 +141,20 @@ struct ll_protocol { /** * Hash multicast address * - * @v af Address family - * @v net_addr Network-layer address - * @v ll_addr Link-layer address to fill in - * @ret rc Return status code + * @v af Address family + * @v net_addr Network-layer address + * @v ll_addr Link-layer address to fill in + * @ret rc Return status code */ int ( * mc_hash ) ( unsigned int af, const void *net_addr, void *ll_addr ); + /** + * Generate Ethernet-compatible compressed link-layer address + * + * @v ll_addr Link-layer address + * @v eth_addr Ethernet-compatible address to fill in + */ + int ( * eth_addr ) ( const void *ll_addr, void *eth_addr ); /** Link-layer protocol * * This is an ARPHRD_XXX constant, in network byte order. |
