Home
last modified time | relevance | path

Searched refs:neigh (Results 1 – 25 of 31) sorted by relevance

12

/net/rose/
Drose_link.c30 static void rose_transmit_restart_confirmation(struct rose_neigh *neigh);
31 static void rose_transmit_restart_request(struct rose_neigh *neigh);
33 void rose_start_ftimer(struct rose_neigh *neigh) in rose_start_ftimer() argument
35 del_timer(&neigh->ftimer); in rose_start_ftimer()
37 neigh->ftimer.function = rose_ftimer_expiry; in rose_start_ftimer()
38 neigh->ftimer.expires = in rose_start_ftimer()
41 add_timer(&neigh->ftimer); in rose_start_ftimer()
44 static void rose_start_t0timer(struct rose_neigh *neigh) in rose_start_t0timer() argument
46 del_timer(&neigh->t0timer); in rose_start_t0timer()
48 neigh->t0timer.function = rose_t0timer_expiry; in rose_start_t0timer()
[all …]
Daf_rose.c140 void rose_kill_by_neigh(struct rose_neigh *neigh) in rose_kill_by_neigh() argument
148 if (rose->neighbour == neigh) { in rose_kill_by_neigh()
278 struct sock *rose_find_socket(unsigned int lci, struct rose_neigh *neigh) in rose_find_socket() argument
286 if (rose->lci == lci && rose->neighbour == neigh) in rose_find_socket()
298 unsigned int rose_new_lci(struct rose_neigh *neigh) in rose_new_lci() argument
302 if (neigh->dce_mode) { in rose_new_lci()
304 if (rose_find_socket(lci, neigh) == NULL && rose_route_free_lci(lci, neigh) == NULL) in rose_new_lci()
308 if (rose_find_socket(lci, neigh) == NULL && rose_route_free_lci(lci, neigh) == NULL) in rose_new_lci()
991 int rose_rx_call_request(struct sk_buff *skb, struct net_device *dev, struct rose_neigh *neigh, uns… in rose_rx_call_request() argument
1009 rose_transmit_clear_request(neigh, lci, ROSE_INVALID_FACILITY, 76); in rose_rx_call_request()
[all …]
Drose_loopback.c34 int rose_loopback_queue(struct sk_buff *skb, struct rose_neigh *neigh) in rose_loopback_queue() argument
Drose_route.c661 struct rose_route *rose_route_free_lci(unsigned int lci, struct rose_neigh *neigh) in rose_route_free_lci() argument
666 if ((rose_route->neigh1 == neigh && rose_route->lci1 == lci) || in rose_route_free_lci()
667 (rose_route->neigh2 == neigh && rose_route->lci2 == lci)) in rose_route_free_lci()
/net/core/
Dneighbour.c57 static void neigh_update_notify(struct neighbour *neigh, u32 nlmsg_pid);
93 static int neigh_blackhole(struct neighbour *neigh, struct sk_buff *skb) in neigh_blackhole() argument
99 static void neigh_cleanup_and_release(struct neighbour *neigh) in neigh_cleanup_and_release() argument
101 trace_neigh_cleanup_and_release(neigh, 0); in neigh_cleanup_and_release()
102 __neigh_notify(neigh, RTM_DELNEIGH, 0, 0); in neigh_cleanup_and_release()
103 call_netevent_notifiers(NETEVENT_NEIGH_UPDATE, neigh); in neigh_cleanup_and_release()
104 neigh_release(neigh); in neigh_cleanup_and_release()
159 static bool neigh_update_ext_learned(struct neighbour *neigh, u32 flags, in neigh_update_ext_learned() argument
169 if ((neigh->flags ^ ndm_flags) & NTF_EXT_LEARNED) { in neigh_update_ext_learned()
171 neigh->flags |= NTF_EXT_LEARNED; in neigh_update_ext_learned()
[all …]
/net/ipv4/
Darp.c124 static int arp_constructor(struct neighbour *neigh);
125 static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb);
126 static void arp_error_report(struct neighbour *neigh, struct sk_buff *skb);
215 static bool arp_key_eq(const struct neighbour *neigh, const void *pkey) in arp_key_eq() argument
217 return neigh_key_eq32(neigh, pkey); in arp_key_eq()
220 static int arp_constructor(struct neighbour *neigh) in arp_constructor() argument
223 struct net_device *dev = neigh->dev; in arp_constructor()
229 memcpy(neigh->primary_key, &inaddr_any, arp_tbl.key_len); in arp_constructor()
231 addr = *(__be32 *)neigh->primary_key; in arp_constructor()
239 neigh->type = inet_addr_type_dev_table(dev_net(dev), dev, addr); in arp_constructor()
[all …]
Dip_tunnel.c702 struct neighbour *neigh; in ip_tunnel_xmit() local
706 neigh = dst_neigh_lookup(skb_dst(skb), in ip_tunnel_xmit()
708 if (!neigh) in ip_tunnel_xmit()
711 addr6 = (const struct in6_addr *)&neigh->primary_key; in ip_tunnel_xmit()
725 neigh_release(neigh); in ip_tunnel_xmit()
Dip_output.c199 struct neighbour *neigh; in ip_finish_output2() local
230 neigh = ip_neigh_for_gw(rt, skb, &is_v6gw); in ip_finish_output2()
231 if (!IS_ERR(neigh)) { in ip_finish_output2()
234 sock_confirm_neigh(skb, neigh); in ip_finish_output2()
236 res = neigh_output(neigh, skb, is_v6gw); in ip_finish_output2()
/net/ipv6/
Dndisc.c75 static bool ndisc_key_eq(const struct neighbour *neigh, const void *pkey);
78 static int ndisc_constructor(struct neighbour *neigh);
79 static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb);
80 static void ndisc_error_report(struct neighbour *neigh, struct sk_buff *skb);
324 static int ndisc_constructor(struct neighbour *neigh) in ndisc_constructor() argument
326 struct in6_addr *addr = (struct in6_addr *)&neigh->primary_key; in ndisc_constructor()
327 struct net_device *dev = neigh->dev; in ndisc_constructor()
338 __neigh_parms_put(neigh->parms); in ndisc_constructor()
339 neigh->parms = neigh_parms_clone(parms); in ndisc_constructor()
341 neigh->type = is_multicast ? RTN_MULTICAST : RTN_UNICAST; in ndisc_constructor()
[all …]
Dsit.c837 struct neighbour *neigh = NULL; in ipip6_tunnel_xmit() local
841 neigh = dst_neigh_lookup(skb_dst(skb), &iph6->daddr); in ipip6_tunnel_xmit()
843 if (!neigh) { in ipip6_tunnel_xmit()
848 addr6 = (const struct in6_addr *)&neigh->primary_key; in ipip6_tunnel_xmit()
857 neigh_release(neigh); in ipip6_tunnel_xmit()
866 struct neighbour *neigh = NULL; in ipip6_tunnel_xmit() local
870 neigh = dst_neigh_lookup(skb_dst(skb), &iph6->daddr); in ipip6_tunnel_xmit()
872 if (!neigh) { in ipip6_tunnel_xmit()
877 addr6 = (const struct in6_addr *)&neigh->primary_key; in ipip6_tunnel_xmit()
890 neigh_release(neigh); in ipip6_tunnel_xmit()
Droute.c631 struct neighbour *neigh; in rt6_probe() local
651 neigh = __ipv6_neigh_lookup_noref(dev, nh_gw); in rt6_probe()
652 if (neigh) { in rt6_probe()
653 if (neigh->nud_state & NUD_VALID) in rt6_probe()
656 write_lock(&neigh->lock); in rt6_probe()
657 if (!(neigh->nud_state & NUD_VALID) && in rt6_probe()
659 neigh->updated + idev->cnf.rtr_probe_interval)) { in rt6_probe()
662 __neigh_set_probe_once(neigh); in rt6_probe()
664 write_unlock(&neigh->lock); in rt6_probe()
696 struct neighbour *neigh; in rt6_check_neigh() local
[all …]
Dip6_output.c65 struct neighbour *neigh; in ip6_finish_output2() local
139 neigh = __ipv6_neigh_lookup_noref(dst->dev, nexthop); in ip6_finish_output2()
140 if (unlikely(!neigh)) in ip6_finish_output2()
141 neigh = __neigh_create(&nd_tbl, nexthop, dst->dev, false); in ip6_finish_output2()
142 if (!IS_ERR(neigh)) { in ip6_finish_output2()
143 sock_confirm_neigh(skb, neigh); in ip6_finish_output2()
144 ret = neigh_output(neigh, skb, false); in ip6_finish_output2()
Dip6_tunnel.c1069 struct neighbour *neigh; in ip6_tnl_xmit() local
1075 neigh = dst_neigh_lookup(skb_dst(skb), in ip6_tnl_xmit()
1077 if (!neigh) in ip6_tnl_xmit()
1080 addr6 = (struct in6_addr *)&neigh->primary_key; in ip6_tnl_xmit()
1087 neigh_release(neigh); in ip6_tnl_xmit()
/net/batman-adv/
Dbat_v_elp.c65 static u32 batadv_v_elp_get_throughput(struct batadv_hardif_neigh_node *neigh) in batadv_v_elp_get_throughput() argument
67 struct batadv_hard_iface *hard_iface = neigh->if_incoming; in batadv_v_elp_get_throughput()
93 ret = cfg80211_get_station(real_netdev, neigh->addr, &sinfo); in batadv_v_elp_get_throughput()
157 struct batadv_hardif_neigh_node *neigh; in batadv_v_elp_throughput_metric_update() local
161 neigh = container_of(neigh_bat_v, struct batadv_hardif_neigh_node, in batadv_v_elp_throughput_metric_update()
164 ewma_throughput_add(&neigh->bat_v.throughput, in batadv_v_elp_throughput_metric_update()
165 batadv_v_elp_get_throughput(neigh)); in batadv_v_elp_throughput_metric_update()
170 batadv_hardif_neigh_put(neigh); in batadv_v_elp_throughput_metric_update()
185 batadv_v_elp_wifi_neigh_probe(struct batadv_hardif_neigh_node *neigh) in batadv_v_elp_wifi_neigh_probe() argument
187 struct batadv_hard_iface *hard_iface = neigh->if_incoming; in batadv_v_elp_wifi_neigh_probe()
[all …]
Doriginator.c443 batadv_neigh_ifinfo_get(struct batadv_neigh_node *neigh, in batadv_neigh_ifinfo_get() argument
450 hlist_for_each_entry_rcu(tmp_neigh_ifinfo, &neigh->ifinfo_list, in batadv_neigh_ifinfo_get()
478 batadv_neigh_ifinfo_new(struct batadv_neigh_node *neigh, in batadv_neigh_ifinfo_new() argument
483 spin_lock_bh(&neigh->ifinfo_lock); in batadv_neigh_ifinfo_new()
485 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh, if_outgoing); in batadv_neigh_ifinfo_new()
501 hlist_add_head_rcu(&neigh_ifinfo->list, &neigh->ifinfo_list); in batadv_neigh_ifinfo_new()
504 spin_unlock_bh(&neigh->ifinfo_lock); in batadv_neigh_ifinfo_new()
582 if (bat_priv->algo_ops->neigh.hardif_init) in batadv_hardif_neigh_create()
583 bat_priv->algo_ops->neigh.hardif_init(hardif_neigh); in batadv_hardif_neigh_create()
761 if (!bat_priv->algo_ops->neigh.print) { in batadv_hardif_neigh_seq_print_text()
[all …]
Doriginator.h41 batadv_neigh_ifinfo_new(struct batadv_neigh_node *neigh,
44 batadv_neigh_ifinfo_get(struct batadv_neigh_node *neigh,
Dsend.c140 struct batadv_neigh_node *neigh) in batadv_send_unicast_skb() argument
147 ret = batadv_send_skb_packet(skb, neigh->if_incoming, neigh->addr); in batadv_send_unicast_skb()
150 hardif_neigh = batadv_hardif_neigh_get(neigh->if_incoming, neigh->addr); in batadv_send_unicast_skb()
Dbat_algo.c74 !bat_algo_ops->neigh.cmp || in batadv_algo_register()
75 !bat_algo_ops->neigh.is_similar_or_better) { in batadv_algo_register()
Dtypes.h2219 void (*hardif_init)(struct batadv_hardif_neigh_node *neigh);
2323 struct batadv_algo_neigh_ops neigh; member
/net/atm/
Dclip.c78 pr_debug("%p to entry %p (neigh %p)\n", clip_vcc, entry, entry->neigh); in link_vcc()
83 entry->neigh->used = jiffies; in link_vcc()
95 netif_tx_lock_bh(entry->neigh->dev); /* block clip_start_xmit() */ in unlink_clip_vcc()
96 entry->neigh->used = jiffies; in unlink_clip_vcc()
104 netif_wake_queue(entry->neigh->dev); in unlink_clip_vcc()
109 error = neigh_update(entry->neigh, NULL, NUD_NONE, in unlink_clip_vcc()
117 netif_tx_unlock_bh(entry->neigh->dev); in unlink_clip_vcc()
211 skb->dev = clip_vcc->entry ? clip_vcc->entry->neigh->dev : clip_devs; in clip_push()
266 static void clip_neigh_solicit(struct neighbour *neigh, struct sk_buff *skb) in clip_neigh_solicit() argument
268 __be32 *ip = (__be32 *) neigh->primary_key; in clip_neigh_solicit()
[all …]
/net/6lowpan/
Dndisc.c60 struct lowpan_802154_neigh *neigh = lowpan_802154_neigh(neighbour_priv(n)); in lowpan_ndisc_802154_update() local
95 ieee802154_be16_to_le16(&neigh->short_addr, lladdr_short); in lowpan_ndisc_802154_update()
96 if (!lowpan_802154_is_valid_src_short_addr(neigh->short_addr)) in lowpan_ndisc_802154_update()
97 neigh->short_addr = cpu_to_le16(IEEE802154_ADDR_SHORT_UNSPEC); in lowpan_ndisc_802154_update()
115 u8 icmp6_type, struct neighbour *neigh, in lowpan_ndisc_opt_addr_space() argument
127 n = lowpan_802154_neigh(neighbour_priv(neigh)); in lowpan_ndisc_opt_addr_space()
129 read_lock_bh(&neigh->lock); in lowpan_ndisc_opt_addr_space()
133 read_unlock_bh(&neigh->lock); in lowpan_ndisc_opt_addr_space()
137 read_unlock_bh(&neigh->lock); in lowpan_ndisc_opt_addr_space()
/net/bridge/
Dbr_netfilter_hooks.c268 struct neighbour *neigh; in br_nf_pre_routing_finish_bridge() local
275 neigh = dst_neigh_lookup_skb(dst, skb); in br_nf_pre_routing_finish_bridge()
276 if (neigh) { in br_nf_pre_routing_finish_bridge()
280 if ((neigh->nud_state & NUD_CONNECTED) && neigh->hh.hh_len) { in br_nf_pre_routing_finish_bridge()
281 neigh_hh_bridge(&neigh->hh, skb); in br_nf_pre_routing_finish_bridge()
296 ret = neigh->output(neigh, skb); in br_nf_pre_routing_finish_bridge()
298 neigh_release(neigh); in br_nf_pre_routing_finish_bridge()
/net/ieee802154/6lowpan/
Dcore.c79 struct lowpan_802154_neigh *neigh = lowpan_802154_neigh(neighbour_priv(n)); in lowpan_neigh_construct() local
82 neigh->short_addr = cpu_to_le16(IEEE802154_ADDR_SHORT_UNSPEC); in lowpan_neigh_construct()
/net/ethernet/
Deth.c233 int eth_header_cache(const struct neighbour *neigh, struct hh_cache *hh, __be16 type) in eth_header_cache() argument
236 const struct net_device *dev = neigh->dev; in eth_header_cache()
246 memcpy(eth->h_dest, neigh->ha, ETH_ALEN); in eth_header_cache()
/net/bluetooth/
D6lowpan.c168 struct neighbour *neigh; in peer_lookup_dst() local
210 neigh = __ipv6_neigh_lookup(dev->netdev, nexthop); in peer_lookup_dst()
211 if (neigh) { in peer_lookup_dst()
213 if (!memcmp(neigh->ha, peer->lladdr, ETH_ALEN)) { in peer_lookup_dst()
214 neigh_release(neigh); in peer_lookup_dst()
219 neigh_release(neigh); in peer_lookup_dst()

12