Home
last modified time | relevance | path

Searched refs:ifa (Results 1 – 25 of 55) sorted by relevance

123

/linux/net/ipv4/
H A Ddevinet.c121 static void inet_hash_insert(struct net *net, struct in_ifaddr *ifa) in inet_hash_insert() argument
123 u32 hash = inet_addr_hash(net, ifa->ifa_local); in inet_hash_insert()
126 hlist_add_head_rcu(&ifa->addr_lst, &net->ipv4.inet_addr_lst[hash]); in inet_hash_insert()
129 static void inet_hash_remove(struct in_ifaddr *ifa) in inet_hash_remove() argument
132 hlist_del_init_rcu(&ifa->addr_lst); in inet_hash_remove()
146 struct in_ifaddr *ifa; in __ip_dev_find() local
149 ifa = inet_lookup_ifaddr_rcu(net, addr); in __ip_dev_find()
150 if (!ifa) { in __ip_dev_find()
164 result = ifa->ifa_dev->dev; in __ip_dev_find()
177 struct in_ifaddr *ifa; in inet_lookup_ifaddr_rcu() local
[all …]
H A Dfib_frontend.c554 const struct in_ifaddr *ifa; in rtentry_to_fib_config() local
563 in_dev_for_each_ifa_rtnl_net(net, ifa, in_dev) { in rtentry_to_fib_config()
564 if (strcmp(ifa->ifa_label, devname) == 0) in rtentry_to_fib_config()
568 if (!ifa) in rtentry_to_fib_config()
570 cfg->fc_prefsrc = ifa->ifa_local; in rtentry_to_fib_config()
1100 struct in_ifaddr *ifa, u32 rt_priority) in fib_magic() argument
1102 struct net *net = dev_net(ifa->ifa_dev->dev); in fib_magic()
1103 u32 tb_id = l3mdev_fib_table(ifa->ifa_dev->dev); in fib_magic()
1111 .fc_prefsrc = ifa->ifa_local, in fib_magic()
1112 .fc_oif = ifa->ifa_dev->dev->ifindex, in fib_magic()
[all …]
/linux/net/netfilter/
H A Dnf_nat_redirect.c66 const struct in_ifaddr *ifa; in nf_nat_redirect_ipv4() local
68 ifa = rcu_dereference(indev->ifa_list); in nf_nat_redirect_ipv4()
69 if (ifa) in nf_nat_redirect_ipv4()
70 newdst.ip = ifa->ifa_local; in nf_nat_redirect_ipv4()
83 static bool nf_nat_redirect_ipv6_usable(const struct inet6_ifaddr *ifa, unsigned int scope) in nf_nat_redirect_ipv6_usable() argument
85 unsigned int ifa_addr_type = ipv6_addr_type(&ifa->addr); in nf_nat_redirect_ipv6_usable()
90 if ((ifa->flags & IFA_F_TENTATIVE) && (!(ifa->flags & IFA_F_OPTIMISTIC))) in nf_nat_redirect_ipv6_usable()
118 const struct inet6_ifaddr *ifa; in nf_nat_redirect_ipv6() local
121 list_for_each_entry(ifa, &idev->addr_list, if_list) { in nf_nat_redirect_ipv6()
122 if (!nf_nat_redirect_ipv6_usable(ifa, scope)) in nf_nat_redirect_ipv6()
[all …]
H A Dnf_conntrack_broadcast.c42 const struct in_ifaddr *ifa; in nf_conntrack_broadcast_help() local
44 in_dev_for_each_ifa_rcu(ifa, in_dev) { in nf_conntrack_broadcast_help()
45 if (ifa->ifa_flags & IFA_F_SECONDARY) in nf_conntrack_broadcast_help()
48 if (ifa->ifa_broadcast == iph->daddr) { in nf_conntrack_broadcast_help()
49 mask = ifa->ifa_mask; in nf_conntrack_broadcast_help()
H A Dnf_nat_masquerade.c186 const struct in_ifaddr *ifa = ptr; in masq_inet_event() local
199 idev = ifa->ifa_dev; in masq_inet_event()
205 addr.ip = ifa->ifa_address; in masq_inet_event()
282 struct inet6_ifaddr *ifa = ptr; in masq_inet6_event() local
289 dev = ifa->idev->dev; in masq_inet6_event()
293 addr.in6 = ifa->addr; in masq_inet6_event()
H A Dnfnetlink_osf.c36 const struct in_ifaddr *ifa; in nf_osf_ttl() local
46 in_dev_for_each_ifa_rcu(ifa, in_dev) { in nf_osf_ttl()
47 if (inet_ifa_match(ip->saddr, ifa)) { in nf_osf_ttl()
/linux/include/linux/
H A Dinetdevice.h205 static inline bool inet_ifa_match(__be32 addr, const struct in_ifaddr *ifa) in inet_ifa_match() argument
207 return !((addr^ifa->ifa_address)&ifa->ifa_mask); in inet_ifa_match()
225 #define in_dev_for_each_ifa_rtnl(ifa, in_dev) \ argument
226 for (ifa = rtnl_dereference((in_dev)->ifa_list); ifa; \
227 ifa = rtnl_dereference(ifa->ifa_next))
229 #define in_dev_for_each_ifa_rtnl_net(net, ifa, in_dev) \ argument
230 for (ifa = rtnl_net_dereference(net, (in_dev)->ifa_list); ifa; \
231 ifa = rtnl_net_dereference(net, ifa->ifa_next))
233 #define in_dev_for_each_ifa_rcu(ifa, in_dev) \ argument
234 for (ifa = rcu_dereference((in_dev)->ifa_list); ifa; \
[all …]
/linux/net/ipv6/
H A Daddrconf.c174 static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifa);
175 static void ipv6_ifa_notify(int event, struct inet6_ifaddr *ifa);
808 struct inet6_ifaddr *ifa; in dev_forward_change() local
829 list_for_each_entry(ifa, &idev->addr_list, if_list) { in dev_forward_change()
830 if (ifa->flags&IFA_F_TENTATIVE) in dev_forward_change()
832 list_add_tail(&ifa->if_list_aux, &tmp_addr_list); in dev_forward_change()
837 ifa = list_first_entry(&tmp_addr_list, in dev_forward_change()
839 list_del(&ifa->if_list_aux); in dev_forward_change()
841 addrconf_join_anycast(ifa); in dev_forward_change()
843 addrconf_leave_anycast(ifa); in dev_forward_change()
1013 struct inet6_ifaddr *ifa ipv6_link_dev_addr() local
1043 ipv6_add_addr_hash(struct net_device * dev,struct inet6_ifaddr * ifa) ipv6_add_addr_hash() argument
1073 struct inet6_ifaddr *ifa = NULL; ipv6_add_addr() local
1228 struct inet6_ifaddr *ifa; check_cleanup_prefix_route() local
1528 struct inet6_ifaddr *ifa; global() member
2033 const struct inet6_ifaddr *ifa; ipv6_chk_custom_prefix() local
2054 const struct inet6_ifaddr *ifa; ipv6_chk_prefix() local
3248 struct in_ifaddr *ifa; add_v4_addrs() local
3849 struct inet6_ifaddr *ifa; addrconf_ifdown() local
4416 struct inet6_ifaddr *ifa = NULL; if6_get_first() local
4444 if6_get_next(struct seq_file * seq,struct inet6_ifaddr * ifa) if6_get_next() argument
4474 struct inet6_ifaddr *ifa; if6_seq_next() local
4959 struct inet6_ifaddr *ifa; inet6_rtm_newaddr() local
5134 inet6_fill_ifaddr(struct sk_buff * skb,const struct inet6_ifaddr * ifa,struct inet6_fill_args * args) inet6_fill_ifaddr() argument
5293 const struct inet6_ifaddr *ifa; in6_dump_addrs() local
5544 struct inet6_ifaddr *ifa; inet6_rtm_getaddr() local
5600 inet6_ifa_notify(int event,struct inet6_ifaddr * ifa) inet6_ifa_notify() argument
6669 struct inet6_ifaddr *ifa; addrconf_disable_policy_idev() local
[all...]
/linux/net/ipv4/netfilter/
H A Dnf_tproxy_ipv4.c52 const struct in_ifaddr *ifa; in nf_tproxy_laddr4() local
64 in_dev_for_each_ifa_rcu(ifa, indev) { in nf_tproxy_laddr4()
65 if (ifa->ifa_flags & IFA_F_SECONDARY) in nf_tproxy_laddr4()
68 laddr = ifa->ifa_local; in nf_tproxy_laddr4()
/linux/net/ipv6/netfilter/
H A Dnf_tproxy_ipv6.c14 struct inet6_ifaddr *ifa; in nf_tproxy_laddr6() local
24 list_for_each_entry(ifa, &indev->addr_list, if_list) { in nf_tproxy_laddr6()
25 if (ifa->flags & (IFA_F_TENTATIVE | IFA_F_DEPRECATED)) in nf_tproxy_laddr6()
28 laddr = &ifa->addr; in nf_tproxy_laddr6()
/linux/net/smc/
H A Dsmc_clc.c516 const struct in_ifaddr *ifa; in smc_clc_prfx_set4_rcu() local
521 in_dev_for_each_ifa_rcu(ifa, in_dev) { in smc_clc_prfx_set4_rcu()
522 if (!inet_ifa_match(ipv4, ifa)) in smc_clc_prfx_set4_rcu()
524 prop->prefix_len = inet_mask_len(ifa->ifa_mask); in smc_clc_prfx_set4_rcu()
525 prop->outgoing_subnet = ifa->ifa_address & ifa->ifa_mask; in smc_clc_prfx_set4_rcu()
539 struct inet6_ifaddr *ifa; in smc_clc_prfx_set6_rcu() local
545 list_for_each_entry(ifa, &in6_dev->addr_list, if_list) { in smc_clc_prfx_set6_rcu()
546 if (ipv6_addr_type(&ifa->addr) & IPV6_ADDR_LINKLOCAL) in smc_clc_prfx_set6_rcu()
549 &ifa->addr, ifa->prefix_len); in smc_clc_prfx_set6_rcu()
550 ipv6_prfx[cnt].prefix_len = ifa->prefix_len; in smc_clc_prfx_set6_rcu()
[all …]
/linux/drivers/infiniband/hw/usnic/
H A Dusnic_ib_main.c264 struct in_ifaddr *ifa = ptr; in usnic_ib_handle_inet_event() local
281 usnic_fwd_add_ipaddr(us_ibdev->ufdev, ifa->ifa_address); in usnic_ib_handle_inet_event()
304 struct in_ifaddr *ifa = ptr; in usnic_ib_inetaddr_event() local
305 struct net_device *netdev = ifa->ifa_dev->dev; in usnic_ib_inetaddr_event()
438 const struct in_ifaddr *ifa; in usnic_ib_device_add() local
440 ifa = rcu_dereference(ind->ifa_list); in usnic_ib_device_add()
441 if (ifa) in usnic_ib_device_add()
442 usnic_fwd_add_ipaddr(us_ibdev->ufdev, ifa->ifa_address); in usnic_ib_device_add()
/linux/drivers/net/wan/
H A Dhdlc_cisco.c185 const struct in_ifaddr *ifa; in cisco_rx() local
187 in_dev_for_each_ifa_rcu(ifa, in_dev) { in cisco_rx()
189 ifa->ifa_label) == 0) { in cisco_rx()
190 addr = ifa->ifa_local; in cisco_rx()
191 mask = ifa->ifa_mask; in cisco_rx()
/linux/fs/lockd/
H A Dsvc.c269 struct in_ifaddr *ifa = (struct in_ifaddr *)ptr; in lockd_inetaddr_event() local
277 &ifa->ifa_local); in lockd_inetaddr_event()
279 sin.sin_addr.s_addr = ifa->ifa_local; in lockd_inetaddr_event()
295 struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)ptr; in lockd_inet6addr_event() local
302 dprintk("lockd_inet6addr_event: removed %pI6\n", &ifa->addr); in lockd_inet6addr_event()
304 sin6.sin6_addr = ifa->addr; in lockd_inet6addr_event()
306 sin6.sin6_scope_id = ifa->idev->dev->ifindex; in lockd_inet6addr_event()
/linux/fs/nfsd/
H A Dnfssvc.c436 struct in_ifaddr *ifa = (struct in_ifaddr *)ptr; in nfsd_inetaddr_event() local
437 struct net_device *dev = ifa->ifa_dev->dev; in nfsd_inetaddr_event()
447 dprintk("nfsd_inetaddr_event: removed %pI4\n", &ifa->ifa_local); in nfsd_inetaddr_event()
449 sin.sin_addr.s_addr = ifa->ifa_local; in nfsd_inetaddr_event()
466 struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)ptr; in nfsd_inet6addr_event() local
467 struct net_device *dev = ifa->idev->dev; in nfsd_inet6addr_event()
477 dprintk("nfsd_inet6addr_event: removed %pI6\n", &ifa->addr); in nfsd_inet6addr_event()
479 sin6.sin6_addr = ifa->addr; in nfsd_inet6addr_event()
481 sin6.sin6_scope_id = ifa->idev->dev->ifindex; in nfsd_inet6addr_event()
/linux/net/appletalk/
H A Daarp.c708 struct atalk_iface *ifa; in aarp_rcv() local
737 ifa = atalk_find_dev(dev); in aarp_rcv()
738 if (!ifa) in aarp_rcv()
741 if (ifa->status & ATIF_PROBE && in aarp_rcv()
742 ifa->address.s_node == ea->pa_dst_node && in aarp_rcv()
743 ifa->address.s_net == ea->pa_dst_net) { in aarp_rcv()
744 ifa->status |= ATIF_PROBE_FAIL; /* Fail the probe (in use) */ in aarp_rcv()
803 ma = &ifa->address; in aarp_rcv()
/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/
H A Dcore.c1002 struct in_ifaddr *ifa = data; in brcmf_inetaddr_changed() local
1003 struct net_device *ndev = ifa->ifa_dev->dev; in brcmf_inetaddr_changed()
1039 if (ifa->ifa_address == addr_table[i]) in brcmf_inetaddr_changed()
1046 &ifa->ifa_address); in brcmf_inetaddr_changed()
1049 &ifa->ifa_address, sizeof(ifa->ifa_address)); in brcmf_inetaddr_changed()
1058 &ifa->ifa_address); in brcmf_inetaddr_changed()
1093 struct inet6_ifaddr *ifa = data; in brcmf_inet6addr_changed() local
1102 if (ifp->ndev != ifa->idev->dev) in brcmf_inet6addr_changed()
1107 if (ipv6_addr_equal(&ifa->addr, &table[i])) in brcmf_inet6addr_changed()
1114 table[ifp->ipv6addr_idx++] = ifa->addr; in brcmf_inet6addr_changed()
[all …]
/linux/drivers/infiniband/core/
H A Droce_gid_mgmt.c334 const struct in_ifaddr *ifa; in enum_netdev_ipv4_ips() local
354 in_dev_for_each_ifa_rcu(ifa, in_dev) { in enum_netdev_ipv4_ips()
361 entry->ip.sin_addr.s_addr = ifa->ifa_address; in enum_netdev_ipv4_ips()
883 struct in_ifaddr *ifa = ptr; in inetaddr_event() local
886 in.sin_addr.s_addr = ifa->ifa_address; in inetaddr_event()
887 ndev = ifa->ifa_dev->dev; in inetaddr_event()
/linux/net/mac80211/
H A Dmain.c565 struct in_ifaddr *ifa = arg; in ieee80211_ifa_changed() local
569 struct net_device *ndev = ifa->ifa_dev->dev; in ieee80211_ifa_changed()
617 ifa = rtnl_dereference(idev->ifa_list); in ieee80211_ifa_changed()
618 while (ifa) { in ieee80211_ifa_changed()
620 vif_cfg->arp_addr_list[c] = ifa->ifa_address; in ieee80211_ifa_changed()
621 ifa = rtnl_dereference(ifa->ifa_next); in ieee80211_ifa_changed()
641 struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)arg; in ieee80211_ifa6_changed() local
642 struct inet6_dev *idev = ifa->idev; in ieee80211_ifa6_changed()
643 struct net_device *ndev = ifa->idev->dev; in ieee80211_ifa6_changed()
/linux/drivers/net/ethernet/chelsio/cxgb4/
H A Dclip_tbl.c200 struct inet6_ifaddr *ifa; in cxgb4_update_dev_clip() local
208 list_for_each_entry(ifa, &idev->addr_list, if_list) { in cxgb4_update_dev_clip()
209 ret = cxgb4_clip_get(dev, (const u32 *)ifa->addr.s6_addr, 1); in cxgb4_update_dev_clip()
/linux/drivers/net/ethernet/qlogic/netxen/
H A Dnetxen_nic_main.c3181 struct in_ifaddr *ifa, unsigned long event) in netxen_list_config_ip() argument
3188 dev = ifa->ifa_dev->dev; in netxen_list_config_ip()
3197 if (cur->ip_addr == ifa->ifa_address) in netxen_list_config_ip()
3207 cur->ip_addr = ifa->ifa_address; in netxen_list_config_ip()
3209 netxen_config_ipaddr(adapter, ifa->ifa_address, NX_IP_UP); in netxen_list_config_ip()
3215 if (cur->ip_addr == ifa->ifa_address) { in netxen_list_config_ip()
3218 netxen_config_ipaddr(adapter, ifa->ifa_address, in netxen_list_config_ip()
3234 struct in_ifaddr *ifa; in netxen_config_indev_addr() local
3244 in_dev_for_each_ifa_rcu(ifa, indev) { in netxen_config_indev_addr()
3247 netxen_list_config_ip(adapter, ifa, NX_IP_UP); in netxen_config_indev_addr()
[all …]
/linux/net/core/
H A Dnetpoll.c684 const struct in_ifaddr *ifa; in netpoll_take_ipv4() local
694 ifa = rtnl_dereference(in_dev->ifa_list); in netpoll_take_ipv4()
695 if (!ifa) { in netpoll_take_ipv4()
701 np->local_ip.ip = ifa->ifa_local; in netpoll_take_ipv4()
/linux/net/sctp/
H A Dipv6.c78 struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)ptr; in sctp_inet6addr_event() local
81 struct net *net = dev_net(ifa->idev->dev); in sctp_inet6addr_event()
89 addr->a.v6.sin6_addr = ifa->addr; in sctp_inet6addr_event()
90 addr->a.v6.sin6_scope_id = ifa->idev->dev->ifindex; in sctp_inet6addr_event()
104 &ifa->addr) && in sctp_inet6addr_event()
105 addr->a.v6.sin6_scope_id == ifa->idev->dev->ifindex) { in sctp_inet6addr_event()
H A Dprotocol.c78 struct in_ifaddr *ifa; in sctp_v4_copy_addrlist() local
87 in_dev_for_each_ifa_rcu(ifa, in_dev) { in sctp_v4_copy_addrlist()
92 addr->a.v4.sin_addr.s_addr = ifa->ifa_local; in sctp_v4_copy_addrlist()
769 struct in_ifaddr *ifa = (struct in_ifaddr *)ptr; in sctp_inetaddr_event() local
772 struct net *net = dev_net(ifa->ifa_dev->dev); in sctp_inetaddr_event()
780 addr->a.v4.sin_addr.s_addr = ifa->ifa_local; in sctp_inetaddr_event()
794 ifa->ifa_local) { in sctp_inetaddr_event()
/linux/drivers/net/plip/
H A Dplip.c1019 const struct in_ifaddr *ifa = rcu_dereference(in_dev->ifa_list); in plip_rewrite_address() local
1020 if (ifa) { in plip_rewrite_address()
1023 memcpy(eth->h_dest+2, &ifa->ifa_address, 4); in plip_rewrite_address()
1114 const struct in_ifaddr *ifa = rtnl_dereference(in_dev->ifa_list); in plip_open() local
1115 if (ifa != NULL) { in plip_open()
1116 dev_addr_mod(dev, 2, &ifa->ifa_local, 4); in plip_open()

123