| /linux/net/netfilter/ |
| H A D | nf_flow_table_ip.c | 92 new_addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_v4.s_addr; in nf_flow_snat_ip() 97 new_addr = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.src_v4.s_addr; in nf_flow_snat_ip() 115 new_addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.src_v4.s_addr; in nf_flow_dnat_ip() 120 new_addr = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.dst_v4.s_addr; in nf_flow_dnat_ip() 426 struct flow_offload_tuple_rhash *tuplehash) in nf_flow_encap_pop() argument 431 for (i = 0; i < tuplehash->tuple.encap_num; i++) { in nf_flow_encap_pop() 470 struct flow_offload_tuple_rhash *tuplehash, in nf_flow_offload_forward() argument 478 dir = tuplehash->tuple.dir; in nf_flow_offload_forward() 479 flow = container_of(tuplehash, struct flow_offload, tuplehash[dir]); in nf_flow_offload_forward() 481 mtu = flow->tuplehash[dir].tuple.mtu + ctx->offset; in nf_flow_offload_forward() [all …]
|
| H A D | nf_nat_sip.c | 112 if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3, addr) && in map_addr() 113 ct->tuplehash[dir].tuple.src.u.udp.port == port) { in map_addr() 114 newaddr = ct->tuplehash[!dir].tuple.dst.u3; in map_addr() 115 newport = ct->tuplehash[!dir].tuple.dst.u.udp.port; in map_addr() 116 } else if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, addr) && in map_addr() 117 ct->tuplehash[dir].tuple.dst.u.udp.port == port) { in map_addr() 118 newaddr = ct->tuplehash[!dir].tuple.src.u3; in map_addr() 120 ct->tuplehash[!dir].tuple.src.u.udp.port; in map_addr() 197 &ct->tuplehash[dir].tuple.src.u3) || in nf_nat_sip() 198 port != ct->tuplehash[dir].tuple.src.u.udp.port) in nf_nat_sip() [all …]
|
| H A D | nf_flow_table_core.c | 25 struct flow_offload_tuple *ft = &flow->tuplehash[dir].tuple; in flow_offload_fill_dir() 26 struct nf_conntrack_tuple *ctt = &flow->ct->tuplehash[dir].tuple; in flow_offload_fill_dir() 101 struct flow_offload_tuple *flow_tuple = &flow->tuplehash[dir].tuple; in flow_offload_fill_route() 161 dst_release(flow->tuplehash[dir].tuple.dst_cache); in nft_flow_dst_release() 284 const struct flow_offload_tuple_rhash *tuplehash = data; in flow_offload_hash_obj() local 286 return jhash(&tuplehash->tuple, offsetof(struct flow_offload_tuple, __hash), seed); in flow_offload_hash_obj() 335 &flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].node, in flow_offload_add() 342 &flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].node, in flow_offload_add() 346 &flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].node, in flow_offload_add() 384 &flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].node, in flow_offload_del() [all …]
|
| H A D | nf_conntrack_h323_main.c | 226 memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) || in expect_rtp_rtcp() 238 &ct->tuplehash[!dir].tuple.src.u3, in expect_rtp_rtcp() 239 &ct->tuplehash[!dir].tuple.dst.u3, in expect_rtp_rtcp() 248 &ct->tuplehash[!dir].tuple.src.u3, in expect_rtp_rtcp() 249 &ct->tuplehash[!dir].tuple.dst.u3, in expect_rtp_rtcp() 253 if (memcmp(&ct->tuplehash[dir].tuple.src.u3, in expect_rtp_rtcp() 254 &ct->tuplehash[!dir].tuple.dst.u3, in expect_rtp_rtcp() 255 sizeof(ct->tuplehash[dir].tuple.src.u3)) && in expect_rtp_rtcp() 299 memcmp(&addr, &ct->tuplehash[dir].tuple.src.u3, sizeof(addr)) || in expect_t120() 307 &ct->tuplehash[!dir].tuple.src.u3, in expect_t120() [all …]
|
| H A D | nf_nat_proto.c | 364 nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple); in nf_nat_manip_pkt() 540 &ct->tuplehash[!dir].tuple, !manip)) in nf_nat_icmp_reply_translation() 553 nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple); in nf_nat_icmp_reply_translation() 660 return ct->tuplehash[!dir].tuple.dst.u.all != sport; in nf_nat_inet_port_was_mangled() 715 if (ct->tuplehash[dir].tuple.src.u3.ip != in nf_nat_ipv4_out() 716 ct->tuplehash[!dir].tuple.dst.u3.ip || in nf_nat_ipv4_out() 717 (ct->tuplehash[dir].tuple.dst.protonum != IPPROTO_ICMP && in nf_nat_ipv4_out() 718 ct->tuplehash[dir].tuple.src.u.all != in nf_nat_ipv4_out() 719 ct->tuplehash[!dir].tuple.dst.u.all)) { in nf_nat_ipv4_out() 746 if (ct->tuplehash[dir].tuple.dst.u3.ip != in nf_nat_ipv4_local_fn() [all …]
|
| H A D | nf_flow_table_offload.c | 248 this_tuple = &flow->tuplehash[dir].tuple; in flow_offload_eth_src() 255 other_tuple = &flow->tuplehash[!dir].tuple; in flow_offload_eth_src() 301 this_tuple = &flow->tuplehash[dir].tuple; in flow_offload_eth_dst() 308 other_tuple = &flow->tuplehash[!dir].tuple; in flow_offload_eth_dst() 357 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_v4.s_addr; in flow_offload_ipv4_snat() 361 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.src_v4.s_addr; in flow_offload_ipv4_snat() 388 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.src_v4.s_addr; in flow_offload_ipv4_dnat() 392 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.dst_v4.s_addr; in flow_offload_ipv4_dnat() 434 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_v6.s6_addr32; in flow_offload_ipv6_snat() 438 addr = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.src_v6.s6_addr32; in flow_offload_ipv6_snat() [all …]
|
| H A D | xt_conntrack.c | 44 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3, in conntrack_mt_origsrc() 53 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u3, in conntrack_mt_origdst() 62 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.src.u3, in conntrack_mt_replsrc() 71 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3, in conntrack_mt_repldst() 81 tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in ct_proto_port_check() 98 tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple; in ct_proto_port_check() 125 tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in ct_proto_port_check_v3() 144 tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple; in ct_proto_port_check_v3()
|
| H A D | nf_conntrack_core.c | 491 d = (unsigned long)siphash(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple, in nf_ct_get_id() 492 sizeof(ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple), in nf_ct_get_id() 510 hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode); in clean_from_lists() 511 hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode); in clean_from_lists() 629 &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple, in __nf_ct_delete_from_lists() 632 &ct->tuplehash[IP_CT_DIR_REPLY].tuple, in __nf_ct_delete_from_lists() 656 hlist_nulls_add_head_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode, in nf_ct_add_to_ecache_list() 723 return nf_ct_tuple_equal(&ct1->tuplehash[IP_CT_DIR_ORIGINAL].tuple, in nf_ct_match() 724 &ct2->tuplehash[IP_CT_DIR_ORIGINAL].tuple) && in nf_ct_match() 725 nf_ct_tuple_equal(&ct1->tuplehash[IP_CT_DIR_REPLY].tuple, in nf_ct_match() [all …]
|
| H A D | nf_conntrack_tftp.c | 53 nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple); in tftp_help() 54 nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_REPLY].tuple); in tftp_help() 61 tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple; in tftp_help()
|
| H A D | nf_conntrack_ftp.c | 437 memcpy(cmd.u3.all, &ct->tuplehash[dir].tuple.src.u3.all, in help() 479 daddr = &ct->tuplehash[!dir].tuple.dst.u3; in help() 483 memcmp(&cmd.u3.all, &ct->tuplehash[dir].tuple.src.u3.all, in help() 492 &ct->tuplehash[dir].tuple.src.u3.ip); in help() 496 ct->tuplehash[dir].tuple.src.u3.ip6); in help() 511 &ct->tuplehash[!dir].tuple.src.u3, daddr, in help()
|
| H A D | nf_conntrack_broadcast.c | 67 exp->master_tuple = ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in nf_conntrack_broadcast_help() 68 exp->tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple; in nf_conntrack_broadcast_help()
|
| H A D | nf_flow_table_path.c | 51 const void *daddr = &ct->tuplehash[!dir].tuple.src.u3; in nft_dev_fill_forward_path() 278 fl.u.ip4.daddr = ct->tuplehash[dir].tuple.src.u3.ip; in nft_flow_route() 279 fl.u.ip4.saddr = ct->tuplehash[!dir].tuple.src.u3.ip; in nft_flow_route() 287 fl.u.ip6.daddr = ct->tuplehash[dir].tuple.src.u3.in6; in nft_flow_route() 288 fl.u.ip6.saddr = ct->tuplehash[!dir].tuple.src.u3.in6; in nft_flow_route()
|
| H A D | nf_conntrack_irc.c | 208 tuple = &ct->tuplehash[dir].tuple; in help() 210 ct->tuplehash[!dir].tuple.dst.u3.ip != dcc_ip) || in help() 225 tuple = &ct->tuplehash[!dir].tuple; in help()
|
| H A D | nf_nat_core.c | 58 const struct nf_conntrack_tuple *t = &ct->tuplehash[dir].tuple; in nf_nat_ipv4_decode_session() 87 const struct nf_conntrack_tuple *t = &ct->tuplehash[dir].tuple; in nf_nat_ipv6_decode_session() 291 if (nf_ct_tuple_equal(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple, in nf_nat_used_tuple_new() 292 &ignored_ct->tuplehash[IP_CT_DIR_REPLY].tuple)) in nf_nat_used_tuple_new() 447 t = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in same_src() 470 &ct->tuplehash[IP_CT_DIR_REPLY].tuple); in find_appropriate_src() 782 &ct->tuplehash[IP_CT_DIR_REPLY].tuple); in nf_nat_setup_info() 809 &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple); in nf_nat_setup_info() 836 ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3 : in __nf_nat_alloc_null_binding() 837 ct->tuplehash[IP_CT_DIR_REPLY].tuple.src.u3); in __nf_nat_alloc_null_binding() [all …]
|
| H A D | xt_cluster.c | 18 return (__force u32)ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip; in nf_ct_orig_ipv4_src() 23 return (__force u32 *)ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip6; in nf_ct_orig_ipv6_src()
|
| H A D | nf_conntrack_ecache.c | 77 hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnnode); in ecache_work_evict_list() 78 hlist_nulls_add_head(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode, &evicted_list); in ecache_work_evict_list() 97 hlist_nulls_del_rcu(&ct->tuplehash[IP_CT_DIR_REPLY].hnnode); in ecache_work_evict_list()
|
| H A D | nf_conntrack_pptp.c | 147 &ct->tuplehash[dir].tuple.src.u3, in exp_gre() 148 &ct->tuplehash[dir].tuple.dst.u3, in exp_gre() 156 &ct->tuplehash[dir].tuple.src.u3, in exp_gre() 157 &ct->tuplehash[dir].tuple.dst.u3, in exp_gre()
|
| H A D | nf_nat_helper.c | 190 = ct->master->tuplehash[!exp->dir].tuple.dst.u3; in nf_nat_follow_master() 197 = ct->master->tuplehash[!exp->dir].tuple.src.u3; in nf_nat_follow_master()
|
| /linux/net/ipv4/netfilter/ |
| H A D | nf_nat_h323.c | 108 if (addr.ip == ct->tuplehash[dir].tuple.src.u3.ip && in set_sig_addr() 121 &ct->tuplehash[!dir].tuple.dst.u3.ip, in set_sig_addr() 125 &ct->tuplehash[!dir]. in set_sig_addr() 128 } else if (addr.ip == ct->tuplehash[dir].tuple.dst.u3.ip && in set_sig_addr() 133 &ct->tuplehash[!dir].tuple.src.u3.ip, in set_sig_addr() 137 &ct->tuplehash[!dir]. in set_sig_addr() 160 addr.ip == ct->tuplehash[dir].tuple.src.u3.ip && in set_ras_addr() 161 port == ct->tuplehash[dir].tuple.src.u.udp.port) { in set_ras_addr() 164 &ct->tuplehash[!dir].tuple.dst.u3.ip, in set_ras_addr() 165 ntohs(ct->tuplehash[!dir].tuple.dst.u.udp.port)); in set_ras_addr() [all …]
|
| H A D | nf_nat_snmp_basic_main.c | 136 ctx.from = ct->tuplehash[dir].tuple.src.u3.ip; in snmp_translate() 137 ctx.to = ct->tuplehash[!dir].tuple.dst.u3.ip; in snmp_translate() 139 ctx.from = ct->tuplehash[!dir].tuple.src.u3.ip; in snmp_translate() 140 ctx.to = ct->tuplehash[dir].tuple.dst.u3.ip; in snmp_translate()
|
| H A D | nf_socket_ipv4.c | 141 daddr = ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.ip; in nf_sk_lookup_slow_v4() 143 ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.tcp.port : in nf_sk_lookup_slow_v4() 144 ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.udp.port; in nf_sk_lookup_slow_v4()
|
| /linux/net/netfilter/ipvs/ |
| H A D | ip_vs_nfct.c | 103 new_tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple; in ip_vs_update_conntrack() 121 ARG_TUPLE(&ct->tuplehash[IP_CT_DIR_REPLY].tuple)); in ip_vs_update_conntrack() 156 orig = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in ip_vs_nfct_expect_callback() 166 new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple; in ip_vs_nfct_expect_callback() 182 new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple; in ip_vs_nfct_expect_callback()
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | xdp_flowtable.c | 73 struct flow_offload_tuple_rhash___local *tuplehash; in xdp_flowtable_do_lookup() 140 tuplehash = bpf_xdp_flow_lookup(ctx, &tuple, &opts, sizeof(opts)); in xdp_flowtable_do_lookup() 141 if (!tuplehash) in xdp_flowtable_do_lookup() 70 struct flow_offload_tuple_rhash *tuplehash; xdp_flowtable_do_lookup() local
|
| /linux/net/ipv6/netfilter/ |
| H A D | nf_socket_ipv6.c | 155 daddr = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3.in6; in nf_sk_lookup_slow_v6() 157 ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.tcp.port : in nf_sk_lookup_slow_v6() 158 ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u.udp.port; in nf_sk_lookup_slow_v6()
|
| /linux/net/sched/ |
| H A D | act_ct.c | 209 const struct nf_conntrack_tuple *tuple = &ct->tuplehash[dir].tuple; in tcf_ct_flow_table_add_action_nat() 215 nf_ct_invert_tuple(&target, &ct->tuplehash[!dir].tuple); in tcf_ct_flow_table_add_action_nat() 409 entry->tuplehash[dir].tuple.xmit_type = FLOW_OFFLOAD_XMIT_TC; in tcf_ct_flow_tc_ifidx() 410 entry->tuplehash[dir].tuple.tc.iifidx = act_ct_ext->ifindex[dir]; in tcf_ct_flow_tc_ifidx() 498 tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; in tcf_ct_flow_table_process_conn() 663 struct flow_offload_tuple_rhash *tuplehash; in tcf_ct_flow_table_lookup() local 685 tuplehash = flow_offload_lookup(nf_ft, &tuple); in tcf_ct_flow_table_lookup() 686 if (!tuplehash) in tcf_ct_flow_table_lookup() 689 dir = tuplehash->tuple.dir; in tcf_ct_flow_table_lookup() 690 flow = container_of(tuplehash, struct flow_offload, tuplehash[dir]); in tcf_ct_flow_table_lookup()
|