| #ifndef SYSROOT_IFADDRS_H_ |
| #define SYSROOT_IFADDRS_H_ |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #include <features.h> |
| #include <netinet/in.h> |
| #include <sys/socket.h> |
| |
| struct ifaddrs { |
| struct ifaddrs* ifa_next; |
| char* ifa_name; |
| unsigned ifa_flags; |
| struct sockaddr* ifa_addr; |
| struct sockaddr* ifa_netmask; |
| union { |
| struct sockaddr* ifu_broadaddr; |
| struct sockaddr* ifu_dstaddr; |
| } ifa_ifu; |
| void* ifa_data; |
| }; |
| #define ifa_broadaddr ifa_ifu.ifu_broadaddr |
| #define ifa_dstaddr ifa_ifu.ifu_dstaddr |
| |
| void freeifaddrs(struct ifaddrs* ifp); |
| int getifaddrs(struct ifaddrs** ifap); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif // SYSROOT_IFADDRS_H_ |