diff options
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/ndisc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c index e363bbc2420d..247ad7c298f7 100644 --- a/net/ipv6/ndisc.c +++ b/net/ipv6/ndisc.c | |||
@@ -84,6 +84,7 @@ do { \ | |||
84 | static u32 ndisc_hash(const void *pkey, | 84 | static u32 ndisc_hash(const void *pkey, |
85 | const struct net_device *dev, | 85 | const struct net_device *dev, |
86 | __u32 *hash_rnd); | 86 | __u32 *hash_rnd); |
87 | static bool ndisc_key_eq(const struct neighbour *neigh, const void *pkey); | ||
87 | static int ndisc_constructor(struct neighbour *neigh); | 88 | static int ndisc_constructor(struct neighbour *neigh); |
88 | static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb); | 89 | static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb); |
89 | static void ndisc_error_report(struct neighbour *neigh, struct sk_buff *skb); | 90 | static void ndisc_error_report(struct neighbour *neigh, struct sk_buff *skb); |
@@ -119,6 +120,7 @@ struct neigh_table nd_tbl = { | |||
119 | .key_len = sizeof(struct in6_addr), | 120 | .key_len = sizeof(struct in6_addr), |
120 | .protocol = cpu_to_be16(ETH_P_IPV6), | 121 | .protocol = cpu_to_be16(ETH_P_IPV6), |
121 | .hash = ndisc_hash, | 122 | .hash = ndisc_hash, |
123 | .key_eq = ndisc_key_eq, | ||
122 | .constructor = ndisc_constructor, | 124 | .constructor = ndisc_constructor, |
123 | .pconstructor = pndisc_constructor, | 125 | .pconstructor = pndisc_constructor, |
124 | .pdestructor = pndisc_destructor, | 126 | .pdestructor = pndisc_destructor, |
@@ -295,6 +297,11 @@ static u32 ndisc_hash(const void *pkey, | |||
295 | return ndisc_hashfn(pkey, dev, hash_rnd); | 297 | return ndisc_hashfn(pkey, dev, hash_rnd); |
296 | } | 298 | } |
297 | 299 | ||
300 | static bool ndisc_key_eq(const struct neighbour *n, const void *pkey) | ||
301 | { | ||
302 | return neigh_key_eq128(n, pkey); | ||
303 | } | ||
304 | |||
298 | static int ndisc_constructor(struct neighbour *neigh) | 305 | static int ndisc_constructor(struct neighbour *neigh) |
299 | { | 306 | { |
300 | struct in6_addr *addr = (struct in6_addr *)&neigh->primary_key; | 307 | struct in6_addr *addr = (struct in6_addr *)&neigh->primary_key; |