1/*
2 * Copyright 2015, Haiku, Inc. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef _IFADDRS_H
6#define _IFADDRS_H
7
8#include <features.h>
9
10#ifdef _DEFAULT_SOURCE
11
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17
18struct ifaddrs {
19	struct ifaddrs  *ifa_next;    /* Next item in list */
20	const char      *ifa_name;    /* Name of interface */
21	unsigned int     ifa_flags;   /* Flags from SIOCGIFFLAGS */
22	struct sockaddr *ifa_addr;    /* Address of interface */
23	struct sockaddr *ifa_netmask; /* Netmask of interface */
24	struct sockaddr *ifa_dstaddr;
25	#define         ifa_broadaddr ifa_dstaddr
26	void            *ifa_data;    /* Address-specific data */
27};
28
29
30int getifaddrs(struct ifaddrs **ifap);
31void freeifaddrs(struct ifaddrs *ifa);
32
33
34#ifdef __cplusplus
35}
36#endif
37
38
39#endif
40
41
42#endif
43