blob: 454c05013c86c10d99d92f926b32134ea08282b6 (
plain)
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
38
39
40
41
42
|
/*
* BIRD Internet Routing Daemon -- Network Interfaces
*
* (c) 1998 Martin Mares <mj@ucw.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#ifndef _BIRD_IFACE_H_
#define _BIRD_IFACE_H_
#include "lib/lists.h"
struct iface {
node n;
char *name;
unsigned flags;
unsigned mtu;
struct ifa *ifa; /* First address is primary */
unsigned index; /* OS-dependent interface index */
};
#define IF_UP 1
#define IF_MULTIACCESS 2
#define IF_UNNUMBERED 4
#define IF_BROADCAST 8
#define IF_MULTICAST 16
#define IF_TUNNEL 32
/* Interface address */
struct ifa {
struct ifa *next;
ip_addr ip; /* IP address of this host */
ip_addr prefix; /* Network prefix */
unsigned pxlen; /* Prefix length */
ip_addr brd; /* Broadcast address */
ip_addr opposite; /* Opposite end of a point-to-point link */
struct neighbor *neigh; /* List of neighbors on this interface */
};
#endif
|