Ethernet

Interface to get the MAC address of the first ethernet adapter.

File information

Filecommon/interface/ethernet.h

Classes IEthernet

Data types MAC_ADDRESS_SIZE
IP_ADDRESS_SIZE

Examples IEthernet::GetMACAddress

Logging

To enable logging for IEthernet, the flag LOG_ETHERNET must be set in the managers diagnostic settings.

Classes

IEthernet

class IEthernet {
public:
    static bool GetMACAddress(byte * mac, class IInstanceLog * const log);
    static bool GetIpAddress(char * buffer, size_t bufferLen, bool ipv6, class IInstanceLog * const log);
};

Public functions

GetMACAddress (static function)
The function writes the MAC address of the first ethernet adapter into the byte array of size MAC_ADDRESS_SIZE.

Parameters

byte * mac A byte pointer to store the MAC address bytes. It needs to be of size MAC_ADDRESS_SIZE (6 bytes)
IInstanceLog * log An IInstanceLog pointer to the logging interface.

Code Example

byte mac[MAC_ADDRESS_SIZE];
IEthernet::GetMACAddress(mac, log);
                
GetMACAddress (static function)
The function writes the IP address of the first ethernet adapter into the char array of size IP_ADDRESS_SIZE.

Parameters

char * buffer A byte pointer to store the IP address. It needs to be of size IP_ADDRESS_SIZE (46 bytes)
size_t bufferLen The length of the char pointer.
bool ipv6If true, the IPv6 address is fetched.
IInstanceLog * log An IInstanceLog pointer to the logging interface.

Data types

MAC_ADDRESS_SIZE

#define MAC_ADDRESS_SIZE    6

Overview

The #define MAC_ADDRESS_SIZE is used to define the size of the byte * mac array.

IP_ADDRESS_SIZE

#define IP_ADDRESS_SIZE    46

Overview

The #define IP_ADDRESS_SIZE is used to define the maximum length of the char array for an IP address.