Lines Matching refs:in_dev
226 struct in_device *in_dev; in arp_constructor() local
230 in_dev = __in_dev_get_rcu(dev); in arp_constructor()
231 if (!in_dev) { in arp_constructor()
238 parms = in_dev->arp_parms; in arp_constructor()
301 struct in_device *in_dev; in arp_solicit() local
304 in_dev = __in_dev_get_rcu(dev); in arp_solicit()
305 if (!in_dev) { in arp_solicit()
309 switch (IN_DEV_ARP_ANNOUNCE(in_dev)) { in arp_solicit()
322 if (inet_addr_onlink(in_dev, target, saddr)) in arp_solicit()
353 static int arp_ignore(struct in_device *in_dev, __be32 sip, __be32 tip) in arp_ignore() argument
355 struct net *net = dev_net(in_dev->dev); in arp_ignore()
358 switch (IN_DEV_ARP_IGNORE(in_dev)) { in arp_ignore()
374 in_dev = NULL; in arp_ignore()
386 return !inet_confirm_addr(net, in_dev, sip, tip, scope); in arp_ignore()
410 static inline int arp_fwd_proxy(struct in_device *in_dev, in arp_fwd_proxy() argument
419 if (!IN_DEV_PROXY_ARP(in_dev)) in arp_fwd_proxy()
421 imi = IN_DEV_MEDIUM_ID(in_dev); in arp_fwd_proxy()
455 static inline int arp_fwd_pvlan(struct in_device *in_dev, in arp_fwd_pvlan() argument
467 if (IN_DEV_PROXY_ARP_PVLAN(in_dev)) in arp_fwd_pvlan()
632 struct in_device *in_dev = __in_dev_get_rcu(dev); in arp_process() local
648 if (!in_dev) in arp_process()
716 (!IN_DEV_ROUTE_LOCALNET(in_dev) && ipv4_is_loopback(tip))) in arp_process()
746 !arp_ignore(in_dev, sip, tip)) in arp_process()
761 dont_send = arp_ignore(in_dev, sip, tip); in arp_process()
762 if (!dont_send && IN_DEV_ARPFILTER(in_dev)) in arp_process()
774 } else if (IN_DEV_FORWARD(in_dev)) { in arp_process()
776 (arp_fwd_proxy(in_dev, dev, rt) || in arp_process()
777 arp_fwd_pvlan(in_dev, dev, rt, sip, tip) || in arp_process()
786 NEIGH_VAR(in_dev->arp_parms, PROXY_DELAY) == 0) { in arp_process()
792 in_dev->arp_parms, skb); in arp_process()
804 if (IN_DEV_ARP_ACCEPT(in_dev)) { in arp_process()