Structure that describes an Internet host
#include <ifaddrs.h>
struct ifaddrs {
struct ifaddrs * ifa_next;
char * ifa_name;
u_int ifa_flags;
struct sockaddr * ifa_addr;
struct sockaddr * ifa_netmask;
struct sockaddr * ifa_dstaddr;
void * ifa_data;
};
The ifaddrs structure contains the following entries:
- ifa_next
- A pointer to the next structure in the list.
This field is NULL in the last structure in the list.
- ifa_name
- The interface name.
- ifa_flags
- The interface flags, as set by the
ifconfig
utility.
- ifa_addr
- Either the address of the interface or the link-level address of the
interface, if one exists; otherwise it's NULL.
See the sa_family member of the sockaddr
structure pointed to by ifa_addr to determine the format of the address.
- ifa_netmask
- The netmask associated with ifa_addr, if one is set;
otherwise it's NULL.
- ifa_dstaddr
- The destination address on a P2P interface, if one exists;
otherwise it's NULL.
If the interface isn't a P2P interface, ifa_dstaddr
contains the broadcast address associated
with ifa_addr, if one exists; otherwise it's NULL
(see <ifaddr.h>).
- ifa_data
- Currently, this is set to NULL.
Unix
freeifaddrs(),
getifaddrs()