Home
last modified time | relevance | path

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

/net/rose/
Drose_link.c34 static void rose_transmit_restart_confirmation(struct rose_neigh *neigh);
35 static void rose_transmit_restart_request(struct rose_neigh *neigh);
37 void rose_start_ftimer(struct rose_neigh *neigh) in rose_start_ftimer() argument
39 del_timer(&neigh->ftimer); in rose_start_ftimer()
41 neigh->ftimer.data = (unsigned long)neigh; in rose_start_ftimer()
42 neigh->ftimer.function = &rose_ftimer_expiry; in rose_start_ftimer()
43 neigh->ftimer.expires = in rose_start_ftimer()
46 add_timer(&neigh->ftimer); in rose_start_ftimer()
49 static void rose_start_t0timer(struct rose_neigh *neigh) in rose_start_t0timer() argument
51 del_timer(&neigh->t0timer); in rose_start_t0timer()
[all …]
Daf_rose.c165 void rose_kill_by_neigh(struct rose_neigh *neigh) in rose_kill_by_neigh() argument
173 if (rose->neighbour == neigh) { in rose_kill_by_neigh()
275 struct sock *rose_find_socket(unsigned int lci, struct rose_neigh *neigh) in rose_find_socket() argument
283 if (rose->lci == lci && rose->neighbour == neigh) in rose_find_socket()
295 unsigned int rose_new_lci(struct rose_neigh *neigh) in rose_new_lci() argument
299 if (neigh->dce_mode) { in rose_new_lci()
301 if (rose_find_socket(lci, neigh) == NULL && rose_route_free_lci(lci, neigh) == NULL) in rose_new_lci()
305 if (rose_find_socket(lci, neigh) == NULL && rose_route_free_lci(lci, neigh) == NULL) in rose_new_lci()
968 int rose_rx_call_request(struct sk_buff *skb, struct net_device *dev, struct rose_neigh *neigh, uns… in rose_rx_call_request() argument
986 rose_transmit_clear_request(neigh, lci, ROSE_INVALID_FACILITY, 76); in rose_rx_call_request()
[all …]
Drose_loopback.c35 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/decnet/
Ddn_neigh.c125 static int dn_neigh_construct(struct neighbour *neigh) in dn_neigh_construct() argument
127 struct net_device *dev = neigh->dev; in dn_neigh_construct()
128 struct dn_neigh *dn = (struct dn_neigh *)neigh; in dn_neigh_construct()
145 __neigh_parms_put(neigh->parms); in dn_neigh_construct()
146 neigh->parms = neigh_parms_clone(parms); in dn_neigh_construct()
149 neigh->ops = &dn_long_ops; in dn_neigh_construct()
151 neigh->ops = &dn_short_ops; in dn_neigh_construct()
155 neigh->ops = &dn_phase3_ops; in dn_neigh_construct()
157 neigh->nud_state = NUD_NOARP; in dn_neigh_construct()
158 neigh->output = neigh->ops->connected_output; in dn_neigh_construct()
[all …]
Ddn_route.c969 struct neighbour *neigh = NULL; in dn_route_output_slow() local
1078 neigh = neigh_lookup_nodev(&dn_neigh_table, &init_net, &fld.daddr); in dn_route_output_slow()
1079 if (neigh) { in dn_route_output_slow()
1081 (neigh->dev->ifindex != oldflp->flowidn_oif)) || in dn_route_output_slow()
1083 (!dn_dev_islocal(neigh->dev, in dn_route_output_slow()
1085 neigh_release(neigh); in dn_route_output_slow()
1086 neigh = NULL; in dn_route_output_slow()
1090 if (dn_dev_islocal(neigh->dev, fld.daddr)) { in dn_route_output_slow()
1094 dev_out = neigh->dev; in dn_route_output_slow()
1118 neigh = neigh_clone(dn_db->router); in dn_route_output_slow()
[all …]
/net/core/
Dneighbour.c54 static void neigh_update_notify(struct neighbour *neigh);
95 static int neigh_blackhole(struct neighbour *neigh, struct sk_buff *skb) in neigh_blackhole() argument
101 static void neigh_cleanup_and_release(struct neighbour *neigh) in neigh_cleanup_and_release() argument
103 if (neigh->parms->neigh_cleanup) in neigh_cleanup_and_release()
104 neigh->parms->neigh_cleanup(neigh); in neigh_cleanup_and_release()
106 __neigh_notify(neigh, RTM_DELNEIGH, 0); in neigh_cleanup_and_release()
107 neigh_release(neigh); in neigh_cleanup_and_release()
696 void neigh_destroy(struct neighbour *neigh) in neigh_destroy() argument
698 struct net_device *dev = neigh->dev; in neigh_destroy()
700 NEIGH_CACHE_STAT_INC(neigh->tbl, destroys); in neigh_destroy()
[all …]
/net/ipv4/
Darp.c125 static int arp_constructor(struct neighbour *neigh);
126 static void arp_solicit(struct neighbour *neigh, struct sk_buff *skb);
127 static void arp_error_report(struct neighbour *neigh, struct sk_buff *skb);
220 static int arp_constructor(struct neighbour *neigh) in arp_constructor() argument
222 __be32 addr = *(__be32 *)neigh->primary_key; in arp_constructor()
223 struct net_device *dev = neigh->dev; in arp_constructor()
234 neigh->type = inet_addr_type(dev_net(dev), addr); in arp_constructor()
237 __neigh_parms_put(neigh->parms); in arp_constructor()
238 neigh->parms = neigh_parms_clone(parms); in arp_constructor()
242 neigh->nud_state = NUD_NOARP; in arp_constructor()
[all …]
Dip_tunnel.c523 struct neighbour *neigh; in ip_tunnel_xmit() local
527 neigh = dst_neigh_lookup(skb_dst(skb), in ip_tunnel_xmit()
529 if (neigh == NULL) in ip_tunnel_xmit()
532 addr6 = (const struct in6_addr *)&neigh->primary_key; in ip_tunnel_xmit()
546 neigh_release(neigh); in ip_tunnel_xmit()
Dip_output.c172 struct neighbour *neigh; in ip_finish_output2() local
197 neigh = __ipv4_neigh_lookup_noref(dev, nexthop); in ip_finish_output2()
198 if (unlikely(!neigh)) in ip_finish_output2()
199 neigh = __neigh_create(&arp_tbl, &nexthop, dev, false); in ip_finish_output2()
200 if (!IS_ERR(neigh)) { in ip_finish_output2()
201 int res = dst_neigh_output(dst, neigh, skb); in ip_finish_output2()
/net/ipv6/
Dndisc.c87 static int ndisc_constructor(struct neighbour *neigh);
88 static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb);
89 static void ndisc_error_report(struct neighbour *neigh, struct sk_buff *skb);
295 static int ndisc_constructor(struct neighbour *neigh) in ndisc_constructor() argument
297 struct in6_addr *addr = (struct in6_addr*)&neigh->primary_key; in ndisc_constructor()
298 struct net_device *dev = neigh->dev; in ndisc_constructor()
309 __neigh_parms_put(neigh->parms); in ndisc_constructor()
310 neigh->parms = neigh_parms_clone(parms); in ndisc_constructor()
312 neigh->type = is_multicast ? RTN_MULTICAST : RTN_UNICAST; in ndisc_constructor()
314 neigh->nud_state = NUD_NOARP; in ndisc_constructor()
[all …]
Droute.c471 struct neighbour *neigh; in rt6_probe() local
483 neigh = __ipv6_neigh_lookup_noref(rt->dst.dev, &rt->rt6i_gateway); in rt6_probe()
484 if (neigh) { in rt6_probe()
485 write_lock(&neigh->lock); in rt6_probe()
486 if (neigh->nud_state & NUD_VALID) in rt6_probe()
490 if (!neigh || in rt6_probe()
491 time_after(jiffies, neigh->updated + rt->rt6i_idev->cnf.rtr_probe_interval)) { in rt6_probe()
495 if (neigh) { in rt6_probe()
496 neigh->updated = jiffies; in rt6_probe()
497 write_unlock(&neigh->lock); in rt6_probe()
[all …]
Dsit.c709 struct neighbour *neigh = NULL; in ipip6_tunnel_xmit() local
713 neigh = dst_neigh_lookup(skb_dst(skb), &iph6->daddr); in ipip6_tunnel_xmit()
715 if (neigh == NULL) { in ipip6_tunnel_xmit()
720 addr6 = (const struct in6_addr *)&neigh->primary_key; in ipip6_tunnel_xmit()
729 neigh_release(neigh); in ipip6_tunnel_xmit()
738 struct neighbour *neigh = NULL; in ipip6_tunnel_xmit() local
742 neigh = dst_neigh_lookup(skb_dst(skb), &iph6->daddr); in ipip6_tunnel_xmit()
744 if (neigh == NULL) { in ipip6_tunnel_xmit()
749 addr6 = (const struct in6_addr *)&neigh->primary_key; in ipip6_tunnel_xmit()
762 neigh_release(neigh); in ipip6_tunnel_xmit()
Dip6_output.c88 struct neighbour *neigh; in ip6_finish_output2() local
134 neigh = __ipv6_neigh_lookup_noref(dst->dev, nexthop); in ip6_finish_output2()
135 if (unlikely(!neigh)) in ip6_finish_output2()
136 neigh = __neigh_create(&nd_tbl, nexthop, dst->dev, false); in ip6_finish_output2()
137 if (!IS_ERR(neigh)) { in ip6_finish_output2()
138 ret = dst_neigh_output(dst, neigh, skb); in ip6_finish_output2()
Dip6_fib.c1606 struct neighbour *neigh; in fib6_age() local
1609 neigh = dst_neigh_lookup(&rt->dst, &rt->rt6i_gateway); in fib6_age()
1610 if (neigh) { in fib6_age()
1611 neigh_flags = neigh->flags; in fib6_age()
1612 neigh_release(neigh); in fib6_age()
/net/atm/
Dclip.c77 pr_debug("%p to entry %p (neigh %p)\n", clip_vcc, entry, entry->neigh); in link_vcc()
82 entry->neigh->used = jiffies; in link_vcc()
94 netif_tx_lock_bh(entry->neigh->dev); /* block clip_start_xmit() */ in unlink_clip_vcc()
95 entry->neigh->used = jiffies; in unlink_clip_vcc()
103 netif_wake_queue(entry->neigh->dev); in unlink_clip_vcc()
108 error = neigh_update(entry->neigh, NULL, NUD_NONE, in unlink_clip_vcc()
116 netif_tx_unlock_bh(entry->neigh->dev); in unlink_clip_vcc()
210 skb->dev = clip_vcc->entry ? clip_vcc->entry->neigh->dev : clip_devs; in clip_push()
265 static void clip_neigh_solicit(struct neighbour *neigh, struct sk_buff *skb) in clip_neigh_solicit() argument
267 __be32 *ip = (__be32 *) neigh->primary_key; in clip_neigh_solicit()
[all …]
Dproc.c175 dev = clip_vcc->entry ? clip_vcc->entry->neigh->dev : NULL; in pvc_info()
/net/bridge/
Dbr_netfilter.c381 struct neighbour *neigh; in br_nf_pre_routing_finish_bridge() local
388 neigh = dst_neigh_lookup_skb(dst, skb); in br_nf_pre_routing_finish_bridge()
389 if (neigh) { in br_nf_pre_routing_finish_bridge()
392 if (neigh->hh.hh_len) { in br_nf_pre_routing_finish_bridge()
393 neigh_hh_bridge(&neigh->hh, skb); in br_nf_pre_routing_finish_bridge()
407 ret = neigh->output(neigh, skb); in br_nf_pre_routing_finish_bridge()
409 neigh_release(neigh); in br_nf_pre_routing_finish_bridge()
/net/ethernet/
Deth.c238 int eth_header_cache(const struct neighbour *neigh, struct hh_cache *hh, __be16 type) in eth_header_cache() argument
241 const struct net_device *dev = neigh->dev; in eth_header_cache()
251 memcpy(eth->h_dest, neigh->ha, ETH_ALEN); in eth_header_cache()