]> git.proxmox.com Git - mirror_frr.git/blame - eigrpd/eigrp_neighbor.h
*: Rename `struct thread` to `struct event`
[mirror_frr.git] / eigrpd / eigrp_neighbor.h
CommitLineData
acddc0ed 1// SPDX-License-Identifier: GPL-2.0-or-later
7f57883e
DS
2/*
3 * EIGRP Neighbor Handling.
4 * Copyright (C) 2013-2016
5 * Authors:
6 * Donnie Savage
7 * Jan Janovic
8 * Matej Perina
9 * Peter Orsag
10 * Peter Paluch
11 * Frantisek Gazo
12 * Tomas Hvorkovy
13 * Martin Kontsek
14 * Lukas Koribsky
7f57883e
DS
15 */
16
17#ifndef _ZEBRA_EIGRP_NEIGHBOR_H
18#define _ZEBRA_EIGRP_NEIGHBOR_H
19
20/* Prototypes */
2ea6b572
DS
21extern struct eigrp_neighbor *eigrp_nbr_get(struct eigrp_interface *ei,
22 struct eigrp_header *,
23 struct ip *addr);
24extern struct eigrp_neighbor *eigrp_nbr_new(struct eigrp_interface *ei);
25extern void eigrp_nbr_delete(struct eigrp_neighbor *neigh);
7f57883e 26
e6685141 27extern void holddown_timer_expired(struct event *thread);
7f57883e 28
2ea6b572
DS
29extern int eigrp_neighborship_check(struct eigrp_neighbor *neigh,
30 struct TLV_Parameter_Type *tlv);
31extern void eigrp_nbr_state_update(struct eigrp_neighbor *neigh);
32extern void eigrp_nbr_state_set(struct eigrp_neighbor *neigh, uint8_t state);
33extern uint8_t eigrp_nbr_state_get(struct eigrp_neighbor *neigh);
34extern int eigrp_nbr_count_get(struct eigrp *eigrp);
35extern const char *eigrp_nbr_state_str(struct eigrp_neighbor *neigh);
36extern struct eigrp_neighbor *
37eigrp_nbr_lookup_by_addr(struct eigrp_interface *ei, struct in_addr *addr);
38extern struct eigrp_neighbor *
39eigrp_nbr_lookup_by_addr_process(struct eigrp *eigrp, struct in_addr addr);
7f57883e
DS
40extern void eigrp_nbr_hard_restart(struct eigrp_neighbor *nbr, struct vty *vty);
41
dc4accdd 42extern int eigrp_nbr_split_horizon_check(struct eigrp_route_descriptor *ne,
cd044247 43 struct eigrp_interface *ei);
7f57883e 44#endif /* _ZEBRA_EIGRP_NEIGHBOR_H */