Lines Matching refs:dev
127 struct ndisc_options *ndisc_parse_options(const struct net_device *dev,
189 int (*parse_options)(const struct net_device *dev,
192 void (*update)(const struct net_device *dev, struct neighbour *n,
195 int (*opt_addr_space)(const struct net_device *dev, u8 icmp6_type,
198 void (*fill_addr_option)(const struct net_device *dev,
201 void (*prefix_rcv_add_addr)(struct net *net, struct net_device *dev,
212 static inline int ndisc_ops_parse_options(const struct net_device *dev, in ndisc_ops_parse_options() argument
216 if (dev->ndisc_ops && dev->ndisc_ops->parse_options) in ndisc_ops_parse_options()
217 return dev->ndisc_ops->parse_options(dev, nd_opt, ndopts); in ndisc_ops_parse_options()
222 static inline void ndisc_ops_update(const struct net_device *dev, in ndisc_ops_update() argument
227 if (dev->ndisc_ops && dev->ndisc_ops->update) in ndisc_ops_update()
228 dev->ndisc_ops->update(dev, n, flags, icmp6_type, ndopts); in ndisc_ops_update()
231 static inline int ndisc_ops_opt_addr_space(const struct net_device *dev, in ndisc_ops_opt_addr_space() argument
234 if (dev->ndisc_ops && dev->ndisc_ops->opt_addr_space && in ndisc_ops_opt_addr_space()
236 return dev->ndisc_ops->opt_addr_space(dev, icmp6_type, NULL, in ndisc_ops_opt_addr_space()
242 static inline int ndisc_ops_redirect_opt_addr_space(const struct net_device *dev, in ndisc_ops_redirect_opt_addr_space() argument
246 if (dev->ndisc_ops && dev->ndisc_ops->opt_addr_space) in ndisc_ops_redirect_opt_addr_space()
247 return dev->ndisc_ops->opt_addr_space(dev, NDISC_REDIRECT, in ndisc_ops_redirect_opt_addr_space()
253 static inline void ndisc_ops_fill_addr_option(const struct net_device *dev, in ndisc_ops_fill_addr_option() argument
257 if (dev->ndisc_ops && dev->ndisc_ops->fill_addr_option && in ndisc_ops_fill_addr_option()
259 dev->ndisc_ops->fill_addr_option(dev, skb, icmp6_type, NULL); in ndisc_ops_fill_addr_option()
262 static inline void ndisc_ops_fill_redirect_addr_option(const struct net_device *dev, in ndisc_ops_fill_redirect_addr_option() argument
266 if (dev->ndisc_ops && dev->ndisc_ops->fill_addr_option) in ndisc_ops_fill_redirect_addr_option()
267 dev->ndisc_ops->fill_addr_option(dev, skb, NDISC_REDIRECT, ha); in ndisc_ops_fill_redirect_addr_option()
271 struct net_device *dev, in ndisc_ops_prefix_rcv_add_addr() argument
281 if (dev->ndisc_ops && dev->ndisc_ops->prefix_rcv_add_addr) in ndisc_ops_prefix_rcv_add_addr()
282 dev->ndisc_ops->prefix_rcv_add_addr(net, dev, pinfo, in6_dev, in ndisc_ops_prefix_rcv_add_addr()
311 static inline int ndisc_opt_addr_space(struct net_device *dev, u8 icmp6_type) in ndisc_opt_addr_space() argument
313 return __ndisc_opt_addr_space(dev->addr_len, in ndisc_opt_addr_space()
314 ndisc_addr_option_pad(dev->type)) + in ndisc_opt_addr_space()
315 ndisc_ops_opt_addr_space(dev, icmp6_type); in ndisc_opt_addr_space()
318 static inline int ndisc_redirect_opt_addr_space(struct net_device *dev, in ndisc_redirect_opt_addr_space() argument
323 return __ndisc_opt_addr_space(dev->addr_len, in ndisc_redirect_opt_addr_space()
324 ndisc_addr_option_pad(dev->type)) + in ndisc_redirect_opt_addr_space()
325 ndisc_ops_redirect_opt_addr_space(dev, neigh, ops_data_buf, in ndisc_redirect_opt_addr_space()
341 struct net_device *dev) in ndisc_opt_addr_data() argument
343 return __ndisc_opt_addr_data(p, dev->addr_len, in ndisc_opt_addr_data()
344 ndisc_addr_option_pad(dev->type)); in ndisc_opt_addr_data()
347 static inline u32 ndisc_hashfn(const void *pkey, const struct net_device *dev, __u32 *hash_rnd) in ndisc_hashfn() argument
351 return (((p32[0] ^ hash32_ptr(dev)) * hash_rnd[0]) + in ndisc_hashfn()
357 static inline struct neighbour *__ipv6_neigh_lookup_noref(struct net_device *dev, const void *pkey) in __ipv6_neigh_lookup_noref() argument
359 return ___neigh_lookup_noref(&nd_tbl, neigh_key_eq128, ndisc_hashfn, pkey, dev); in __ipv6_neigh_lookup_noref()
363 struct neighbour *__ipv6_neigh_lookup_noref_stub(struct net_device *dev, in __ipv6_neigh_lookup_noref_stub() argument
367 ndisc_hashfn, pkey, dev); in __ipv6_neigh_lookup_noref_stub()
370 static inline struct neighbour *__ipv6_neigh_lookup(struct net_device *dev, const void *pkey) in __ipv6_neigh_lookup() argument
375 n = __ipv6_neigh_lookup_noref(dev, pkey); in __ipv6_neigh_lookup()
383 static inline void __ipv6_confirm_neigh(struct net_device *dev, in __ipv6_confirm_neigh() argument
389 n = __ipv6_neigh_lookup_noref(dev, pkey); in __ipv6_confirm_neigh()
394 static inline void __ipv6_confirm_neigh_stub(struct net_device *dev, in __ipv6_confirm_neigh_stub() argument
400 n = __ipv6_neigh_lookup_noref_stub(dev, pkey); in __ipv6_confirm_neigh_stub()
406 static inline struct neighbour *ip_neigh_gw6(struct net_device *dev, in ip_neigh_gw6() argument
411 neigh = __ipv6_neigh_lookup_noref_stub(dev, addr); in ip_neigh_gw6()
413 neigh = __neigh_create(ipv6_stub->nd_tbl, addr, dev, false); in ip_neigh_gw6()
426 struct sk_buff *ndisc_ns_create(struct net_device *dev, const struct in6_addr *solicit,
428 void ndisc_send_ns(struct net_device *dev, const struct in6_addr *solicit,
435 void ndisc_send_rs(struct net_device *dev,
437 void ndisc_send_na(struct net_device *dev, const struct in6_addr *daddr,
443 int ndisc_mc_map(const struct in6_addr *addr, char *buf, struct net_device *dev,
446 void ndisc_update(const struct net_device *dev, struct neighbour *neigh,