/net/core/ |
D | dst.c | 47 void dst_init(struct dst_entry *dst, struct dst_ops *ops, in dst_init() argument 51 dst->dev = dev; in dst_init() 53 dst->ops = ops; in dst_init() 54 dst_init_metrics(dst, dst_default_metrics.metrics, true); in dst_init() 55 dst->expires = 0UL; in dst_init() 57 dst->xfrm = NULL; in dst_init() 59 dst->input = dst_discard; in dst_init() 60 dst->output = dst_discard_out; in dst_init() 61 dst->error = 0; in dst_init() 62 dst->obsolete = initial_obsolete; in dst_init() [all …]
|
D | dst_cache.c | 19 struct dst_entry *dst; member 28 struct dst_entry *dst, u32 cookie) in dst_cache_per_cpu_dst_set() argument 30 dst_release(dst_cache->dst); in dst_cache_per_cpu_dst_set() 31 if (dst) in dst_cache_per_cpu_dst_set() 32 dst_hold(dst); in dst_cache_per_cpu_dst_set() 35 dst_cache->dst = dst; in dst_cache_per_cpu_dst_set() 41 struct dst_entry *dst; in dst_cache_per_cpu_get() local 43 dst = idst->dst; in dst_cache_per_cpu_get() 44 if (!dst) in dst_cache_per_cpu_get() 48 dst_hold(dst); in dst_cache_per_cpu_get() [all …]
|
/net/dsa/ |
D | dsa2.c | 37 int dsa_tree_notify(struct dsa_switch_tree *dst, unsigned long e, void *v) in dsa_tree_notify() argument 39 struct raw_notifier_head *nh = &dst->nh; in dsa_tree_notify() 61 struct dsa_switch_tree *dst; in dsa_broadcast() local 64 list_for_each_entry(dst, &dsa_tree_list, list) { in dsa_broadcast() 65 err = dsa_tree_notify(dst, e, v); in dsa_broadcast() 84 void dsa_lag_map(struct dsa_switch_tree *dst, struct net_device *lag) in dsa_lag_map() argument 88 if (dsa_lag_id(dst, lag) >= 0) in dsa_lag_map() 92 for (id = 0; id < dst->lags_len; id++) { in dsa_lag_map() 93 if (!dsa_lag_dev(dst, id)) { in dsa_lag_map() 94 dst->lags[id] = lag; in dsa_lag_map() [all …]
|
/net/sched/ |
D | em_meta.c | 101 struct meta_obj *dst, int *err) 109 get_random_bytes(&dst->value, sizeof(dst->value)); in META_COLLECTOR() 122 dst->value = fixed_loadavg(avenrun[0]); in META_COLLECTOR() 127 dst->value = fixed_loadavg(avenrun[1]); in META_COLLECTOR() 132 dst->value = fixed_loadavg(avenrun[2]); in META_COLLECTOR() 139 static inline int int_dev(struct net_device *dev, struct meta_obj *dst) in int_dev() argument 144 dst->value = dev->ifindex; in int_dev() 148 static inline int var_dev(struct net_device *dev, struct meta_obj *dst) in var_dev() argument 153 dst->value = (unsigned long) dev->name; in var_dev() 154 dst->len = strlen(dev->name); in var_dev() [all …]
|
/net/ipv6/ |
D | inet6_connection_sock.c | 35 struct dst_entry *dst; in inet6_csk_route_req() local 51 dst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in inet6_csk_route_req() 52 if (IS_ERR(dst)) in inet6_csk_route_req() 55 return dst; in inet6_csk_route_req() 85 struct dst_entry *dst; in inet6_csk_route_socket() local 104 dst = __inet6_csk_dst_check(sk, np->dst_cookie); in inet6_csk_route_socket() 105 if (!dst) { in inet6_csk_route_socket() 106 dst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in inet6_csk_route_socket() 108 if (!IS_ERR(dst)) in inet6_csk_route_socket() 109 ip6_dst_store(sk, dst, NULL, NULL); in inet6_csk_route_socket() [all …]
|
D | xfrm6_policy.c | 32 struct dst_entry *dst; in xfrm6_dst_lookup() local 43 dst = ip6_route_output(net, NULL, &fl6); in xfrm6_dst_lookup() 45 err = dst->error; in xfrm6_dst_lookup() 46 if (dst->error) { in xfrm6_dst_lookup() 47 dst_release(dst); in xfrm6_dst_lookup() 48 dst = ERR_PTR(err); in xfrm6_dst_lookup() 51 return dst; in xfrm6_dst_lookup() 58 struct dst_entry *dst; in xfrm6_get_saddr() local 61 dst = xfrm6_dst_lookup(net, 0, oif, NULL, daddr, mark); in xfrm6_get_saddr() 62 if (IS_ERR(dst)) in xfrm6_get_saddr() [all …]
|
D | ip6_output.c | 61 struct dst_entry *dst = skb_dst(skb); in ip6_finish_output2() local 62 struct net_device *dev = dst->dev; in ip6_finish_output2() 63 struct inet6_dev *idev = ip6_dst_idev(dst); in ip6_finish_output2() 112 if (lwtunnel_xmit_redirect(dst->lwtstate)) { in ip6_finish_output2() 120 nexthop = rt6_nexthop((struct rt6_info *)dst, daddr); in ip6_finish_output2() 257 struct dst_entry *dst = skb_dst(skb); in ip6_xmit() local 258 struct net_device *dev = dst->dev; in ip6_xmit() 259 struct inet6_dev *idev = ip6_dst_idev(dst); in ip6_xmit() 300 hlimit = ip6_dst_hoplimit(dst); in ip6_xmit() 316 mtu = dst_mtu(dst); in ip6_xmit() [all …]
|
D | icmp.c | 204 struct dst_entry *dst; in icmpv6_xrlim_allow() local 215 dst = ip6_route_output(net, sk, fl6); in icmpv6_xrlim_allow() 216 if (dst->error) { in icmpv6_xrlim_allow() 217 IP6_INC_STATS(net, ip6_dst_idev(dst), in icmpv6_xrlim_allow() 219 } else if (dst->dev && (dst->dev->flags&IFF_LOOPBACK)) { in icmpv6_xrlim_allow() 222 struct rt6_info *rt = (struct rt6_info *)dst; in icmpv6_xrlim_allow() 235 dst_release(dst); in icmpv6_xrlim_allow() 243 struct dst_entry *dst; in icmpv6_rt_has_prefsrc() local 246 dst = ip6_route_output(net, sk, fl6); in icmpv6_rt_has_prefsrc() 247 if (!dst->error) { in icmpv6_rt_has_prefsrc() [all …]
|
D | rpl_iptunnel.c | 191 struct dst_entry *dst = skb_dst(skb); in rpl_do_srh() local 197 tinfo = rpl_encap_lwtunnel(dst->lwtstate); in rpl_do_srh() 205 struct dst_entry *dst = NULL; in rpl_output() local 216 dst = dst_cache_get(&rlwt->cache); in rpl_output() 219 if (unlikely(!dst)) { in rpl_output() 230 dst = ip6_route_output(net, NULL, &fl6); in rpl_output() 231 if (dst->error) { in rpl_output() 232 err = dst->error; in rpl_output() 233 dst_release(dst); in rpl_output() 238 dst_cache_set_ip6(&rlwt->cache, dst, &fl6.saddr); in rpl_output() [all …]
|
D | route.c | 86 struct dst_entry *ip6_dst_check(struct dst_entry *dst, u32 cookie); 87 static unsigned int ip6_default_advmss(const struct dst_entry *dst); 89 unsigned int ip6_mtu(const struct dst_entry *dst); 101 static void ip6_rt_update_pmtu(struct dst_entry *dst, struct sock *sk, 104 static void rt6_do_redirect(struct dst_entry *dst, struct sock *sk, 110 struct fib6_info *rt, struct dst_entry *dst, 152 struct net *net = dev_net(rt->dst.dev); in rt6_uncached_list_del() 176 struct net_device *rt_dev = rt->dst.dev; in rt6_uncached_list_flush_dev() 184 rt->dst.dev = blackhole_netdev; in rt6_uncached_list_flush_dev() 185 dev_hold(rt->dst.dev); in rt6_uncached_list_flush_dev() [all …]
|
/net/ceph/ |
D | armor.c | 5 int ceph_armor(char *dst, const char *src, const char *end); 6 int ceph_unarmor(char *dst, const char *src, const char *end); 37 int ceph_armor(char *dst, const char *src, const char *end) in ceph_armor() argument 46 *dst++ = encode_bits(a >> 2); in ceph_armor() 49 *dst++ = encode_bits(((a & 3) << 4) | (b >> 4)); in ceph_armor() 52 *dst++ = encode_bits(((b & 15) << 2) | in ceph_armor() 54 *dst++ = encode_bits(c & 63); in ceph_armor() 56 *dst++ = encode_bits((b & 15) << 2); in ceph_armor() 57 *dst++ = '='; in ceph_armor() 60 *dst++ = encode_bits(((a & 3) << 4)); in ceph_armor() [all …]
|
/net/ipv4/ |
D | route.c | 138 struct dst_entry *ipv4_dst_check(struct dst_entry *dst, u32 cookie); 139 static unsigned int ipv4_default_advmss(const struct dst_entry *dst); 141 unsigned int ipv4_mtu(const struct dst_entry *dst); 142 static struct dst_entry *ipv4_negative_advice(struct dst_entry *dst); 144 static void ip_rt_update_pmtu(struct dst_entry *dst, struct sock *sk, 147 static void ip_do_redirect(struct dst_entry *dst, struct sock *sk, 149 static void ipv4_dst_destroy(struct dst_entry *dst); 151 static u32 *ipv4_cow_metrics(struct dst_entry *dst, unsigned long old) in ipv4_cow_metrics() argument 157 static struct neighbour *ipv4_neigh_lookup(const struct dst_entry *dst, 160 static void ipv4_confirm_neigh(const struct dst_entry *dst, const void *daddr); [all …]
|
D | netfilter.c | 59 skb_dst_set(skb, &rt->dst); in ip_route_me_harder() 67 struct dst_entry *dst = skb_dst(skb); in ip_route_me_harder() local 69 dst = xfrm_lookup(net, dst, flowi4_to_flowi(&fl4), sk, 0); in ip_route_me_harder() 70 if (IS_ERR(dst)) in ip_route_me_harder() 71 return PTR_ERR(dst); in ip_route_me_harder() 72 skb_dst_set(skb, dst); in ip_route_me_harder() 87 int nf_ip_route(struct net *net, struct dst_entry **dst, struct flowi *fl, in nf_ip_route() argument 93 *dst = &rt->dst; in nf_ip_route()
|
D | xfrm4_policy.c | 40 return &rt->dst; in __xfrm4_dst_lookup() 59 struct dst_entry *dst; in xfrm4_get_saddr() local 62 dst = __xfrm4_dst_lookup(net, &fl4, 0, oif, NULL, daddr, mark); in xfrm4_get_saddr() 63 if (IS_ERR(dst)) in xfrm4_get_saddr() 67 dst_release(dst); in xfrm4_get_saddr() 79 xdst->u.dst.dev = dev; in xfrm4_fill_dst() 102 static void xfrm4_update_pmtu(struct dst_entry *dst, struct sock *sk, in xfrm4_update_pmtu() argument 106 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; in xfrm4_update_pmtu() 112 static void xfrm4_redirect(struct dst_entry *dst, struct sock *sk, in xfrm4_redirect() argument 115 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; in xfrm4_redirect() [all …]
|
/net/ipv4/netfilter/ |
D | nf_nat_h323.c | 118 &ct->tuplehash[!dir].tuple.dst.u3.ip, in set_sig_addr() 123 tuple.dst.u3, in set_sig_addr() 125 } else if (addr.ip == ct->tuplehash[dir].tuple.dst.u3.ip && in set_sig_addr() 161 &ct->tuplehash[!dir].tuple.dst.u3.ip, in set_ras_addr() 162 ntohs(ct->tuplehash[!dir].tuple.dst.u.udp.port)); in set_ras_addr() 164 &ct->tuplehash[!dir].tuple.dst.u3, in set_ras_addr() 166 dst.u.udp.port); in set_ras_addr() 188 rtp_exp->saved_proto.udp.port = rtp_exp->tuple.dst.u.udp.port; in nat_rtp_rtcp() 191 rtcp_exp->saved_proto.udp.port = rtcp_exp->tuple.dst.u.udp.port; in nat_rtp_rtcp() 202 rtp_exp->tuple.dst.u.udp.port = info->rtp_port[i][dir]; in nat_rtp_rtcp() [all …]
|
/net/bridge/ |
D | br_nf_core.c | 24 static void fake_update_pmtu(struct dst_entry *dst, struct sock *sk, in fake_update_pmtu() argument 30 static void fake_redirect(struct dst_entry *dst, struct sock *sk, in fake_redirect() argument 35 static u32 *fake_cow_metrics(struct dst_entry *dst, unsigned long old) in fake_cow_metrics() argument 40 static struct neighbour *fake_neigh_lookup(const struct dst_entry *dst, in fake_neigh_lookup() argument 47 static unsigned int fake_mtu(const struct dst_entry *dst) in fake_mtu() argument 49 return dst->dev->mtu; in fake_mtu() 76 atomic_set(&rt->dst.__refcnt, 1); in br_netfilter_rtable_init() 77 rt->dst.dev = br->dev; in br_netfilter_rtable_init() 78 dst_init_metrics(&rt->dst, br_dst_default_metrics, true); in br_netfilter_rtable_init() 79 rt->dst.flags = DST_NOXFRM | DST_FAKE_RTABLE; in br_netfilter_rtable_init() [all …]
|
/net/xfrm/ |
D | xfrm_compat.c | 228 static int xfrm_nla_cpy(struct sk_buff *dst, const struct nlattr *src, int len) in xfrm_nla_cpy() argument 230 return nla_put(dst, src->nla_type, len, nla_data(src)); in xfrm_nla_cpy() 233 static int xfrm_xlate64_attr(struct sk_buff *dst, const struct nlattr *src) in xfrm_xlate64_attr() argument 245 return xfrm_nla_cpy(dst, src, nla_len(src)); in xfrm_xlate64_attr() 247 return xfrm_nla_cpy(dst, src, XMSGSIZE(compat_xfrm_usersa_info)); in xfrm_xlate64_attr() 249 return xfrm_nla_cpy(dst, src, XMSGSIZE(compat_xfrm_userpolicy_info)); in xfrm_xlate64_attr() 251 return xfrm_nla_cpy(dst, src, nla_len(src)); in xfrm_xlate64_attr() 253 return nla_put_64bit(dst, src->nla_type, nla_len(src), in xfrm_xlate64_attr() 260 return xfrm_nla_cpy(dst, src, nla_len(src)); in xfrm_xlate64_attr() 262 return nla_put_64bit(dst, src->nla_type, nla_len(src), in xfrm_xlate64_attr() [all …]
|
D | xfrm_policy.c | 165 static int stale_bundle(struct dst_entry *dst); 260 struct dst_entry *dst; in __xfrm_dst_lookup() local 266 dst = afinfo->dst_lookup(net, tos, oif, saddr, daddr, mark); in __xfrm_dst_lookup() 270 return dst; in __xfrm_dst_lookup() 283 struct dst_entry *dst; in xfrm_dst_lookup() local 294 dst = __xfrm_dst_lookup(net, tos, oif, saddr, daddr, family, mark); in xfrm_dst_lookup() 296 if (!IS_ERR(dst)) { in xfrm_dst_lookup() 303 return dst; in xfrm_dst_lookup() 2491 struct dst_entry *dst = &xdst->u.dst; in xfrm_alloc_dst() local 2493 memset(dst + 1, 0, sizeof(*xdst) - sizeof(*dst)); in xfrm_alloc_dst() [all …]
|
/net/netfilter/ |
D | nf_nat_sip.c | 109 newaddr = ct->tuplehash[!dir].tuple.dst.u3; in map_addr() 110 newport = ct->tuplehash[!dir].tuple.dst.u.udp.port; in map_addr() 111 } else if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, addr) && in map_addr() 112 ct->tuplehash[dir].tuple.dst.u.udp.port == port) { in map_addr() 194 &ct->tuplehash[dir].tuple.dst.u3) || in nf_nat_sip() 195 port != ct->tuplehash[dir].tuple.dst.u.udp.port) in nf_nat_sip() 214 !nf_inet_addr_cmp(&addr, &ct->tuplehash[!dir].tuple.dst.u3)) { in nf_nat_sip() 216 &ct->tuplehash[!dir].tuple.dst.u3, in nf_nat_sip() 230 nf_inet_addr_cmp(&addr, &ct->tuplehash[dir].tuple.dst.u3) && in nf_nat_sip() 247 htons(n) == ct->tuplehash[dir].tuple.dst.u.udp.port && in nf_nat_sip() [all …]
|
D | nft_rt.c | 25 struct dst_entry *dst = NULL; in get_tcpmss() local 41 nf_route(nft_net(pkt), &dst, &fl, false, nft_pf(pkt)); in get_tcpmss() 42 if (dst) { in get_tcpmss() 43 mtu = min(mtu, dst_mtu(dst)); in get_tcpmss() 44 dst_release(dst); in get_tcpmss() 60 const struct dst_entry *dst; in nft_rt_get_eval() local 62 dst = skb_dst(skb); in nft_rt_get_eval() 63 if (!dst) in nft_rt_get_eval() 69 *dest = dst->tclassid; in nft_rt_get_eval() 76 *dest = (__force u32)rt_nexthop((const struct rtable *)dst, in nft_rt_get_eval() [all …]
|
D | nf_conntrack_proto_icmp.c | 37 tuple->dst.u.icmp.type = hp->type; in icmp_pkt_to_tuple() 39 tuple->dst.u.icmp.code = hp->code; in icmp_pkt_to_tuple() 59 if (orig->dst.u.icmp.type >= sizeof(invmap) || in nf_conntrack_invert_icmp_tuple() 60 !invmap[orig->dst.u.icmp.type]) in nf_conntrack_invert_icmp_tuple() 64 tuple->dst.u.icmp.type = invmap[orig->dst.u.icmp.type] - 1; in nf_conntrack_invert_icmp_tuple() 65 tuple->dst.u.icmp.code = orig->dst.u.icmp.code; in nf_conntrack_invert_icmp_tuple() 89 if (ct->tuplehash[0].tuple.dst.u.icmp.type >= sizeof(valid_new) || in nf_conntrack_icmp_packet() 90 !valid_new[ct->tuplehash[0].tuple.dst.u.icmp.type]) { in nf_conntrack_icmp_packet() 93 ct->tuplehash[0].tuple.dst.u.icmp.type); in nf_conntrack_icmp_packet() 170 ct_daddr = &ct->tuplehash[dir].tuple.dst.u3; in nf_conntrack_inet_error() [all …]
|
/net/netfilter/ipvs/ |
D | ip_vs_nfct.c | 57 IP_VS_DBG_ADDR((T)->src.l3num, &(T)->dst.u3), \ 58 ntohs((T)->dst.u.all), \ 59 (T)->dst.protonum 110 if (new_tuple.dst.protonum != IPPROTO_ICMP && in ip_vs_update_conntrack() 111 new_tuple.dst.protonum != IPPROTO_ICMPV6) in ip_vs_update_conntrack() 114 new_tuple.dst.u3 = cp->vaddr; in ip_vs_update_conntrack() 115 if (new_tuple.dst.protonum != IPPROTO_ICMP && in ip_vs_update_conntrack() 116 new_tuple.dst.protonum != IPPROTO_ICMPV6) in ip_vs_update_conntrack() 117 new_tuple.dst.u.tcp.port = cp->vport; in ip_vs_update_conntrack() 158 ip_vs_conn_fill_param(net_ipvs(net), exp->tuple.src.l3num, orig->dst.protonum, in ip_vs_nfct_expect_callback() [all …]
|
/net/ipv6/ila/ |
D | ila_lwt.c | 43 struct dst_entry *dst; in ila_output() local 61 dst = dst_cache_get(&ilwt->dst_cache); in ila_output() 62 if (unlikely(!dst)) { in ila_output() 76 dst = ip6_route_output(net, NULL, &fl6); in ila_output() 77 if (dst->error) { in ila_output() 79 dst_release(dst); in ila_output() 83 dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), NULL, 0); in ila_output() 84 if (IS_ERR(dst)) { in ila_output() 85 err = PTR_ERR(dst); in ila_output() 90 dst_cache_set_ip6(&ilwt->dst_cache, dst, &fl6.saddr); in ila_output() [all …]
|
/net/ethtool/ |
D | netlink.h | 73 static inline void ethnl_update_u32(u32 *dst, const struct nlattr *attr, in ethnl_update_u32() argument 81 if (*dst == val) in ethnl_update_u32() 84 *dst = val; in ethnl_update_u32() 99 static inline void ethnl_update_u8(u8 *dst, const struct nlattr *attr, in ethnl_update_u8() argument 107 if (*dst == val) in ethnl_update_u8() 110 *dst = val; in ethnl_update_u8() 125 static inline void ethnl_update_bool32(u32 *dst, const struct nlattr *attr, in ethnl_update_bool32() argument 133 if (!!*dst == val) in ethnl_update_bool32() 136 *dst = val; in ethnl_update_bool32() 152 static inline void ethnl_update_binary(void *dst, unsigned int len, in ethnl_update_binary() argument [all …]
|
/net/ipv6/netfilter/ |
D | nf_reject_ipv6.c | 265 struct dst_entry *dst = NULL; in nf_reject6_fill_skb_dst() local 270 nf_ip6_route(dev_net(skb_in->dev), &dst, &fl, false); in nf_reject6_fill_skb_dst() 271 if (!dst) in nf_reject6_fill_skb_dst() 274 skb_dst_set(skb_in, dst); in nf_reject6_fill_skb_dst() 288 struct dst_entry *dst = NULL; in nf_send_reset6() local 309 nf_ip6_route(net, &dst, flowi6_to_flowi(&fl6), false); in nf_send_reset6() 310 if (!dst) in nf_send_reset6() 312 skb_dst_set(oldskb, dst); in nf_send_reset6() 318 dst = ip6_route_output(net, NULL, &fl6); in nf_send_reset6() 319 if (dst->error) { in nf_send_reset6() [all …]
|