diff --git a/include/neuron/connection/neu_connection_eth.h b/include/neuron/connection/neu_connection_eth.h index 416e423f..b171c959 100644 --- a/include/neuron/connection/neu_connection_eth.h +++ b/include/neuron/connection/neu_connection_eth.h @@ -31,6 +31,7 @@ typedef struct neu_conn_eth neu_conn_eth_t; neu_conn_eth_t *neu_conn_eth_init(const char *interface, void *ctx); int neu_conn_eth_uninit(neu_conn_eth_t *conn); int neu_conn_eth_check_interface(const char *interface); +void neu_conn_eth_get_mac(neu_conn_eth_t *conn, uint8_t *mac); typedef void (*neu_conn_eth_msg_callback)(neu_conn_eth_t *conn, void *ctx, uint16_t protocol, uint16_t n_byte, diff --git a/src/connection/connection_eth.c b/src/connection/connection_eth.c index abd17e54..8cc91917 100644 --- a/src/connection/connection_eth.c +++ b/src/connection/connection_eth.c @@ -193,6 +193,11 @@ int neu_conn_eth_uninit(neu_conn_eth_t *conn) return 0; } +void neu_conn_eth_get_mac(neu_conn_eth_t *conn, uint8_t *mac) +{ + memcpy(mac, conn->ic->mac, ETH_ALEN); +} + int neu_conn_eth_check_interface(const char *interface) { struct ifreq ifr = { 0 };