Annotation of embedaddon/bird/nest/bfd.h, revision 1.1.1.1
1.1 misho 1: /*
2: * BIRD -- Bidirectional Forwarding Detection (BFD)
3: *
4: * Can be freely distributed and used under the terms of the GNU GPL.
5: */
6:
7: #ifndef _BIRD_NBFD_H_
8: #define _BIRD_NBFD_H_
9:
10: #include "lib/lists.h"
11: #include "lib/resource.h"
12:
13: struct bfd_session;
14:
15: struct bfd_request {
16: resource r;
17: node n;
18:
19: ip_addr addr;
20: ip_addr local;
21: struct iface *iface;
22:
23: void (*hook)(struct bfd_request *);
24: void *data;
25:
26: struct bfd_session *session;
27:
28: u8 state;
29: u8 diag;
30: u8 old_state;
31: u8 down;
32: };
33:
34:
35: #define BFD_STATE_ADMIN_DOWN 0
36: #define BFD_STATE_DOWN 1
37: #define BFD_STATE_INIT 2
38: #define BFD_STATE_UP 3
39:
40:
41: #ifdef CONFIG_BFD
42:
43: struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, void (*hook)(struct bfd_request *), void *data);
44:
45: static inline void cf_check_bfd(int use UNUSED) { }
46:
47: #else
48:
49: static inline struct bfd_request * bfd_request_session(pool *p, ip_addr addr, ip_addr local, struct iface *iface, void (*hook)(struct bfd_request *), void *data) { return NULL; }
50:
51: static inline void cf_check_bfd(int use) { if (use) cf_error("BFD not available"); }
52:
53: #endif /* CONFIG_BFD */
54:
55:
56:
57: #endif /* _BIRD_NBFD_H_ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>