]>
git.proxmox.com Git - mirror_frr.git/blob - eigrpd/eigrp_neighbor.h
1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * EIGRP Neighbor Handling.
4 * Copyright (C) 2013-2016
17 #ifndef _ZEBRA_EIGRP_NEIGHBOR_H
18 #define _ZEBRA_EIGRP_NEIGHBOR_H
21 extern struct eigrp_neighbor
*eigrp_nbr_get(struct eigrp_interface
*ei
,
22 struct eigrp_header
*,
24 extern struct eigrp_neighbor
*eigrp_nbr_new(struct eigrp_interface
*ei
);
25 extern void eigrp_nbr_delete(struct eigrp_neighbor
*neigh
);
27 extern void holddown_timer_expired(struct event
*thread
);
29 extern int eigrp_neighborship_check(struct eigrp_neighbor
*neigh
,
30 struct TLV_Parameter_Type
*tlv
);
31 extern void eigrp_nbr_state_update(struct eigrp_neighbor
*neigh
);
32 extern void eigrp_nbr_state_set(struct eigrp_neighbor
*neigh
, uint8_t state
);
33 extern uint8_t eigrp_nbr_state_get(struct eigrp_neighbor
*neigh
);
34 extern int eigrp_nbr_count_get(struct eigrp
*eigrp
);
35 extern const char *eigrp_nbr_state_str(struct eigrp_neighbor
*neigh
);
36 extern struct eigrp_neighbor
*
37 eigrp_nbr_lookup_by_addr(struct eigrp_interface
*ei
, struct in_addr
*addr
);
38 extern struct eigrp_neighbor
*
39 eigrp_nbr_lookup_by_addr_process(struct eigrp
*eigrp
, struct in_addr addr
);
40 extern void eigrp_nbr_hard_restart(struct eigrp_neighbor
*nbr
, struct vty
*vty
);
42 extern int eigrp_nbr_split_horizon_check(struct eigrp_route_descriptor
*ne
,
43 struct eigrp_interface
*ei
);
44 #endif /* _ZEBRA_EIGRP_NEIGHBOR_H */