]>
Commit | Line | Data |
---|---|---|
acddc0ed | 1 | // SPDX-License-Identifier: GPL-2.0-or-later |
48454375 | 2 | /* |
3 | * Copyright (C) 2003 Yasuhiro Ohara | |
48454375 | 4 | */ |
5 | ||
6 | #ifndef OSPF6_FLOOD_H | |
7 | #define OSPF6_FLOOD_H | |
8 | ||
1e05838a | 9 | /* Debug option */ |
10 | extern unsigned char conf_debug_ospf6_flooding; | |
d62a17ae | 11 | #define OSPF6_DEBUG_FLOODING_ON() (conf_debug_ospf6_flooding = 1) |
12 | #define OSPF6_DEBUG_FLOODING_OFF() (conf_debug_ospf6_flooding = 0) | |
13 | #define IS_OSPF6_DEBUG_FLOODING (conf_debug_ospf6_flooding) | |
1e05838a | 14 | |
48454375 | 15 | /* Function Prototypes */ |
d62a17ae | 16 | extern struct ospf6_lsdb *ospf6_get_scoped_lsdb(struct ospf6_lsa *lsa); |
17 | extern struct ospf6_lsdb *ospf6_get_scoped_lsdb_self(struct ospf6_lsa *lsa); | |
48454375 | 18 | |
6452df09 | 19 | /* origination & purging */ |
71165098 | 20 | extern void ospf6_lsa_originate(struct ospf6 *ospf6, struct ospf6_lsa *lsa); |
d62a17ae | 21 | extern void ospf6_lsa_originate_process(struct ospf6_lsa *lsa, |
22 | struct ospf6 *process); | |
23 | extern void ospf6_lsa_originate_area(struct ospf6_lsa *lsa, | |
24 | struct ospf6_area *oa); | |
25 | extern void ospf6_lsa_originate_interface(struct ospf6_lsa *lsa, | |
26 | struct ospf6_interface *oi); | |
4dc43886 | 27 | void ospf6_external_lsa_purge(struct ospf6 *ospf6, struct ospf6_lsa *lsa); |
d62a17ae | 28 | extern void ospf6_lsa_purge(struct ospf6_lsa *lsa); |
690df177 CS |
29 | |
30 | extern void ospf6_lsa_purge_multi_ls_id(struct ospf6_area *oa, | |
31 | struct ospf6_lsa *lsa); | |
6452df09 | 32 | |
33 | /* access method to retrans_count */ | |
d62a17ae | 34 | extern void ospf6_increment_retrans_count(struct ospf6_lsa *lsa); |
35 | extern void ospf6_decrement_retrans_count(struct ospf6_lsa *lsa); | |
6452df09 | 36 | |
37 | /* flooding & clear flooding */ | |
d62a17ae | 38 | extern void ospf6_flood_clear(struct ospf6_lsa *lsa); |
39 | extern void ospf6_flood(struct ospf6_neighbor *from, struct ospf6_lsa *lsa); | |
40 | extern void ospf6_flood_area(struct ospf6_neighbor *from, struct ospf6_lsa *lsa, | |
41 | struct ospf6_area *oa); | |
6452df09 | 42 | |
43 | /* receive & install */ | |
d62a17ae | 44 | extern void ospf6_receive_lsa(struct ospf6_neighbor *from, |
45 | struct ospf6_lsa_header *header); | |
46 | extern void ospf6_install_lsa(struct ospf6_lsa *lsa); | |
48454375 | 47 | |
d62a17ae | 48 | extern int config_write_ospf6_debug_flood(struct vty *vty); |
49 | extern void install_element_ospf6_debug_flood(void); | |
76249532 CS |
50 | extern void ospf6_flood_interface(struct ospf6_neighbor *from, |
51 | struct ospf6_lsa *lsa, | |
52 | struct ospf6_interface *oi); | |
53 | extern int ospf6_lsupdate_send_neighbor_now(struct ospf6_neighbor *on, | |
54 | struct ospf6_lsa *lsa); | |
1e05838a | 55 | |
ad500b22 K |
56 | extern void ospf6_flood_clear_area(struct ospf6_lsa *lsa, |
57 | struct ospf6_area *oa); | |
48454375 | 58 | #endif /* OSPF6_FLOOD_H */ |