/net/netfilter/ |
H A D | nf_conntrack_l3proto_generic.c | 35 struct nf_conntrack_tuple *tuple) 37 memset(&tuple->src.u3, 0, sizeof(tuple->src.u3)); 38 memset(&tuple->dst.u3, 0, sizeof(tuple->dst.u3)); 43 static bool generic_invert_tuple(struct nf_conntrack_tuple *tuple, argument 46 memset(&tuple->src.u3, 0, sizeof(tuple->src.u3)); 47 memset(&tuple->dst.u3, 0, sizeof(tuple 34 generic_pkt_to_tuple(const struct sk_buff *skb, unsigned int nhoff, struct nf_conntrack_tuple *tuple) argument 52 generic_print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple) argument [all...] |
H A D | nf_nat_proto_unknown.c | 20 static bool unknown_in_range(const struct nf_conntrack_tuple *tuple, argument 29 struct nf_conntrack_tuple *tuple, 44 const struct nf_conntrack_tuple *tuple, 28 unknown_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 41 unknown_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_nat_proto_common.c | 20 bool nf_nat_l4proto_in_range(const struct nf_conntrack_tuple *tuple, argument 28 port = tuple->src.u.all; 30 port = tuple->dst.u.all; 38 struct nf_conntrack_tuple *tuple, 49 portptr = &tuple->src.u.all; 51 portptr = &tuple->dst.u.all; 78 off = l3proto->secure_port(tuple, maniptype == NF_NAT_MANIP_SRC 79 ? tuple->dst.u.all 80 : tuple->src.u.all); 89 if (++i != range_size && nf_nat_used_tuple(tuple, c 37 nf_nat_l4proto_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct, u16 *rover) argument [all...] |
H A D | nf_conntrack_tftp.c | 46 struct nf_conntrack_tuple *tuple; local 59 nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple); 60 nf_ct_dump_tuple(&ct->tuplehash[IP_CT_DIR_REPLY].tuple); 67 tuple = &ct->tuplehash[IP_CT_DIR_REPLY].tuple; 70 &tuple->src.u3, &tuple->dst.u3, 71 IPPROTO_UDP, NULL, &tuple->dst.u.udp.port); 74 nf_ct_dump_tuple(&exp->tuple); 125 tftp[i][0].tuple [all...] |
H A D | nf_nat_proto_tcp.c | 25 struct nf_conntrack_tuple *tuple, 30 nf_nat_l4proto_unique_tuple(l3proto, tuple, range, maniptype, ct, 38 const struct nf_conntrack_tuple *tuple, 58 newport = tuple->src.u.tcp.port; 62 newport = tuple->dst.u.tcp.port; 72 l3proto->csum_update(skb, iphdroff, &hdr->check, tuple, maniptype); 24 tcp_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 35 tcp_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_nat_proto_udp.c | 24 struct nf_conntrack_tuple *tuple, 29 nf_nat_l4proto_unique_tuple(l3proto, tuple, range, maniptype, ct, 37 const struct nf_conntrack_tuple *tuple, 49 newport = tuple->src.u.udp.port; 53 newport = tuple->dst.u.udp.port; 58 tuple, maniptype); 23 udp_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 34 udp_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_nat_proto_udplite.c | 24 struct nf_conntrack_tuple *tuple, 29 nf_nat_l4proto_unique_tuple(l3proto, tuple, range, maniptype, ct, 37 const struct nf_conntrack_tuple *tuple, 50 newport = tuple->src.u.udp.port; 54 newport = tuple->dst.u.udp.port; 58 l3proto->csum_update(skb, iphdroff, &hdr->check, tuple, maniptype); 23 udplite_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 34 udplite_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | xt_conntrack.c | 47 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3, 56 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u3, 65 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.src.u3, 74 return conntrack_addrcmp(&ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u3, 82 const struct nf_conntrack_tuple *tuple; local 84 tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; 92 (tuple->src.u.all == info->origsrc_port) ^ 97 (tuple->dst.u.all == info->origdst_port) ^ 101 tuple 126 const struct nf_conntrack_tuple *tuple; local [all...] |
H A D | nf_conntrack_expect.c | 75 static unsigned int nf_ct_expect_dst_hash(const struct nf_conntrack_tuple *tuple) argument 83 hash = jhash2(tuple->dst.u3.all, ARRAY_SIZE(tuple->dst.u3.all), 84 (((tuple->dst.protonum ^ tuple->src.l3num) << 16) | 85 (__force __u16)tuple->dst.u.all) ^ nf_conntrack_hash_rnd); 92 const struct nf_conntrack_tuple *tuple) 100 h = nf_ct_expect_dst_hash(tuple); 102 if (nf_ct_tuple_mask_cmp(tuple, &i->tuple, 91 __nf_ct_expect_find(struct net *net, u16 zone, const struct nf_conntrack_tuple *tuple) argument 112 nf_ct_expect_find_get(struct net *net, u16 zone, const struct nf_conntrack_tuple *tuple) argument 130 nf_ct_find_expectation(struct net *net, u16 zone, const struct nf_conntrack_tuple *tuple) argument [all...] |
H A D | nf_nat_proto_sctp.c | 21 struct nf_conntrack_tuple *tuple, 26 nf_nat_l4proto_unique_tuple(l3proto, tuple, range, maniptype, ct, 34 const struct nf_conntrack_tuple *tuple, 46 hdr->source = tuple->src.u.sctp.port; 49 hdr->dest = tuple->dst.u.sctp.port; 20 sctp_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 31 sctp_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_conntrack_irc.c | 117 struct nf_conntrack_tuple *tuple; local 187 tuple = &ct->tuplehash[dir].tuple; 188 if (tuple->src.u3.ip != dcc_ip && 189 tuple->dst.u3.ip != dcc_ip) { 191 &tuple->src.u3.ip, 203 tuple = &ct->tuplehash[!dir].tuple; 206 tuple->src.l3num, 207 NULL, &tuple [all...] |
H A D | nf_nat_proto_dccp.c | 27 struct nf_conntrack_tuple *tuple, 32 nf_nat_l4proto_unique_tuple(l3proto, tuple, range, maniptype, ct, 40 const struct nf_conntrack_tuple *tuple, 56 newport = tuple->src.u.dccp.port; 59 newport = tuple->dst.u.dccp.port; 70 tuple, maniptype); 26 dccp_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 37 dccp_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_conntrack_sane.c | 74 struct nf_conntrack_tuple *tuple; local 146 tuple = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; 148 &tuple->src.u3, &tuple->dst.u3, 152 nf_ct_dump_tuple(&exp->tuple); 183 sane[i][j].tuple.src.l3num, ports[i]); 205 sane[i][0].tuple.src.l3num = PF_INET; 206 sane[i][1].tuple.src.l3num = PF_INET6; 209 sane[i][j].tuple [all...] |
H A D | nf_nat_sip.c | 105 if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.src.u3, addr) && 106 ct->tuplehash[dir].tuple.src.u.udp.port == port) { 107 newaddr = ct->tuplehash[!dir].tuple.dst.u3; 108 newport = ct->tuplehash[!dir].tuple.dst.u.udp.port; 109 } else if (nf_inet_addr_cmp(&ct->tuplehash[dir].tuple.dst.u3, addr) && 110 ct->tuplehash[dir].tuple.dst.u.udp.port == port) { 111 newaddr = ct->tuplehash[!dir].tuple.src.u3; 113 ct->tuplehash[!dir].tuple.src.u.udp.port; 187 &ct->tuplehash[dir].tuple.src.u3) || 188 port != ct->tuplehash[dir].tuple [all...] |
H A D | nf_conntrack_broadcast.c | 62 exp->tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple; 63 exp->tuple.src.u.udp.port = help->helper->tuple.src.u.udp.port;
|
H A D | nf_conntrack_netbios_ns.c | 51 .tuple.src.l3num = NFPROTO_IPV4, 52 .tuple.src.u.udp.port = cpu_to_be16(NMBD_PORT), 53 .tuple.dst.protonum = IPPROTO_UDP,
|
H A D | nf_conntrack_snmp.c | 58 .tuple.src.l3num = NFPROTO_IPV4, 59 .tuple.src.u.udp.port = cpu_to_be16(SNMP_PORT), 60 .tuple.dst.protonum = IPPROTO_UDP,
|
/net/ipv6/netfilter/ |
H A D | nf_nat_proto_icmpv6.c | 23 icmpv6_in_range(const struct nf_conntrack_tuple *tuple, argument 28 return ntohs(tuple->src.u.icmp.id) >= ntohs(min->icmp.id) && 29 ntohs(tuple->src.u.icmp.id) <= ntohs(max->icmp.id); 34 struct nf_conntrack_tuple *tuple, 50 tuple->src.u.icmp.id = htons(ntohs(range->min_proto.icmp.id) + 52 if (++i == range_size || !nf_nat_used_tuple(tuple, ct)) 61 const struct nf_conntrack_tuple *tuple, 71 tuple, maniptype); 76 tuple->src.u.icmp.id, 0); 77 hdr->icmp6_identifier = tuple 33 icmpv6_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 58 icmpv6_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument [all...] |
H A D | nf_conntrack_l3proto_ipv6.c | 38 struct nf_conntrack_tuple *tuple) 48 memcpy(tuple->src.u3.ip6, ap, sizeof(tuple->src.u3.ip6)); 49 memcpy(tuple->dst.u3.ip6, ap + 4, sizeof(tuple->dst.u3.ip6)); 54 static bool ipv6_invert_tuple(struct nf_conntrack_tuple *tuple, argument 57 memcpy(tuple->src.u3.ip6, orig->dst.u3.ip6, sizeof(tuple->src.u3.ip6)); 58 memcpy(tuple->dst.u3.ip6, orig->src.u3.ip6, sizeof(tuple 37 ipv6_pkt_to_tuple(const struct sk_buff *skb, unsigned int nhoff, struct nf_conntrack_tuple *tuple) argument 63 ipv6_print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple) argument 247 struct nf_conntrack_tuple tuple = { .src.l3num = NFPROTO_IPV6 }; local 290 ipv6_tuple_to_nlattr(struct sk_buff *skb, const struct nf_conntrack_tuple *tuple) argument [all...] |
/net/ipv4/netfilter/ |
H A D | nf_nat_proto_icmp.c | 21 icmp_in_range(const struct nf_conntrack_tuple *tuple, argument 26 return ntohs(tuple->src.u.icmp.id) >= ntohs(min->icmp.id) && 27 ntohs(tuple->src.u.icmp.id) <= ntohs(max->icmp.id); 32 struct nf_conntrack_tuple *tuple, 48 tuple->src.u.icmp.id = htons(ntohs(range->min_proto.icmp.id) + 50 if (++i == range_size || !nf_nat_used_tuple(tuple, ct)) 60 const struct nf_conntrack_tuple *tuple, 70 hdr->un.echo.id, tuple->src.u.icmp.id, 0); 71 hdr->un.echo.id = tuple->src.u.icmp.id; 31 icmp_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 57 icmp_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_nat_h323.c | 106 if (addr.ip == ct->tuplehash[dir].tuple.src.u3.ip && 119 &ct->tuplehash[!dir].tuple.dst.u3.ip, 124 tuple.dst.u3, 126 } else if (addr.ip == ct->tuplehash[dir].tuple.dst.u3.ip && 131 &ct->tuplehash[!dir].tuple.src.u3.ip, 136 tuple.src.u3, 158 addr.ip == ct->tuplehash[dir].tuple.src.u3.ip && 159 port == ct->tuplehash[dir].tuple.src.u.udp.port) { 162 &ct->tuplehash[!dir].tuple.dst.u3.ip, 163 ntohs(ct->tuplehash[!dir].tuple [all...] |
H A D | nf_conntrack_l3proto_ipv4.c | 35 struct nf_conntrack_tuple *tuple) 44 tuple->src.u3.ip = ap[0]; 45 tuple->dst.u3.ip = ap[1]; 50 static bool ipv4_invert_tuple(struct nf_conntrack_tuple *tuple, argument 53 tuple->src.u3.ip = orig->dst.u3.ip; 54 tuple->dst.u3.ip = orig->src.u3.ip; 60 const struct nf_conntrack_tuple *tuple) 63 &tuple->src.u3.ip, &tuple->dst.u3.ip); 269 struct nf_conntrack_tuple tuple; local 34 ipv4_pkt_to_tuple(const struct sk_buff *skb, unsigned int nhoff, struct nf_conntrack_tuple *tuple) argument 59 ipv4_print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple) argument 322 ipv4_tuple_to_nlattr(struct sk_buff *skb, const struct nf_conntrack_tuple *tuple) argument [all...] |
H A D | nf_nat_proto_gre.c | 40 /* generate unique tuple ... */ 43 struct nf_conntrack_tuple *tuple, 58 keyptr = &tuple->src.u.gre.key; 60 keyptr = &tuple->dst.u.gre.key; 75 if (++i == range_size || !nf_nat_used_tuple(tuple, ct)) 88 const struct nf_conntrack_tuple *tuple, 112 pr_debug("call_id -> 0x%04x\n", ntohs(tuple->dst.u.gre.key)); 113 pgreh->call_id = tuple->dst.u.gre.key; 42 gre_unique_tuple(const struct nf_nat_l3proto *l3proto, struct nf_conntrack_tuple *tuple, const struct nf_nat_range *range, enum nf_nat_manip_type maniptype, const struct nf_conn *ct) argument 85 gre_manip_pkt(struct sk_buff *skb, const struct nf_nat_l3proto *l3proto, unsigned int iphdroff, unsigned int hdroff, const struct nf_conntrack_tuple *tuple, enum nf_nat_manip_type maniptype) argument
|
H A D | nf_conntrack_proto_icmp.c | 33 struct nf_conntrack_tuple *tuple) 42 tuple->dst.u.icmp.type = hp->type; 43 tuple->src.u.icmp.id = hp->un.echo.id; 44 tuple->dst.u.icmp.code = hp->code; 61 static bool icmp_invert_tuple(struct nf_conntrack_tuple *tuple, argument 68 tuple->src.u.icmp.id = orig->src.u.icmp.id; 69 tuple->dst.u.icmp.type = invmap[orig->dst.u.icmp.type] - 1; 70 tuple->dst.u.icmp.code = orig->dst.u.icmp.code; 74 /* Print out the per-protocol part of the tuple. */ 76 const struct nf_conntrack_tuple *tuple) 32 icmp_pkt_to_tuple(const struct sk_buff *skb, unsigned int dataoff, struct nf_conntrack_tuple *tuple) argument 75 icmp_print_tuple(struct seq_file *s, const struct nf_conntrack_tuple *tuple) argument 253 icmp_nlattr_to_tuple(struct nlattr *tb[], struct nf_conntrack_tuple *tuple) argument [all...] |
/net/netfilter/ipvs/ |
H A D | ip_vs_nfct.c | 107 * CIP->VIP will remain the same, so leave the tuple in 111 new_tuple = ct->tuplehash[IP_CT_DIR_REPLY].tuple; 130 ARG_TUPLE(&ct->tuplehash[IP_CT_DIR_REPLY].tuple), 151 if (exp->tuple.src.l3num != PF_INET) 163 orig = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple; 164 ip_vs_conn_fill_param(net, exp->tuple.src.l3num, orig->dst.protonum, 170 new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple; 190 new_reply = ct->tuplehash[IP_CT_DIR_REPLY].tuple; 206 IP_VS_DBG(7, "%s: ct=%p, status=0x%lX, tuple=" FMT_TUPLE 246 IP_VS_DBG(7, "%s: ct=%p, expect tuple 260 struct nf_conntrack_tuple tuple; local [all...] |