mirror of
https://github.com/Wind4/vlmcsd.git
synced 2024-11-28 21:11:03 +08:00
44 lines
748 B
C
44 lines
748 B
C
|
#ifndef _IFADDRS_H
|
||
|
#define _IFADDRS_H
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#if !__linux__
|
||
|
#error ifaddrs-musl.h only works with a Linux kernel
|
||
|
#endif
|
||
|
|
||
|
#if __ANDROID__
|
||
|
#error ifaddrs-musl.h does not work with Android
|
||
|
#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
|
||
|
|