diff options
author | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2015-01-03 16:04:28 +0000 |
---|---|---|
committer | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2015-01-03 16:04:28 +0000 |
commit | 20dd899505f9dead9d234724941e33048c19e4aa (patch) | |
tree | 4721d679e74403aede95146d53e1d8c3d3043cbb /sys/netinet6 | |
parent | 787cea14a586ff705646d354eccf12991a576c76 (diff) | |
download | src-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.c | 1 | ||||
-rw-r--r-- | sys/netinet6/nd6.c | 10 | ||||
-rw-r--r-- | sys/netinet6/nd6.h | 4 |
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 |