summaryrefslogtreecommitdiffstats
path: root/nhrpd/nhrpd.h
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@diac24.net>2021-03-27 22:30:51 +0100
committerDavid Lamparter <equinox@opensourcerouting.org>2021-10-19 14:55:39 +0200
commit2ab2a7610131d0d12a4361f851c3e742b058ddd4 (patch)
tree00e480b6144a49b71f721489a194dff200cab73a /nhrpd/nhrpd.h
parentnhrpd: convert notifier list to DLIST (diff)
downloadfrr-2ab2a7610131d0d12a4361f851c3e742b058ddd4.tar.xz
frr-2ab2a7610131d0d12a4361f851c3e742b058ddd4.zip
nhrpd: convert nhs list to DLIST
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'nhrpd/nhrpd.h')
-rw-r--r--nhrpd/nhrpd.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/nhrpd/nhrpd.h b/nhrpd/nhrpd.h
index e88a4576f..7e4a86cd5 100644
--- a/nhrpd/nhrpd.h
+++ b/nhrpd/nhrpd.h
@@ -268,9 +268,11 @@ struct nhrp_shortcut {
struct notifier_block cache_notifier;
};
+PREDECL_DLIST(nhrp_nhslist);
+
struct nhrp_nhs {
struct interface *ifp;
- struct list_head nhslist_entry;
+ struct nhrp_nhslist_item nhslist_entry;
unsigned hub : 1;
afi_t afi;
@@ -282,6 +284,8 @@ struct nhrp_nhs {
struct list_head reglist_head;
};
+DECLARE_DLIST(nhrp_nhslist, struct nhrp_nhs, nhslist_entry);
+
struct nhrp_multicast {
struct interface *ifp;
struct list_head list_entry;
@@ -335,7 +339,7 @@ struct nhrp_interface {
short configured_mtu;
unsigned short mtu;
unsigned int holdtime;
- struct list_head nhslist_head;
+ struct nhrp_nhslist_head nhslist_head;
struct list_head mcastlist_head;
} afi[AFI_MAX];
};
@@ -386,7 +390,7 @@ int nhrp_nhs_add(struct interface *ifp, afi_t afi, union sockunion *proto_addr,
const char *nbma_fqdn);
int nhrp_nhs_del(struct interface *ifp, afi_t afi, union sockunion *proto_addr,
const char *nbma_fqdn);
-int nhrp_nhs_free(struct nhrp_nhs *nhs);
+int nhrp_nhs_free(struct nhrp_interface *nifp, afi_t afi, struct nhrp_nhs *nhs);
void nhrp_nhs_terminate(void);
void nhrp_nhs_foreach(struct interface *ifp, afi_t afi,
void (*cb)(struct nhrp_nhs *, struct nhrp_registration *,