/linux-master/include/net/netfilter/ |
H A D | nf_tables_ipv4.h | 15 pkt->thoff = ip_hdrlen(pkt->skb); 22 u32 len, thoff; local 33 thoff = skb_network_offset(pkt->skb) + (iph->ihl * 4); 36 else if (len < thoff) 38 else if (thoff < sizeof(*iph)) 43 pkt->thoff = thoff; 58 u32 len, thoff; local 68 thoff = iph->ihl * 4; 72 } else if (len < thoff) { [all...] |
H A D | nf_tables_ipv6.h | 12 int protohdr, thoff = 0; local 15 protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, &flags); 16 if (protohdr < 0 || thoff > U16_MAX) { 23 pkt->thoff = thoff; 32 unsigned int thoff = 0; local 49 protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, &flags); 50 if (protohdr < 0 || thoff > U16_MAX) 55 pkt->thoff = thoff; 75 unsigned int thoff = 0; local [all...] |
H A D | nf_tproxy.h | 97 * @thoff: Transport protocol header offset. 114 nf_tproxy_handle_time_wait6(struct sk_buff *skb, int tproto, int thoff, 121 nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff,
|
/linux-master/net/netfilter/ |
H A D | nf_flow_table_ip.c | 23 struct sk_buff *skb, unsigned int thoff) 30 tcph = (void *)(skb_network_header(skb) + thoff); 39 static void nf_flow_nat_ip_tcp(struct sk_buff *skb, unsigned int thoff, argument 44 tcph = (void *)(skb_network_header(skb) + thoff); 48 static void nf_flow_nat_ip_udp(struct sk_buff *skb, unsigned int thoff, argument 53 udph = (void *)(skb_network_header(skb) + thoff); 63 unsigned int thoff, __be32 addr, 68 nf_flow_nat_ip_tcp(skb, thoff, addr, new_addr); 71 nf_flow_nat_ip_udp(skb, thoff, addr, new_addr); 78 unsigned int thoff, enu 22 nf_flow_state_check(struct flow_offload *flow, int proto, struct sk_buff *skb, unsigned int thoff) argument 62 nf_flow_nat_ip_l4proto(struct sk_buff *skb, struct iphdr *iph, unsigned int thoff, __be32 addr, __be32 new_addr) argument 76 nf_flow_snat_ip(const struct flow_offload *flow, struct sk_buff *skb, struct iphdr *iph, unsigned int thoff, enum flow_offload_tuple_dir dir) argument 99 nf_flow_dnat_ip(const struct flow_offload *flow, struct sk_buff *skb, struct iphdr *iph, unsigned int thoff, enum flow_offload_tuple_dir dir) argument 122 nf_flow_nat_ip(const struct flow_offload *flow, struct sk_buff *skb, unsigned int thoff, enum flow_offload_tuple_dir dir, struct iphdr *iph) argument 136 ip_has_options(unsigned int thoff) argument 177 unsigned int thoff; local 368 unsigned int thoff, mtu; local 470 nf_flow_nat_ipv6_tcp(struct sk_buff *skb, unsigned int thoff, struct in6_addr *addr, struct in6_addr *new_addr, struct ipv6hdr *ip6h) argument 482 nf_flow_nat_ipv6_udp(struct sk_buff *skb, unsigned int thoff, struct in6_addr *addr, struct in6_addr *new_addr) argument 497 nf_flow_nat_ipv6_l4proto(struct sk_buff *skb, struct ipv6hdr *ip6h, unsigned int thoff, struct in6_addr *addr, struct in6_addr *new_addr) argument 511 nf_flow_snat_ipv6(const struct flow_offload *flow, struct sk_buff *skb, struct ipv6hdr *ip6h, unsigned int thoff, enum flow_offload_tuple_dir dir) argument 534 nf_flow_dnat_ipv6(const struct flow_offload *flow, struct sk_buff *skb, struct ipv6hdr *ip6h, unsigned int thoff, enum flow_offload_tuple_dir dir) argument 562 unsigned int thoff = sizeof(*ip6h); local 579 unsigned int thoff; local 647 unsigned int thoff, mtu; local [all...] |
H A D | xt_l2tp.c | 79 static bool l2tp_udp_mt(const struct sk_buff *skb, struct xt_action_param *par, u16 thoff) argument 83 int offs = thoff + uhlen; 139 static bool l2tp_ip_mt(const struct sk_buff *skb, struct xt_action_param *par, u16 thoff) argument 147 lh = skb_header_pointer(skb, thoff, sizeof(lhbuf), &lhbuf); 155 lh = skb_header_pointer(skb, thoff + 8, sizeof(lhbuf), 178 return l2tp_udp_mt(skb, par, par->thoff); 180 return l2tp_ip_mt(skb, par, par->thoff); 189 unsigned int thoff = 0; local 193 ipproto = ipv6_find_hdr(skb, &thoff, -1, &fragoff, NULL); 200 return l2tp_udp_mt(skb, par, thoff); [all...] |
H A D | nft_inner.c | 56 u32 nhoff, thoff; local 129 thoff = nhoff + (iph->ihl * 4); 132 ctx->inner_thoff = thoff; 153 thoff = nhoff; 154 l4proto = ipv6_find_hdr(pkt->skb, &thoff, -1, &fragoff, &fh_flags); 155 if (l4proto < 0 || thoff > U16_MAX) 159 thoff = nhoff + sizeof(_ip6h); 161 ctx->inner_thoff = thoff; 178 ctx->inner_tunoff = pkt->thoff;
|
H A D | xt_tcpmss.c | 36 th = skb_header_pointer(skb, par->thoff, sizeof(_tcph), &_tcph); 49 op = skb_header_pointer(skb, par->thoff + sizeof(*th), optlen, _opt);
|
H A D | xt_TPROXY.c | 113 int thoff = 0; local 116 tproto = ipv6_find_hdr(skb, &thoff, -1, NULL, NULL); 120 hp = skb_header_pointer(skb, thoff, sizeof(_hdr), &_hdr); 128 sk = nf_tproxy_get_sock_v6(xt_net(par), skb, thoff, tproto, 140 sk = nf_tproxy_handle_time_wait6(skb, tproto, thoff, 149 sk = nf_tproxy_get_sock_v6(xt_net(par), skb, thoff,
|
H A D | nf_flow_table_core.c | 457 static void nf_flow_nat_port_tcp(struct sk_buff *skb, unsigned int thoff, argument 462 tcph = (void *)(skb_network_header(skb) + thoff); 466 static void nf_flow_nat_port_udp(struct sk_buff *skb, unsigned int thoff, argument 471 udph = (void *)(skb_network_header(skb) + thoff); 480 static void nf_flow_nat_port(struct sk_buff *skb, unsigned int thoff, argument 485 nf_flow_nat_port_tcp(skb, thoff, port, new_port); 488 nf_flow_nat_port_udp(skb, thoff, port, new_port); 494 struct sk_buff *skb, unsigned int thoff, 500 hdr = (void *)(skb_network_header(skb) + thoff); 515 nf_flow_nat_port(skb, thoff, protoco 493 nf_flow_snat_port(const struct flow_offload *flow, struct sk_buff *skb, unsigned int thoff, u8 protocol, enum flow_offload_tuple_dir dir) argument 519 nf_flow_dnat_port(const struct flow_offload *flow, struct sk_buff *skb, unsigned int thoff, u8 protocol, enum flow_offload_tuple_dir dir) argument [all...] |
H A D | xt_tcpudp.c | 90 th = skb_header_pointer(skb, par->thoff, sizeof(_tcph), &_tcph); 115 if (!tcp_find_option(tcpinfo->option, skb, par->thoff, 142 uh = skb_header_pointer(skb, par->thoff, sizeof(_udph), &_udph); 199 ic = skb_header_pointer(skb, par->thoff, sizeof(_icmph), &_icmph); 226 ic = skb_header_pointer(skb, par->thoff, sizeof(_icmph), &_icmph);
|
H A D | nft_tproxy.c | 91 int thoff = nft_thoff(pkt); local 107 hp = skb_header_pointer(skb, thoff, sizeof(_hdr), &_hdr); 117 sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff, l4proto, 134 sk = nf_tproxy_handle_time_wait6(skb, l4proto, thoff, 143 sk = nf_tproxy_get_sock_v6(nft_net(pkt), skb, thoff,
|
H A D | xt_dccp.c | 105 dh = skb_header_pointer(skb, par->thoff, sizeof(_dh), &_dh); 119 && DCCHECK(match_option(info->option, skb, par->thoff, dh,
|
H A D | xt_ipcomp.c | 50 chdr = skb_header_pointer(skb, par->thoff, sizeof(_comphdr), &_comphdr);
|
H A D | xt_esp.c | 46 eh = skb_header_pointer(skb, par->thoff, sizeof(_esp), &_esp);
|
/linux-master/tools/testing/selftests/bpf/progs/ |
H A D | bpf_flow.c | 98 __u16 thoff = skb->flow_keys->thoff; local 102 if (thoff > (USHRT_MAX - hdr_size)) 105 hdr = data + thoff; 109 if (bpf_skb_load_bytes(skb, thoff, buffer, hdr_size)) 202 keys->thoff += sizeof(*gre); /* Step over GRE Flags and Proto */ 204 keys->thoff += 4; /* Step over chksum and Padding */ 206 keys->thoff += 4; /* Step over key */ 208 keys->thoff += 4; /* Step over sequence number */ 220 keys->thoff [all...] |
/linux-master/net/ipv6/netfilter/ |
H A D | nf_socket_ipv6.c | 105 int thoff = 0, tproto; local 107 tproto = ipv6_find_hdr(skb, &thoff, -1, NULL, NULL); 117 hp = skb_header_pointer(skb, thoff, tproto == IPPROTO_UDP ? 128 thoff + __tcp_hdrlen((struct tcphdr *)hp) : 129 thoff + sizeof(*hp); 132 if (extract_icmp6_fields(skb, thoff, &tproto, &saddr, &daddr,
|
H A D | nf_tproxy_ipv6.c | 39 nf_tproxy_handle_time_wait6(struct sk_buff *skb, int tproto, int thoff, argument 48 hp = skb_header_pointer(skb, thoff, sizeof(_hdr), &_hdr); 59 sk2 = nf_tproxy_get_sock_v6(net, skb, thoff, tproto, 76 nf_tproxy_get_sock_v6(struct net *net, struct sk_buff *skb, int thoff, argument 90 hp = skb_header_pointer(skb, thoff, 98 thoff + __tcp_hdrlen(hp),
|
H A D | nf_reject_ipv6.c | 18 int thoff; local 30 thoff = ipv6_skip_exthdr(skb, ((u8*)(ip6h+1) - skb->data), &proto, &fo); 31 if (thoff < 0 || thoff >= skb->len || (fo & htons(~0x7)) != 0) 34 if (!nf_reject_verify_csum(skb, thoff, proto)) 37 return nf_ip6_checksum(skb, hook, thoff, proto) == 0; 384 int thoff; local 392 thoff = ipv6_skip_exthdr(skb, ((u8 *)(ip6h + 1) - skb->data), &proto, &fo); 394 if (thoff < 0 || thoff > [all...] |
H A D | ip6t_SYNPROXY.c | 21 if (nf_ip6_checksum(skb, xt_hooknum(par), par->thoff, IPPROTO_TCP)) 24 th = skb_header_pointer(skb, par->thoff, sizeof(_th), &_th); 28 if (!synproxy_parse_options(skb, par->thoff, th, &opts))
|
H A D | ip6t_mh.c | 41 mh = skb_header_pointer(skb, par->thoff, sizeof(_mh), &_mh);
|
/linux-master/net/ipv6/ |
H A D | tcpv6_offload.c | 30 INDIRECT_CALLABLE_SCOPE int tcp6_gro_complete(struct sk_buff *skb, int thoff) argument 35 th->check = ~tcp_v6_check(skb->len - thoff, &iph->saddr,
|
/linux-master/tools/testing/selftests/bpf/prog_tests/ |
H A D | flow_dissector.c | 22 "thoff=%u/%u " \ 33 got.thoff, expected.thoff, \ 125 .thoff = ETH_HLEN + sizeof(struct iphdr), 146 .thoff = ETH_HLEN + sizeof(struct ipv6hdr), 169 .thoff = ETH_HLEN + VLAN_HLEN + sizeof(struct iphdr), 192 .thoff = ETH_HLEN + VLAN_HLEN * 2 + 217 .thoff = ETH_HLEN + sizeof(struct iphdr), 243 .thoff = ETH_HLEN + sizeof(struct iphdr), 266 .thoff [all...] |
/linux-master/net/ipv4/netfilter/ |
H A D | ipt_SYNPROXY.c | 21 if (nf_ip_checksum(skb, xt_hooknum(par), par->thoff, IPPROTO_TCP)) 24 th = skb_header_pointer(skb, par->thoff, sizeof(_th), &_th); 28 if (!synproxy_parse_options(skb, par->thoff, th, &opts))
|
H A D | ipt_ah.c | 40 ah = skb_header_pointer(skb, par->thoff, sizeof(_ahdr), &_ahdr);
|
/linux-master/net/sched/ |
H A D | em_ipset.c | 67 acpar.thoff = ip_hdrlen(skb); 73 /* doesn't call ipv6_find_hdr() because ipset doesn't use thoff, yet */ 74 acpar.thoff = sizeof(struct ipv6hdr);
|