ETHER_ADDRESS_LENGTH
uint8 ethernet_address[ETHER_ADDRESS_LENGTH];
uint8 destination[ETHER_ADDRESS_LENGTH];
uint8 source[ETHER_ADDRESS_LENGTH];
#define ETHER_ADDR_LEN ETHER_ADDRESS_LENGTH
destination->sdl_alen = ETHER_ADDRESS_LENGTH;
LLADDR(hardwareAddress), ETHER_ADDRESS_LENGTH)) {
memcpy(header.hardware_target, header.hardware_sender, ETHER_ADDRESS_LENGTH);
ETHER_ADDRESS_LENGTH);
ETHER_ADDRESS_LENGTH);
ETHER_ADDRESS_LENGTH);
if (header.hardware_length != ETHER_ADDRESS_LENGTH
header.hardware_length = ETHER_ADDRESS_LENGTH;
memcpy(header.hardware_sender, device->address.data, ETHER_ADDRESS_LENGTH);
memset(header.hardware_target, 0, ETHER_ADDRESS_LENGTH);
source.sdl_alen = ETHER_ADDRESS_LENGTH;
memcpy(source.sdl_data, device->address.data, ETHER_ADDRESS_LENGTH);
hardwareAddress.sdl_alen = ETHER_ADDRESS_LENGTH;
ETHER_ADDRESS_LENGTH);
if (entry->hardware_address.sdl_alen == ETHER_ADDRESS_LENGTH) {
entry->hardware_address.sdl_data, ETHER_ADDRESS_LENGTH);
memset(control.ethernet_address, 0, ETHER_ADDRESS_LENGTH);
if (entry->hardware_address.sdl_alen == ETHER_ADDRESS_LENGTH) {
entry->hardware_address.sdl_data, ETHER_ADDRESS_LENGTH);
memset(control.ethernet_address, 0, ETHER_ADDRESS_LENGTH);
memcpy(header.source, LLADDR(&source), ETHER_ADDRESS_LENGTH);
memcpy(header.destination, kBroadcastAddress, ETHER_ADDRESS_LENGTH);
memcpy(header.destination, LLADDR(&destination), ETHER_ADDRESS_LENGTH);
source.sdl_alen = ETHER_ADDRESS_LENGTH;
memcpy(source.sdl_data, header.source, ETHER_ADDRESS_LENGTH);
destination.sdl_alen = ETHER_ADDRESS_LENGTH;
memcpy(destination.sdl_data, header.destination, ETHER_ADDRESS_LENGTH);
if (!memcmp(header.destination, kBroadcastAddress, ETHER_ADDRESS_LENGTH))
destination->sdl_alen = ETHER_ADDRESS_LENGTH;
LLADDR(hardwareAddress), ETHER_ADDRESS_LENGTH)) {
hardwareAddress.sdl_alen = ETHER_ADDRESS_LENGTH;
ETHER_ADDRESS_LENGTH);
ETHER_ADDRESS_LENGTH);
hardwareAddress.sdl_alen = ETHER_ADDRESS_LENGTH;
memcpy(LLADDR(&hardwareAddress), header.link_address, ETHER_ADDRESS_LENGTH);
uint8 link_address[ETHER_ADDRESS_LENGTH];
header->option_length = (sizeof(nd_opt_hdr) + ETHER_ADDRESS_LENGTH) >> 3;
memcpy(&header->link_address, device->address.data, ETHER_ADDRESS_LENGTH);
if (ioctl(device->fd, ETHER_GETADDR, device->address.data, ETHER_ADDRESS_LENGTH) < 0)
device->address.length = ETHER_ADDRESS_LENGTH;
for (int i = 0; i < ETHER_ADDRESS_LENGTH; i++)
device->address.length = ETHER_ADDRESS_LENGTH;
memcpy(fEtherAddr, fEthernetIfnet->address.data, ETHER_ADDRESS_LENGTH);
memset(header.destination, 0xff, ETHER_ADDRESS_LENGTH);
memcpy(header.source, fEtherAddr, ETHER_ADDRESS_LENGTH);
memcpy(ethheader.destination, fPeer, ETHER_ADDRESS_LENGTH);
memcpy(ethheader.source, fEtherAddr, ETHER_ADDRESS_LENGTH);
memcpy(fPeer, ethernetSource, ETHER_ADDRESS_LENGTH);
memcpy(header.destination, fPeer, ETHER_ADDRESS_LENGTH);
memcpy(header.source, fEtherAddr, ETHER_ADDRESS_LENGTH);
uint8 peerEtherAddr[ETHER_ADDRESS_LENGTH];
memcpy(peerEtherAddr, source.sdl_data, ETHER_ADDRESS_LENGTH);
memcpy(control.ethernet_address, ethernetAddress, ETHER_ADDRESS_LENGTH);