Go to the documentation of this file.
95 #ifndef NET_EUI_PROVIDER_H
96 #define NET_EUI_PROVIDER_H
109 #define NETDEV_INDEX_ANY (0xFF)
200 addr_short->
u8[0] = addr_long->
uint8[6] & 0x7F;
201 addr_short->
u8[1] = addr_long->
uint8[7];
uint8_t uint8[8]
split into 8 8-bit words.
netdev_get_eui48_cb_t provider
function to provide an EUI-48
static void eui_short_from_eui64(eui64_t *addr_long, network_uint16_t *addr_short)
Get a short unicast address from an EUI-64.
const void * arg
argument to the provider function
A 16 bit integer in big endian aka network byte order.
uint8_t u8[2]
8 bit representation
Data type to represent an EUI-48.
netdev_type_t
Driver types for netdev.
netdev_type_t type
device type to match or NETDEV_ANY
netdev_type_t type
device type to match or NETDEV_ANY
netdev_get_eui64_cb_t provider
function to provide an EUI-64
Definitions low-level network driver interface.
uint8_t index
device index to match or NETDEV_INDEX_ANY
void netdev_eui48_get(netdev_t *netdev, eui48_t *addr)
Generates an EUI-48 address for the netdev interface.
Structure to hold driver state.
const void * arg
argument to the provider function
void netdev_eui64_get(netdev_t *netdev, eui64_t *addr)
Generates an EUI-64 address for the netdev interface.
Data type to represent an EUI-64.
EUI-64 data type definition.
int(* netdev_get_eui64_cb_t)(const void *arg, eui64_t *addr)
Function for providing a EUI-64 to a device.
int(* netdev_get_eui48_cb_t)(const void *arg, eui48_t *addr)
Function for providing a EUI-48 to a device.
Structure to hold providers for EUI-64 addresses.
uint8_t index
device index to match or NETDEV_INDEX_ANY
Structure to hold providers for EUI-48 addresses.
Definition and IPv6 IID conversion for IEEE EUI-48 identifiers.