aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet6
diff options
context:
space:
mode:
authorAlexander V. Chernikov <melifaro@FreeBSD.org>2015-01-03 16:04:28 +0000
committerAlexander V. Chernikov <melifaro@FreeBSD.org>2015-01-03 16:04:28 +0000
commit20dd899505f9dead9d234724941e33048c19e4aa (patch)
tree4721d679e74403aede95146d53e1d8c3d3043cbb /sys/netinet6
parent787cea14a586ff705646d354eccf12991a576c76 (diff)
downloadsrc-20dd899505f9dead9d234724941e33048c19e4aa.tar.gz
src-20dd899505f9dead9d234724941e33048c19e4aa.zip
* Hide lltable implementation details in if_llatbl_var.h
* Make most of lltable_* methods 'normal' functions instead of inline * Add lltable_get_<af|ifp>() functions to access given lltable fields * Temporarily resurrect nd6_lookup() function
Notes
Notes: svn path=/projects/routing/; revision=276624
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/in6.c1
-rw-r--r--sys/netinet6/nd6.c10
-rw-r--r--sys/netinet6/nd6.h4
3 files changed, 14 insertions, 1 deletions
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c
index e466e159d6d0..11f6a94cd308 100644
--- a/sys/netinet6/in6.c
+++ b/sys/netinet6/in6.c
@@ -95,6 +95,7 @@ __FBSDID("$FreeBSD$");
#include <netinet/in.h>
#include <netinet/in_var.h>
#include <net/if_llatbl.h>
+#include <net/if_llatbl_var.h>
#include <netinet/if_ether.h>
#include <netinet/in_systm.h>
#include <netinet/ip.h>
diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c
index 568b1b77e6ab..d0b2468718e9 100644
--- a/sys/netinet6/nd6.c
+++ b/sys/netinet6/nd6.c
@@ -68,6 +68,7 @@ __FBSDID("$FreeBSD$");
#include <netinet/in.h>
#include <netinet/in_kdtrace.h>
#include <net/if_llatbl.h>
+#include <net/if_llatbl_var.h>
#include <netinet/if_ether.h>
#include <netinet6/in6_var.h>
#include <netinet/ip6.h>
@@ -815,6 +816,15 @@ regen_tmpaddr(struct in6_ifaddr *ia6)
return (-1);
}
+
+struct llentry *
+nd6_lookup(struct in6_addr *addr, u_int flags, struct ifnet *ifp)
+{
+
+ return (lltable_lookup_lle(LLTABLE6(ifp), flags, addr));
+}
+
+
/*
* Nuke neighbor cache/prefix/default router management table, right before
* ifp goes away.
diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h
index 6ae273e5a93b..b2c239ab7379 100644
--- a/sys/netinet6/nd6.h
+++ b/sys/netinet6/nd6.h
@@ -403,7 +403,9 @@ _check_in6_addr_typecast(const struct in6_addr *paddr)
#define lltable_create_lle6(i, f, a) \
lltable_create_lle(LLTABLE6(i), (f), _check_in6_addr_typecast(a))
-#define nd6_lookup(a, f, i) lltable_lookup_lle6((i), (f), (a))
+struct llentry *nd6_lookup(struct in6_addr *addr, u_int flags,
+ struct ifnet *ifp);
+
#define ND6_EXCLUSIVE LLE_EXCLUSIVE