diff --git a/Kernel/API/POSIX/net/if_arp.h b/Kernel/API/POSIX/net/if_arp.h index ff5d08af73..5ac1555b17 100644 --- a/Kernel/API/POSIX/net/if_arp.h +++ b/Kernel/API/POSIX/net/if_arp.h @@ -21,6 +21,14 @@ struct arpreq { char arp_dev[16]; }; +#define ARPHRD_ETHER 1 +#define ARPHRD_IEEE802 6 +#define ARPHRD_SLIP 256 +#define ARPHRD_PPP 512 +#define ARPHRD_LOOPBACK 772 +#define ARPHRD_FDDI 774 +#define ARPHRD_IEEE802_TR 800 + #ifdef __cplusplus } #endif diff --git a/Kernel/Net/IPv4Socket.cpp b/Kernel/Net/IPv4Socket.cpp index b0b03dc037..d51f4d3258 100644 --- a/Kernel/Net/IPv4Socket.cpp +++ b/Kernel/Net/IPv4Socket.cpp @@ -712,7 +712,7 @@ ErrorOr IPv4Socket::ioctl(OpenFileDescription&, unsigned request, Userspac case SIOCGIFHWADDR: { auto mac_address = adapter->mac_address(); - ifr.ifr_hwaddr.sa_family = AF_INET; + ifr.ifr_hwaddr.sa_family = ARPHRD_ETHER; // FIXME: Query the underlying network interface for it's type mac_address.copy_to(Bytes { ifr.ifr_hwaddr.sa_data, sizeof(ifr.ifr_hwaddr.sa_data) }); return copy_to_user(user_ifr, &ifr); }