mac_addr_t
const mac_addr_t &targetAddress, const void *data, size_t size);
status_t GetMACForIP(ip_addr_t ip, mac_addr_t &mac);
mac_addr_t mac;
status_t _SendARPPacket(ip_addr_t ip, const mac_addr_t &mac, uint16 opcode);
void _PutEntry(ip_addr_t ip, const mac_addr_t &mac);
virtual mac_addr_t MACAddress() const = 0;
const mac_addr_t &targetAddress, const void *data, size_t size) = 0;
mac_addr_t MACAddress() const;
status_t Send(const mac_addr_t &destination, uint16 protocol,
const mac_addr_t &targetAddress, const void *data, size_t size);
mac_addr_t sender_mac; /* Sender hardware address. */
mac_addr_t target_mac; /* Target hardware address. */
mac_addr_t() {}
mac_addr_t(uint8 *address)
mac_addr_t(const mac_addr_t& other)
mac_addr_t& operator=(const mac_addr_t& other)
bool operator==(const mac_addr_t& other) const
bool operator!=(const mac_addr_t& other) const
extern const mac_addr_t kBroadcastMACAddress;
extern const mac_addr_t kNoMACAddress;
mac_addr_t destination; /* destination eth addr */
mac_addr_t source; /* source ether addr */
ARPService::GetMACForIP(ip_addr_t ip, mac_addr_t &mac)
ARPService::_SendARPPacket(ip_addr_t ip, const mac_addr_t &mac, uint16 opcode)
header.hardware_length = sizeof(mac_addr_t);
ARPService::_PutEntry(ip_addr_t ip, const mac_addr_t &mac)
const mac_addr_t &targetAddress, const void *data, size_t size)
|| header->hardware_length != sizeof(mac_addr_t)
mac_addr_t
EthernetService::Send(const mac_addr_t &destination, uint16 protocol,
mac_addr_t targetMAC;
const mac_addr_t &targetAddress, const void *data, size_t size)
const mac_addr_t kBroadcastMACAddress(
const mac_addr_t kNoMACAddress((uint8[6]){0, 0, 0, 0, 0, 0});
mac_addr_t
virtual mac_addr_t MACAddress() const;
mac_addr_t fMACAddress;
mac_addr_t
virtual mac_addr_t MACAddress() const;
mac_addr_t fMACAddress;
fMACAddress = mac_addr_t((uint8*)(buf + 28));
mac_addr_t
mac_addr_t MACAddress() const { return fMACAddress; }
mac_addr_t fMACAddress;
virtual mac_addr_t MACAddress() const;