summary refs log tree commit diff
path: root/include/ifaddrs.h
blob: 54f4b7a3cec9b21020309626d9718a356cc96e5c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef _IFADDRS_H
#include <inet/ifaddrs.h>

# ifndef _ISOMAC

#include <stdbool.h>
#include <stdint.h>

libc_hidden_proto (getifaddrs)
libc_hidden_proto (freeifaddrs)

struct in6addrinfo
{
  enum {
    in6ai_deprecated = 1,
    in6ai_homeaddress = 2
  } flags:8;
  uint8_t prefixlen;
  uint16_t :16;
  uint32_t index;
  uint32_t addr[4];
};

extern void __check_pf (bool *seen_ipv4, bool *seen_ipv6,
			struct in6addrinfo **in6ai, size_t *in6ailen)
  attribute_hidden;
extern void __free_in6ai (struct in6addrinfo *in6ai) attribute_hidden;
extern void __check_native (uint32_t a1_index, int *a1_native,
			    uint32_t a2_index, int *a2_native)
  attribute_hidden;

#if IS_IN (nscd)
extern uint32_t __bump_nl_timestamp (void) attribute_hidden;
#endif

# endif /* !_ISOMAC */
#endif	/* ifaddrs.h */