Lines Matching defs:daddr
158 const void *daddr);
159 static void ipv4_confirm_neigh(const struct dst_entry *dst, const void *daddr);
436 const void *daddr)
451 pkey = skb ? ip_hdr(skb)->daddr : *((__be32 *) daddr);
463 static void ipv4_confirm_neigh(const struct dst_entry *dst, const void *daddr)
467 const __be32 *pkey = daddr;
473 } else if (!daddr ||
524 hash = siphash_3u32((__force u32)iph->daddr,
559 iph->daddr, iph->saddr, 0, 0,
580 __be32 daddr = inet->inet_daddr;
585 daddr = inet_opt->opt.faddr;
590 daddr, inet->inet_saddr, 0, 0, sk->sk_uid);
644 static u32 fnhe_hashfun(__be32 daddr)
650 hval = siphash_1u32((__force u32)daddr, &fnhe_hash_key);
668 static void update_or_create_fnhe(struct fib_nh_common *nhc, __be32 daddr,
680 hval = fnhe_hashfun(daddr);
697 if (fnhe->fnhe_daddr == daddr)
736 fnhe->fnhe_daddr = daddr;
824 update_or_create_fnhe(nhc, fl4->daddr, new_gw,
840 __be32 daddr = iph->daddr;
846 &saddr, &daddr);
920 rt_nexthop(rt, ip_hdr(skb)->daddr));
947 __be32 gw = rt_nexthop(rt, ip_hdr(skb)->daddr);
957 &ip_hdr(skb)->daddr, &gw);
1070 update_or_create_fnhe(nhc, fl4->daddr, 0, mtu, lock,
1279 __func__, &ip_hdr(skb)->saddr, &ip_hdr(skb)->daddr,
1305 .daddr = iph->daddr,
1318 rt_nexthop(rt, iph->daddr),
1368 static void ip_del_fnhe(struct fib_nh_common *nhc, __be32 daddr)
1372 u32 hval = fnhe_hashfun(daddr);
1383 if (fnhe->fnhe_daddr == daddr) {
1403 __be32 daddr)
1412 hval = fnhe_hashfun(daddr);
1416 if (fnhe->fnhe_daddr == daddr) {
1419 ip_del_fnhe(nhc, daddr);
1434 u32 ip_mtu_from_fib_result(struct fib_result *res, __be32 daddr)
1448 fnhe = find_exception(nhc, daddr);
1460 __be32 daddr, const bool do_cache)
1466 if (daddr == fnhe->fnhe_daddr) {
1488 rt->rt_gw4 = daddr;
1603 static void rt_set_nexthop(struct rtable *rt, __be32 daddr,
1636 cached = rt_bind_exception(rt, fnhe, daddr, do_cache);
1647 rt->rt_gw4 = daddr;
1727 int ip_mc_validate_source(struct sk_buff *skb, __be32 daddr, __be32 saddr,
1745 if (!ipv4_is_local_multicast(daddr) &&
1758 static int ip_route_input_mc(struct sk_buff *skb, __be32 daddr, __be32 saddr,
1768 err = ip_mc_validate_source(skb, daddr, saddr, tos, dev, in_dev, &itag);
1791 if (!ipv4_is_local_multicast(daddr) && IN_DEV_MFORWARD(in_dev))
1805 __be32 daddr,
1816 &daddr, &saddr, dev->name);
1831 __be32 daddr, __be32 saddr, u32 tos)
1849 err = fib_validate_source(skb, saddr, daddr, tos, FIB_RES_OIF(*res),
1852 ip_handle_martian_source(in_dev->dev, in_dev, skb, daddr,
1888 fnhe = find_exception(nhc, daddr);
1912 rt_set_nexthop(rth, daddr, res, fnhe, res->fi, res->type, itag,
1959 hash_keys->addrs.v4addrs.dst = key_iph->daddr;
1978 hash_keys.addrs.v4addrs.dst = fl4->daddr;
2008 hash_keys.addrs.v4addrs.dst = fl4->daddr;
2041 hash_keys.addrs.v4addrs.dst = fl4->daddr;
2057 __be32 daddr, __be32 saddr, u32 tos,
2070 return __mkroute_input(skb, res, in_dev, daddr, saddr, tos);
2074 * assuming daddr is valid and the destination is not a local broadcast one.
2077 int ip_route_use_hint(struct sk_buff *skb, __be32 daddr, __be32 saddr,
2103 err = fib_validate_source(skb, saddr, daddr, tos, 0, dev, in_dev, &tag);
2112 ip_handle_martian_source(dev, in_dev, skb, daddr, saddr);
2142 static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr,
2179 if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0))
2188 if (ipv4_is_zeronet(daddr))
2192 * and call it once if daddr or/and saddr are loopback addresses
2194 if (ipv4_is_loopback(daddr)) {
2211 fl4.daddr = daddr;
2241 err = fib_validate_source(skb, saddr, daddr, tos,
2256 err = ip_mkroute_input(skb, res, in_dev, daddr, saddr, tos, flkeys);
2341 &daddr, &saddr, dev->name);
2353 ip_handle_martian_source(dev, in_dev, skb, daddr, saddr);
2357 int ip_route_input_noref(struct sk_buff *skb, __be32 daddr, __be32 saddr,
2365 err = ip_route_input_rcu(skb, daddr, saddr, tos, dev, &res);
2373 int ip_route_input_rcu(struct sk_buff *skb, __be32 daddr, __be32 saddr,
2387 if (ipv4_is_multicast(daddr)) {
2394 our = ip_check_mc_rcu(in_dev, daddr, saddr,
2403 our = ip_check_mc_rcu(l3_in_dev, daddr, saddr,
2410 (!ipv4_is_local_multicast(daddr) &&
2414 err = ip_route_input_mc(skb, daddr, saddr,
2420 return ip_route_input_slow(skb, daddr, saddr, tos, dev, res);
2446 if (ipv4_is_lbcast(fl4->daddr))
2448 else if (ipv4_is_multicast(fl4->daddr))
2450 else if (ipv4_is_zeronet(fl4->daddr))
2462 if (!ip_check_mc_rcu(in_dev, fl4->daddr, fl4->saddr,
2493 fnhe = find_exception(nhc, fl4->daddr);
2533 !ipv4_is_local_multicast(fl4->daddr)) {
2541 rt_set_nexthop(rth, fl4->daddr, res, fnhe, fi, type, 0, do_cache);
2602 (ipv4_is_multicast(fl4->daddr) ||
2603 ipv4_is_lbcast(fl4->daddr))) {
2647 if (ipv4_is_local_multicast(fl4->daddr) ||
2648 ipv4_is_lbcast(fl4->daddr) ||
2656 if (ipv4_is_multicast(fl4->daddr))
2659 else if (!fl4->daddr)
2665 if (!fl4->daddr) {
2666 fl4->daddr = fl4->saddr;
2667 if (!fl4->daddr)
2668 fl4->daddr = fl4->saddr = htonl(INADDR_LOOPBACK);
2681 (ipv4_is_multicast(fl4->daddr) ||
2716 fl4->saddr = fl4->daddr;
2838 fl4.daddr = info->key.u.ipv4.dst;
2845 netdev_dbg(dev, "no route to %pI4\n", &fl4.daddr);
2849 netdev_dbg(dev, "circular route to %pI4\n", &fl4.daddr);
2969 fl4->saddr, fl4->daddr,
3092 iph->daddr = dst;
3253 fl4.daddr = dst;