2013-04-05 21:26:51 +04:00
|
|
|
#ifndef _IFADDRS_H
|
|
|
|
#define _IFADDRS_H
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include <features.h>
|
|
|
|
#include <netinet/in.h>
|
2013-04-11 06:38:46 +04:00
|
|
|
#include <sys/socket.h>
|
2013-04-05 21:26:51 +04:00
|
|
|
|
|
|
|
struct ifaddrs {
|
|
|
|
struct ifaddrs *ifa_next;
|
2020-07-14 18:16:24 +03:00
|
|
|
char *ifa_name : itype(_Nt_array_ptr<char>);
|
2013-04-05 21:26:51 +04:00
|
|
|
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
|
|
|
|
|
2016-10-21 00:04:37 +03:00
|
|
|
void freeifaddrs(struct ifaddrs *);
|
|
|
|
int getifaddrs(struct ifaddrs **);
|
2013-04-05 21:59:40 +04:00
|
|
|
|
2013-04-05 21:26:51 +04:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|