ifaddrs.h revision e86eee143ed21592f88a46623a81f71002430459
1e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt/**************************************************************************** 2e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt **************************************************************************** 3e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt *** 4e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt *** This header was generated from a glibc header of the same name. 5e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt *** It contains only constants, structures, and macros generated from 6e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt *** the original header, and thus, contains no copyrightable information. 7e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt *** 8e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt **************************************************************************** 9e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt ****************************************************************************/ 10e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#ifndef _IFADDRS_H 11e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#define _IFADDRS_H 12e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt 13e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#include <sys/socket.h> 14e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt 15e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidtstruct ifaddrs { 16e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt struct ifaddrs *ifa_next; 17e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt char *ifa_name; 18e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt unsigned int ifa_flags; 19e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt struct sockaddr *ifa_addr; 20e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt struct sockaddr *ifa_netmask; 21e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt union { 22e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt struct sockaddr *ifu_broadaddr; 23e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt struct sockaddr *ifu_dstaddr; 24e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt } ifa_ifu; 25e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#define ifa_broadaddr ifa_ifu.ifu_broadaddr 26e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#define ifa_dstaddr ifa_ifu.ifu_dstaddr 27e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt void *ifa_data; 28e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt}; 29e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt 30e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidtextern int getifaddrs(struct ifaddrs **ifap); 31e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt 32e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidtextern void freeifaddrs(struct ifaddrs *ifa); 33e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt 34e86eee143ed21592f88a46623a81f71002430459Dmitry Shmidt#endif 35