ifaddrs.h raw

   1  #ifndef _IFADDRS_H
   2  #define _IFADDRS_H
   3  
   4  #ifdef __cplusplus
   5  extern "C" {
   6  #endif
   7  
   8  #include <features.h>
   9  #include <netinet/in.h>
  10  #include <sys/socket.h>
  11  
  12  struct ifaddrs {
  13  	struct ifaddrs *ifa_next;
  14  	char *ifa_name;
  15  	unsigned ifa_flags;
  16  	struct sockaddr *ifa_addr;
  17  	struct sockaddr *ifa_netmask;
  18  	union {
  19  		struct sockaddr *ifu_broadaddr;
  20  		struct sockaddr *ifu_dstaddr;
  21  	} ifa_ifu;
  22  	void *ifa_data;
  23  };
  24  #define ifa_broadaddr ifa_ifu.ifu_broadaddr
  25  #define ifa_dstaddr ifa_ifu.ifu_dstaddr
  26  
  27  void freeifaddrs(struct ifaddrs *);
  28  int getifaddrs(struct ifaddrs **);
  29  
  30  #ifdef __cplusplus
  31  }
  32  #endif
  33  
  34  #endif
  35  
  36