/linux-4.4.14/net/ipv4/ |
D | inet_lro.c | 39 #define IP_HDR_LEN(iph) (iph->ihl << 2) argument 40 #define TCP_PAYLOAD_LENGTH(iph, tcph) \ argument 41 (ntohs(iph->tot_len) - IP_HDR_LEN(iph) - TCP_HDR_LEN(tcph)) 55 static int lro_tcp_ip_check(const struct iphdr *iph, const struct tcphdr *tcph, in lro_tcp_ip_check() argument 59 if (ntohs(iph->tot_len) != len) in lro_tcp_ip_check() 62 if (TCP_PAYLOAD_LENGTH(iph, tcph) == 0) in lro_tcp_ip_check() 65 if (iph->ihl != IPH_LEN_WO_OPTIONS) in lro_tcp_ip_check() 72 if (INET_ECN_is_ce(ipv4_get_dsfield(iph))) in lro_tcp_ip_check() 105 struct iphdr *iph = lro_desc->iph; in lro_update_tcp_ip_header() local 118 csum_replace2(&iph->check, iph->tot_len, htons(lro_desc->ip_tot_len)); in lro_update_tcp_ip_header() [all …]
|
D | xfrm4_mode_beet.c | 22 struct iphdr *iph = ip_hdr(skb); in xfrm4_beet_make_header() local 24 iph->ihl = 5; in xfrm4_beet_make_header() 25 iph->version = 4; in xfrm4_beet_make_header() 27 iph->protocol = XFRM_MODE_SKB_CB(skb)->protocol; in xfrm4_beet_make_header() 28 iph->tos = XFRM_MODE_SKB_CB(skb)->tos; in xfrm4_beet_make_header() 30 iph->id = XFRM_MODE_SKB_CB(skb)->id; in xfrm4_beet_make_header() 31 iph->frag_off = XFRM_MODE_SKB_CB(skb)->frag_off; in xfrm4_beet_make_header() 32 iph->ttl = XFRM_MODE_SKB_CB(skb)->ttl; in xfrm4_beet_make_header() 86 struct iphdr *iph; in xfrm4_beet_input() local 111 skb_push(skb, sizeof(*iph)); in xfrm4_beet_input() [all …]
|
D | netfilter.c | 22 const struct iphdr *iph = ip_hdr(skb); in ip_route_me_harder() local 25 __be32 saddr = iph->saddr; in ip_route_me_harder() 39 fl4.daddr = iph->daddr; in ip_route_me_harder() 41 fl4.flowi4_tos = RT_TOS(iph->tos); in ip_route_me_harder() 97 const struct iphdr *iph = ip_hdr(skb); in nf_ip_saveroute() local 99 rt_info->tos = iph->tos; in nf_ip_saveroute() 100 rt_info->daddr = iph->daddr; in nf_ip_saveroute() 101 rt_info->saddr = iph->saddr; in nf_ip_saveroute() 112 const struct iphdr *iph = ip_hdr(skb); in nf_ip_reroute() local 114 if (!(iph->tos == rt_info->tos && in nf_ip_reroute() [all …]
|
D | xfrm4_input.c | 29 const struct iphdr *iph = ip_hdr(skb); in xfrm4_rcv_encap_finish() local 31 if (ip_route_input_noref(skb, iph->daddr, iph->saddr, in xfrm4_rcv_encap_finish() 32 iph->tos, skb->dev)) in xfrm4_rcv_encap_finish() 43 struct iphdr *iph = ip_hdr(skb); in xfrm4_transport_finish() local 45 iph->protocol = XFRM_MODE_SKB_CB(skb)->protocol; in xfrm4_transport_finish() 49 return -iph->protocol; in xfrm4_transport_finish() 53 iph->tot_len = htons(skb->len); in xfrm4_transport_finish() 54 ip_send_check(iph); in xfrm4_transport_finish() 73 struct iphdr *iph; in xfrm4_udp_encap_rcv() local 132 iph = ip_hdr(skb); in xfrm4_udp_encap_rcv() [all …]
|
D | ip_input.c | 265 const struct iphdr *iph; in ip_rcv_options() local 280 iph = ip_hdr(skb); in ip_rcv_options() 282 opt->optlen = iph->ihl*4 - sizeof(struct iphdr); in ip_rcv_options() 296 &iph->saddr, in ip_rcv_options() 297 &iph->daddr); in ip_rcv_options() 316 const struct iphdr *iph = ip_hdr(skb); in ip_rcv_finish() local 321 int protocol = iph->protocol; in ip_rcv_finish() 327 iph = ip_hdr(skb); in ip_rcv_finish() 336 int err = ip_route_input_noref(skb, iph->daddr, iph->saddr, in ip_rcv_finish() 337 iph->tos, skb->dev); in ip_rcv_finish() [all …]
|
D | ipip.c | 138 const struct iphdr *iph = (const struct iphdr *)skb->data; in ipip_err() local 146 iph->daddr, iph->saddr, 0); in ipip_err() 164 if (t->parms.iph.daddr == 0) in ipip_err() 168 if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) in ipip_err() 191 const struct iphdr *iph; in ipip_rcv() local 193 iph = ip_hdr(skb); in ipip_rcv() 195 iph->saddr, iph->daddr, 0); in ipip_rcv() 218 const struct iphdr *tiph = &tunnel->parms.iph; in ipip_tunnel_xmit() 249 if (p.iph.version != 4 || p.iph.protocol != IPPROTO_IPIP || in ipip_tunnel_ioctl() 250 p.iph.ihl != 5 || (p.iph.frag_off&htons(~IP_DF))) in ipip_tunnel_ioctl() [all …]
|
D | ah4.c | 78 static int ip_clear_mutable_options(const struct iphdr *iph, __be32 *daddr) in ip_clear_mutable_options() argument 80 unsigned char *optptr = (unsigned char *)(iph+1); in ip_clear_mutable_options() 81 int l = iph->ihl*4 - sizeof(struct iphdr); in ip_clear_mutable_options() 121 struct iphdr *iph; in ah_output_done() local 129 iph = AH_SKB_CB(skb)->tmp; in ah_output_done() 130 icv = ah_tmp_icv(ahp->ahash, iph, ihl); in ah_output_done() 133 top_iph->tos = iph->tos; in ah_output_done() 134 top_iph->ttl = iph->ttl; in ah_output_done() 135 top_iph->frag_off = iph->frag_off; in ah_output_done() 137 top_iph->daddr = iph->daddr; in ah_output_done() [all …]
|
D | ip_vti.c | 57 const struct iphdr *iph = ip_hdr(skb); in vti_input() local 62 iph->saddr, iph->daddr, 0); in vti_input() 173 if (!vti_state_check(dst->xfrm, parms->iph.daddr, parms->iph.saddr)) { in vti_xmit() 255 const struct iphdr *iph = (const struct iphdr *)skb->data; in vti4_err() local 256 int protocol = iph->protocol; in vti4_err() 260 iph->daddr, iph->saddr, 0); in vti4_err() 268 esph = (struct ip_esp_hdr *)(skb->data+(iph->ihl<<2)); in vti4_err() 272 ah = (struct ip_auth_hdr *)(skb->data+(iph->ihl<<2)); in vti4_err() 276 ipch = (struct ip_comp_hdr *)(skb->data+(iph->ihl<<2)); in vti4_err() 293 x = xfrm_state_lookup(net, mark, (const xfrm_address_t *)&iph->daddr, in vti4_err() [all …]
|
D | ip_gre.c | 265 const struct iphdr *iph; in ipgre_err() local 304 iph = (const struct iphdr *)(icmp_hdr(skb) + 1); in ipgre_err() 306 iph->daddr, iph->saddr, tpi->key); in ipgre_err() 311 if (t->parms.iph.daddr == 0 || in ipgre_err() 312 ipv4_is_multicast(t->parms.iph.daddr)) in ipgre_err() 315 if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) in ipgre_err() 389 const struct iphdr *iph; in ipgre_rcv() local 397 iph = ip_hdr(skb); in ipgre_rcv() 399 iph->saddr, iph->daddr, tpi->key); in ipgre_rcv() 629 tnl_params = &tunnel->parms.iph; in ipgre_xmit() [all …]
|
D | ip_output.c | 92 void ip_send_check(struct iphdr *iph) in ip_send_check() argument 94 iph->check = 0; in ip_send_check() 95 iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl); in ip_send_check() 101 struct iphdr *iph = ip_hdr(skb); in __ip_local_out() local 103 iph->tot_len = htons(skb->len); in __ip_local_out() 104 ip_send_check(iph); in __ip_local_out() 141 struct iphdr *iph; in ip_build_and_send_pkt() local 146 iph = ip_hdr(skb); in ip_build_and_send_pkt() 147 iph->version = 4; in ip_build_and_send_pkt() 148 iph->ihl = 5; in ip_build_and_send_pkt() [all …]
|
D | ip_tunnel.c | 164 if (local != t->parms.iph.saddr || in ip_tunnel_lookup() 165 remote != t->parms.iph.daddr || in ip_tunnel_lookup() 179 if (remote != t->parms.iph.daddr || in ip_tunnel_lookup() 180 t->parms.iph.saddr != 0 || in ip_tunnel_lookup() 197 if ((local != t->parms.iph.saddr || t->parms.iph.daddr != 0) && in ip_tunnel_lookup() 198 (local != t->parms.iph.daddr || !ipv4_is_multicast(local))) in ip_tunnel_lookup() 218 t->parms.iph.saddr != 0 || in ip_tunnel_lookup() 219 t->parms.iph.daddr != 0 || in ip_tunnel_lookup() 251 if (parms->iph.daddr && !ipv4_is_multicast(parms->iph.daddr)) in ip_bucket() 252 remote = parms->iph.daddr; in ip_bucket() [all …]
|
D | ip_fragment.c | 102 struct iphdr *iph; member 129 return qp->id == arg->iph->id && in ip4_frag_match() 130 qp->saddr == arg->iph->saddr && in ip4_frag_match() 131 qp->daddr == arg->iph->daddr && in ip4_frag_match() 132 qp->protocol == arg->iph->protocol && in ip4_frag_match() 146 qp->protocol = arg->iph->protocol; in ip4_frag_init() 147 qp->id = arg->iph->id; in ip4_frag_init() 148 qp->ecn = ip4_frag_ecn(arg->iph->tos); in ip4_frag_init() 149 qp->saddr = arg->iph->saddr; in ip4_frag_init() 150 qp->daddr = arg->iph->daddr; in ip4_frag_init() [all …]
|
D | xfrm4_state.c | 59 const struct iphdr *iph = ip_hdr(skb); in xfrm4_extract_header() local 61 XFRM_MODE_SKB_CB(skb)->ihl = sizeof(*iph); in xfrm4_extract_header() 62 XFRM_MODE_SKB_CB(skb)->id = iph->id; in xfrm4_extract_header() 63 XFRM_MODE_SKB_CB(skb)->frag_off = iph->frag_off; in xfrm4_extract_header() 64 XFRM_MODE_SKB_CB(skb)->tos = iph->tos; in xfrm4_extract_header() 65 XFRM_MODE_SKB_CB(skb)->ttl = iph->ttl; in xfrm4_extract_header() 66 XFRM_MODE_SKB_CB(skb)->optlen = iph->ihl * 4 - sizeof(*iph); in xfrm4_extract_header()
|
D | ip_options.c | 46 unsigned char *iph = skb_network_header(skb); in ip_options_build() local 49 memcpy(iph+sizeof(struct iphdr), opt->__data, opt->optlen); in ip_options_build() 53 memcpy(iph+opt->srr+iph[opt->srr+1]-4, &daddr, 4); in ip_options_build() 57 ip_rt_get_source(iph+opt->rr+iph[opt->rr+2]-5, skb, rt); in ip_options_build() 59 ip_rt_get_source(iph+opt->ts+iph[opt->ts+2]-9, skb, rt); in ip_options_build() 65 memcpy(iph+opt->ts+iph[opt->ts+2]-5, &midtime, 4); in ip_options_build() 70 memset(iph+opt->rr, IPOPT_NOP, iph[opt->rr+1]); in ip_options_build() 75 memset(iph+opt->ts, IPOPT_NOP, iph[opt->ts+1]); in ip_options_build() 264 unsigned char *iph; in ip_options_compile() local 272 iph = optptr - sizeof(struct iphdr); in ip_options_compile() [all …]
|
D | xfrm4_policy.c | 109 const struct iphdr *iph = ip_hdr(skb); in _decode_session4() local 110 u8 *xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 121 if (!ip_is_fragment(iph)) { in _decode_session4() 122 switch (iph->protocol) { in _decode_session4() 132 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 145 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 158 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 170 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 182 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() 195 xprth = skb_network_header(skb) + iph->ihl * 4; in _decode_session4() [all …]
|
D | icmp.c | 448 const struct iphdr *iph = ip_hdr(skb); in icmp_multipath_hash_skb() local 450 return fib_multipath_hash(iph->daddr, iph->saddr); in icmp_multipath_hash_skb() 462 const struct iphdr *iph, in icmp_route_lookup() argument 473 param->replyopts.opt.opt.faddr : iph->saddr); in icmp_route_lookup() 570 struct iphdr *iph; in icmp_send() local 591 iph = ip_hdr(skb_in); in icmp_send() 593 if ((u8 *)iph < skb_in->head || in icmp_send() 594 (skb_network_header(skb_in) + sizeof(*iph)) > in icmp_send() 614 if (iph->frag_off & htons(IP_OFFSET)) in icmp_send() 625 if (iph->protocol == IPPROTO_ICMP) { in icmp_send() [all …]
|
D | raw.c | 168 static int raw_v4_input(struct sk_buff *skb, const struct iphdr *iph, int hash) in raw_v4_input() argument 181 sk = __raw_v4_lookup(net, __sk_head(head), iph->protocol, in raw_v4_input() 182 iph->saddr, iph->daddr, in raw_v4_input() 187 if ((iph->protocol != IPPROTO_ICMP || !icmp_filter(sk, skb)) && in raw_v4_input() 188 ip_mc_sf_allow(sk, iph->daddr, iph->saddr, in raw_v4_input() 196 sk = __raw_v4_lookup(net, sk_next(sk), iph->protocol, in raw_v4_input() 197 iph->saddr, iph->daddr, in raw_v4_input() 270 const struct iphdr *iph = (const struct iphdr *)skb->data; in raw_err() local 271 u8 *payload = skb->data + (iph->ihl << 2); in raw_err() 288 const struct iphdr *iph; in raw_icmp_error() local [all …]
|
D | af_inet.c | 1204 struct iphdr *iph; in inet_gso_segment() local 1228 if (unlikely(!pskb_may_pull(skb, sizeof(*iph)))) in inet_gso_segment() 1231 iph = ip_hdr(skb); in inet_gso_segment() 1232 ihl = iph->ihl * 4; in inet_gso_segment() 1233 if (ihl < sizeof(*iph)) in inet_gso_segment() 1236 id = ntohs(iph->id); in inet_gso_segment() 1237 proto = iph->protocol; in inet_gso_segment() 1268 iph = (struct iphdr *)(skb_mac_header(skb) + nhoff); in inet_gso_segment() 1270 iph->id = htons(id); in inet_gso_segment() 1271 iph->frag_off = htons(offset >> 3); in inet_gso_segment() [all …]
|
D | ip_tunnel_core.c | 57 struct iphdr *iph; in iptunnel_xmit() local 70 iph = ip_hdr(skb); in iptunnel_xmit() 72 iph->version = 4; in iptunnel_xmit() 73 iph->ihl = sizeof(struct iphdr) >> 2; in iptunnel_xmit() 74 iph->frag_off = df; in iptunnel_xmit() 75 iph->protocol = proto; in iptunnel_xmit() 76 iph->tos = tos; in iptunnel_xmit() 77 iph->daddr = dst; in iptunnel_xmit() 78 iph->saddr = src; in iptunnel_xmit() 79 iph->ttl = ttl; in iptunnel_xmit() [all …]
|
D | ip_forward.c | 81 struct iphdr *iph; /* Our header */ in ip_forward() local 133 iph = ip_hdr(skb); in ip_forward() 136 ip_decrease_ttl(iph); in ip_forward() 146 skb->priority = rt_tos2priority(iph->tos); in ip_forward()
|
D | xfrm4_mode_transport.c | 23 struct iphdr *iph = ip_hdr(skb); in xfrm4_transport_output() local 24 int ihl = iph->ihl * 4; in xfrm4_transport_output() 31 memmove(skb_network_header(skb), iph, ihl); in xfrm4_transport_output()
|
D | syncookies.c | 178 u32 __cookie_v4_init_sequence(const struct iphdr *iph, const struct tcphdr *th, in __cookie_v4_init_sequence() argument 189 return secure_tcp_syn_cookie(iph->saddr, iph->daddr, in __cookie_v4_init_sequence() 197 const struct iphdr *iph = ip_hdr(skb); in cookie_v4_init_sequence() local 200 return __cookie_v4_init_sequence(iph, th, mssp); in cookie_v4_init_sequence() 207 int __cookie_v4_check(const struct iphdr *iph, const struct tcphdr *th, in __cookie_v4_check() argument 211 __u32 mssind = check_tcp_syn_cookie(cookie, iph->saddr, iph->daddr, in __cookie_v4_check()
|
D | ipmr.c | 372 p.iph.daddr = v->vifc_rmt_addr.s_addr; in ipmr_del_tunnel() 373 p.iph.saddr = v->vifc_lcl_addr.s_addr; in ipmr_del_tunnel() 374 p.iph.version = 4; in ipmr_del_tunnel() 375 p.iph.ihl = 5; in ipmr_del_tunnel() 376 p.iph.protocol = IPPROTO_IPIP; in ipmr_del_tunnel() 405 p.iph.daddr = v->vifc_rmt_addr.s_addr; in ipmr_new_tunnel() 406 p.iph.saddr = v->vifc_lcl_addr.s_addr; in ipmr_new_tunnel() 407 p.iph.version = 4; in ipmr_new_tunnel() 408 p.iph.ihl = 5; in ipmr_new_tunnel() 409 p.iph.protocol = IPPROTO_IPIP; in ipmr_new_tunnel() [all …]
|
D | tcp_offload.c | 39 const struct iphdr *iph = ip_hdr(skb); in tcp4_gso_segment() local 48 __tcp_v4_send_check(skb, iph->saddr, iph->daddr); in tcp4_gso_segment() 306 const struct iphdr *iph = ip_hdr(skb); in tcp4_gro_complete() local 309 th->check = ~tcp_v4_check(skb->len - thoff, iph->saddr, in tcp4_gro_complete() 310 iph->daddr, 0); in tcp4_gro_complete()
|
D | cipso_ipv4.c | 1590 const struct iphdr *iph = ip_hdr(skb); in cipso_v4_optptr() local 1595 for (optlen = iph->ihl*4 - sizeof(struct iphdr); optlen > 0; ) { in cipso_v4_optptr() 2230 struct iphdr *iph; in cipso_v4_skbuff_setattr() local 2260 iph = ip_hdr(skb); in cipso_v4_skbuff_setattr() 2262 memmove((char *)iph - len_delta, iph, iph->ihl << 2); in cipso_v4_skbuff_setattr() 2264 iph = ip_hdr(skb); in cipso_v4_skbuff_setattr() 2266 iph = ip_hdr(skb); in cipso_v4_skbuff_setattr() 2267 memset(iph + 1, IPOPT_NOP, opt->optlen); in cipso_v4_skbuff_setattr() 2269 iph = ip_hdr(skb); in cipso_v4_skbuff_setattr() 2282 memcpy(iph + 1, buf, buf_len); in cipso_v4_skbuff_setattr() [all …]
|
D | route.c | 488 void __ip_select_ident(struct net *net, struct iphdr *iph, int segs) in __ip_select_ident() argument 495 hash = jhash_3words((__force u32)iph->daddr, in __ip_select_ident() 496 (__force u32)iph->saddr, in __ip_select_ident() 497 iph->protocol ^ net_hash_mix(net), in __ip_select_ident() 500 iph->id = htons(id); in __ip_select_ident() 505 const struct iphdr *iph, in __build_flow_key() argument 520 iph->daddr, iph->saddr, 0, 0); in __build_flow_key() 526 const struct iphdr *iph = ip_hdr(skb); in build_skb_flow_key() local 528 u8 tos = RT_TOS(iph->tos); in build_skb_flow_key() 529 u8 prot = iph->protocol; in build_skb_flow_key() [all …]
|
D | udp_offload.c | 185 struct iphdr *iph; in udp4_ufo_fragment() local 226 iph = ip_hdr(skb); in udp4_ufo_fragment() 230 uh->check = udp_v4_check(skb->len, iph->saddr, iph->daddr, csum); in udp4_ufo_fragment() 417 const struct iphdr *iph = ip_hdr(skb); in udp4_gro_complete() local 422 uh->check = ~udp_v4_check(skb->len - nhoff, iph->saddr, in udp4_gro_complete() 423 iph->daddr, 0); in udp4_gro_complete()
|
D | ipcomp.c | 30 const struct iphdr *iph = (const struct iphdr *)skb->data; in ipcomp4_err() local 31 struct ip_comp_hdr *ipch = (struct ip_comp_hdr *)(skb->data+(iph->ihl<<2)); in ipcomp4_err() 45 x = xfrm_state_lookup(net, skb->mark, (const xfrm_address_t *)&iph->daddr, in ipcomp4_err()
|
D | gre_demux.c | 94 const struct iphdr *iph = (const struct iphdr *)skb->data; in gre_err() local 95 u8 ver = skb->data[(iph->ihl<<2) + 1]&0x7f; in gre_err()
|
D | tcp_ipv4.c | 357 const struct iphdr *iph = (const struct iphdr *)icmp_skb->data; in tcp_v4_err() local 358 struct tcphdr *th = (struct tcphdr *)(icmp_skb->data + (iph->ihl << 2)); in tcp_v4_err() 372 sk = __inet_lookup_established(net, &tcp_hashinfo, iph->daddr, in tcp_v4_err() 373 th->dest, iph->saddr, ntohs(th->source), in tcp_v4_err() 405 if (unlikely(iph->ttl < inet_sk(sk)->min_ttl)) { in tcp_v4_err() 1086 const struct iphdr *iph = ip_hdr(skb); in tcp_v4_md5_hash_skb() local 1087 saddr = iph->saddr; in tcp_v4_md5_hash_skb() 1088 daddr = iph->daddr; in tcp_v4_md5_hash_skb() 1138 const struct iphdr *iph = ip_hdr(skb); in tcp_v4_inbound_md5_hash() local 1143 hash_expected = tcp_md5_do_lookup(sk, (union tcp_md5_addr *)&iph->saddr, in tcp_v4_inbound_md5_hash() [all …]
|
D | esp4.c | 297 const struct iphdr *iph; in esp_input_done2() local 322 iph = ip_hdr(skb); in esp_input_done2() 323 ihl = iph->ihl * 4; in esp_input_done2() 335 if (iph->saddr != x->props.saddr.a4 || in esp_input_done2() 339 ipaddr.a4 = iph->saddr; in esp_input_done2() 515 const struct iphdr *iph = (const struct iphdr *)skb->data; in esp4_err() local 516 struct ip_esp_hdr *esph = (struct ip_esp_hdr *)(skb->data+(iph->ihl<<2)); in esp4_err() 529 x = xfrm_state_lookup(net, skb->mark, (const xfrm_address_t *)&iph->daddr, in esp4_err()
|
D | igmp.c | 676 struct iphdr *iph; in igmp_send_report() local 717 iph = ip_hdr(skb); in igmp_send_report() 720 iph->version = 4; in igmp_send_report() 721 iph->ihl = (sizeof(struct iphdr)+4)>>2; in igmp_send_report() 722 iph->tos = 0xc0; in igmp_send_report() 723 iph->frag_off = htons(IP_DF); in igmp_send_report() 724 iph->ttl = 1; in igmp_send_report() 725 iph->daddr = dst; in igmp_send_report() 726 iph->saddr = fl4.saddr; in igmp_send_report() 727 iph->protocol = IPPROTO_IGMP; in igmp_send_report() [all …]
|
D | tcp_fastopen.c | 103 const struct iphdr *iph = ip_hdr(syn); in tcp_fastopen_cookie_gen() local 105 __be32 path[4] = { iph->saddr, iph->daddr, 0, 0 }; in tcp_fastopen_cookie_gen()
|
D | udp.c | 580 const struct iphdr *iph = ip_hdr(skb); in __udp4_lib_lookup_skb() local 582 return __udp4_lib_lookup(dev_net(skb_dst(skb)->dev), iph->saddr, sport, in __udp4_lib_lookup_skb() 583 iph->daddr, dport, inet_iif(skb), in __udp4_lib_lookup_skb() 628 const struct iphdr *iph = (const struct iphdr *)skb->data; in __udp4_lib_err() local 629 struct udphdr *uh = (struct udphdr *)(skb->data+(iph->ihl<<2)); in __udp4_lib_err() 637 sk = __udp4_lib_lookup(net, iph->daddr, uh->dest, in __udp4_lib_err() 638 iph->saddr, uh->source, skb->dev->ifindex, udptable); in __udp4_lib_err() 1972 const struct iphdr *iph; in udp_v4_early_demux() local 1983 iph = ip_hdr(skb); in udp_v4_early_demux() 1995 ours = ip_check_mc_rcu(in_dev, iph->daddr, iph->saddr, in udp_v4_early_demux() [all …]
|
D | ipconfig.c | 620 struct iphdr iph; /* IP header */ member 986 h = &b->iph; in ic_bootp_recv() 1022 h = &b->iph; in ic_bootp_recv() 1055 u8 *end = (u8 *) b + ntohs(b->iph.tot_len); in ic_bootp_recv() 1100 &ic_myaddr, &b->iph.saddr); in ic_bootp_recv() 1145 ic_addrservaddr = b->iph.saddr; in ic_bootp_recv()
|
D | ip_sockglue.c | 135 const struct iphdr *iph = ip_hdr(skb); in ip_cmsg_recv_dstaddr() local 147 sin.sin_addr.s_addr = iph->daddr; in ip_cmsg_recv_dstaddr() 404 struct iphdr *iph; in ip_local_error() local 416 iph = ip_hdr(skb); in ip_local_error() 417 iph->daddr = daddr; in ip_local_error() 427 serr->addr_offset = (u8 *)&iph->daddr - skb_network_header(skb); in ip_local_error()
|
D | fou.c | 53 struct iphdr *iph = ip_hdr(skb); in fou_recv_pull() local 58 iph->tot_len = htons(ntohs(iph->tot_len) - len); in fou_recv_pull()
|
/linux-4.4.14/net/netfilter/ipvs/ |
D | ip_vs_proto_ah_esp.c | 45 const struct ip_vs_iphdr *iph, in ah_esp_conn_fill_param_proto() argument 48 if (likely(!ip_vs_iph_inverse(iph))) in ah_esp_conn_fill_param_proto() 50 &iph->saddr, htons(PORT_ISAKMP), in ah_esp_conn_fill_param_proto() 51 &iph->daddr, htons(PORT_ISAKMP), p); in ah_esp_conn_fill_param_proto() 54 &iph->daddr, htons(PORT_ISAKMP), in ah_esp_conn_fill_param_proto() 55 &iph->saddr, htons(PORT_ISAKMP), p); in ah_esp_conn_fill_param_proto() 60 const struct ip_vs_iphdr *iph) in ah_esp_conn_in_get() argument 65 ah_esp_conn_fill_param_proto(ipvs, af, iph, &p); in ah_esp_conn_in_get() 74 ip_vs_iph_icmp(iph) ? "ICMP+" : "", in ah_esp_conn_in_get() 75 ip_vs_proto_get(iph->protocol)->name, in ah_esp_conn_in_get() [all …]
|
D | ip_vs_core.c | 237 int *ignored, struct ip_vs_iphdr *iph) in ip_vs_sched_persist() argument 250 if (likely(!ip_vs_iph_inverse(iph))) { in ip_vs_sched_persist() 251 src_addr = &iph->saddr; in ip_vs_sched_persist() 252 dst_addr = &iph->daddr; in ip_vs_sched_persist() 254 src_addr = &iph->daddr; in ip_vs_sched_persist() 255 dst_addr = &iph->saddr; in ip_vs_sched_persist() 288 int protocol = iph->protocol; in ip_vs_sched_persist() 335 dest = sched->schedule(svc, skb, iph); in ip_vs_sched_persist() 373 && iph->protocol == IPPROTO_UDP) ? in ip_vs_sched_persist() 379 ip_vs_conn_fill_param(svc->ipvs, svc->af, iph->protocol, src_addr, in ip_vs_sched_persist() [all …]
|
D | ip_vs_proto_udp.c | 35 struct ip_vs_iphdr *iph) in udp_conn_schedule() argument 41 if (likely(!ip_vs_iph_icmp(iph))) { in udp_conn_schedule() 43 uh = skb_header_pointer(skb, iph->len, sizeof(_udph), &_udph); in udp_conn_schedule() 48 skb, iph->len, sizeof(_ports), &_ports); in udp_conn_schedule() 57 if (likely(!ip_vs_iph_inverse(iph))) in udp_conn_schedule() 58 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in udp_conn_schedule() 59 &iph->daddr, ports[1]); in udp_conn_schedule() 61 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in udp_conn_schedule() 62 &iph->saddr, ports[0]); in udp_conn_schedule() 81 *cpp = ip_vs_schedule(svc, skb, pd, &ignored, iph); in udp_conn_schedule() [all …]
|
D | ip_vs_ftp.c | 172 struct iphdr *iph; in ip_vs_ftp_out() local 204 iph = ip_hdr(skb); in ip_vs_ftp_out() 205 th = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]); in ip_vs_ftp_out() 226 iph->protocol, &from, port, in ip_vs_ftp_out() 272 iph->ihl * 4, in ip_vs_ftp_out() 314 struct iphdr *iph; in ip_vs_ftp_in() local 344 iph = ip_hdr(skb); in ip_vs_ftp_in() 345 th = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]); in ip_vs_ftp_in() 387 ip_vs_proto_name(iph->protocol), in ip_vs_ftp_in() 393 iph->protocol, &to, port, &cp->vaddr, in ip_vs_ftp_in()
|
D | ip_vs_sh.c | 281 ip_vs_sh_get_port(const struct sk_buff *skb, struct ip_vs_iphdr *iph) in ip_vs_sh_get_port() argument 290 switch (iph->protocol) { in ip_vs_sh_get_port() 294 ports = skb_header_pointer(skb, iph->len, sizeof(_ports), in ip_vs_sh_get_port() 299 if (likely(!ip_vs_iph_inverse(iph))) in ip_vs_sh_get_port() 314 struct ip_vs_iphdr *iph) in ip_vs_sh_schedule() argument 321 hash_addr = ip_vs_iph_inverse(iph) ? &iph->daddr : &iph->saddr; in ip_vs_sh_schedule() 326 port = ip_vs_sh_get_port(skb, iph); in ip_vs_sh_schedule()
|
D | ip_vs_proto_sctp.c | 15 struct ip_vs_iphdr *iph) in sctp_conn_schedule() argument 22 if (likely(!ip_vs_iph_icmp(iph))) { in sctp_conn_schedule() 23 sh = skb_header_pointer(skb, iph->len, sizeof(_sctph), &_sctph); in sctp_conn_schedule() 26 skb, iph->len + sizeof(sctp_sctphdr_t), in sctp_conn_schedule() 34 skb, iph->len, sizeof(_ports), &_ports); in sctp_conn_schedule() 43 if (likely(!ip_vs_iph_inverse(iph))) in sctp_conn_schedule() 44 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in sctp_conn_schedule() 45 &iph->daddr, ports[1]); in sctp_conn_schedule() 47 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in sctp_conn_schedule() 48 &iph->saddr, ports[0]); in sctp_conn_schedule() [all …]
|
D | ip_vs_xmit.c | 629 struct iphdr *iph = ip_hdr(skb); in ip_vs_bypass_xmit() local 634 if (__ip_vs_get_out_rt(cp->ipvs, cp->af, skb, NULL, iph->daddr, in ip_vs_bypass_xmit() 638 ip_send_check(iph); in ip_vs_bypass_xmit() 661 struct ipv6hdr *iph = ipv6_hdr(skb); in ip_vs_bypass_xmit_v6() local 667 &iph->daddr, NULL, in ip_vs_bypass_xmit_v6() 987 struct iphdr *iph; /* Our new IP header */ in ip_vs_tunnel_xmit() local 1036 iph = ip_hdr(skb); in ip_vs_tunnel_xmit() 1037 iph->version = 4; in ip_vs_tunnel_xmit() 1038 iph->ihl = sizeof(struct iphdr)>>2; in ip_vs_tunnel_xmit() 1039 iph->frag_off = df; in ip_vs_tunnel_xmit() [all …]
|
D | ip_vs_proto_tcp.c | 38 struct ip_vs_iphdr *iph) in tcp_conn_schedule() argument 48 if (likely(!ip_vs_iph_icmp(iph))) { in tcp_conn_schedule() 49 th = skb_header_pointer(skb, iph->len, sizeof(_tcph), &_tcph); in tcp_conn_schedule() 57 skb, iph->len, sizeof(_ports), &_ports); in tcp_conn_schedule() 68 if (likely(!ip_vs_iph_inverse(iph))) in tcp_conn_schedule() 69 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in tcp_conn_schedule() 70 &iph->daddr, ports[1]); in tcp_conn_schedule() 72 svc = ip_vs_service_find(ipvs, af, skb->mark, iph->protocol, in tcp_conn_schedule() 73 &iph->saddr, ports[0]); in tcp_conn_schedule() 92 *cpp = ip_vs_schedule(svc, skb, pd, &ignored, iph); in tcp_conn_schedule() [all …]
|
D | ip_vs_pe_sip.c | 68 struct ip_vs_iphdr iph; in ip_vs_sip_fill_param() local 73 retc = ip_vs_fill_iph_skb(p->af, skb, false, &iph); in ip_vs_sip_fill_param() 76 if (!retc || iph.protocol != IPPROTO_UDP) in ip_vs_sip_fill_param() 81 dataoff = iph.len + sizeof(struct udphdr); in ip_vs_sip_fill_param()
|
D | ip_vs_dh.c | 218 struct ip_vs_iphdr *iph) in ip_vs_dh_schedule() argument 226 dest = ip_vs_dh_get(svc->af, s, &iph->daddr); in ip_vs_dh_schedule() 236 IP_VS_DBG_ADDR(svc->af, &iph->daddr), in ip_vs_dh_schedule()
|
D | ip_vs_conn.c | 319 const struct ip_vs_iphdr *iph, in ip_vs_conn_fill_param_proto() argument 324 pptr = frag_safe_skb_hp(skb, iph->len, sizeof(_ports), _ports, iph); in ip_vs_conn_fill_param_proto() 328 if (likely(!ip_vs_iph_inverse(iph))) in ip_vs_conn_fill_param_proto() 329 ip_vs_conn_fill_param(ipvs, af, iph->protocol, &iph->saddr, in ip_vs_conn_fill_param_proto() 330 pptr[0], &iph->daddr, pptr[1], p); in ip_vs_conn_fill_param_proto() 332 ip_vs_conn_fill_param(ipvs, af, iph->protocol, &iph->daddr, in ip_vs_conn_fill_param_proto() 333 pptr[1], &iph->saddr, pptr[0], p); in ip_vs_conn_fill_param_proto() 340 const struct ip_vs_iphdr *iph) in ip_vs_conn_in_get_proto() argument 344 if (ip_vs_conn_fill_param_proto(ipvs, af, skb, iph, &p)) in ip_vs_conn_in_get_proto() 445 const struct ip_vs_iphdr *iph) in ip_vs_conn_out_get_proto() argument [all …]
|
D | ip_vs_lblc.c | 484 struct ip_vs_iphdr *iph) in ip_vs_lblc_schedule() argument 493 en = ip_vs_lblc_get(svc->af, tbl, &iph->daddr); in ip_vs_lblc_schedule() 523 ip_vs_lblc_new(tbl, &iph->daddr, svc->af, dest); in ip_vs_lblc_schedule() 528 IP_VS_DBG_ADDR(svc->af, &iph->daddr), in ip_vs_lblc_schedule()
|
D | ip_vs_fo.c | 27 struct ip_vs_iphdr *iph) in ip_vs_fo_schedule() argument
|
D | ip_vs_ovf.c | 31 struct ip_vs_iphdr *iph) in ip_vs_ovf_schedule() argument
|
D | ip_vs_lc.c | 30 struct ip_vs_iphdr *iph) in ip_vs_lc_schedule() argument
|
D | ip_vs_sed.c | 63 struct ip_vs_iphdr *iph) in ip_vs_sed_schedule() argument
|
D | ip_vs_wlc.c | 35 struct ip_vs_iphdr *iph) in ip_vs_wlc_schedule() argument
|
D | ip_vs_nq.c | 59 struct ip_vs_iphdr *iph) in ip_vs_nq_schedule() argument
|
D | ip_vs_lblcr.c | 648 struct ip_vs_iphdr *iph) in ip_vs_lblcr_schedule() argument 657 en = ip_vs_lblcr_get(svc->af, tbl, &iph->daddr); in ip_vs_lblcr_schedule() 708 ip_vs_lblcr_new(tbl, &iph->daddr, svc->af, dest); in ip_vs_lblcr_schedule() 713 IP_VS_DBG_ADDR(svc->af, &iph->daddr), in ip_vs_lblcr_schedule()
|
D | ip_vs_rr.c | 59 struct ip_vs_iphdr *iph) in ip_vs_rr_schedule() argument
|
D | ip_vs_wrr.c | 166 struct ip_vs_iphdr *iph) in ip_vs_wrr_schedule() argument
|
/linux-4.4.14/net/sched/ |
D | act_nat.c | 91 struct iphdr *iph; in tcf_nat() local 118 if (!pskb_may_pull(skb, sizeof(*iph) + noff)) in tcf_nat() 121 iph = ip_hdr(skb); in tcf_nat() 124 addr = iph->saddr; in tcf_nat() 126 addr = iph->daddr; in tcf_nat() 130 !skb_clone_writable(skb, sizeof(*iph) + noff) && in tcf_nat() 138 iph = ip_hdr(skb); in tcf_nat() 140 iph->saddr = new_addr; in tcf_nat() 142 iph->daddr = new_addr; in tcf_nat() 144 csum_replace4(&iph->check, addr, new_addr); in tcf_nat() [all …]
|
D | act_csum.c | 178 const struct iphdr *iph; in tcf_csum_ipv4_tcp() local 184 iph = ip_hdr(skb); in tcf_csum_ipv4_tcp() 188 iph->saddr, iph->daddr, skb->csum); in tcf_csum_ipv4_tcp() 221 const struct iphdr *iph; in tcf_csum_ipv4_udp() local 235 iph = ip_hdr(skb); in tcf_csum_ipv4_udp() 256 udph->check = csum_tcpudp_magic(iph->saddr, iph->daddr, in tcf_csum_ipv4_udp() 257 ul, iph->protocol, in tcf_csum_ipv4_udp() 324 const struct iphdr *iph; in tcf_csum_ipv4() local 329 if (!pskb_may_pull(skb, sizeof(*iph) + ntkoff)) in tcf_csum_ipv4() 332 iph = ip_hdr(skb); in tcf_csum_ipv4() [all …]
|
/linux-4.4.14/net/netfilter/ |
D | xt_iprange.c | 23 const struct iphdr *iph = ip_hdr(skb); in iprange_mt4() local 27 m = ntohl(iph->saddr) < ntohl(info->src_min.ip); in iprange_mt4() 28 m |= ntohl(iph->saddr) > ntohl(info->src_max.ip); in iprange_mt4() 32 &iph->saddr, in iprange_mt4() 40 m = ntohl(iph->daddr) < ntohl(info->dst_min.ip); in iprange_mt4() 41 m |= ntohl(iph->daddr) > ntohl(info->dst_max.ip); in iprange_mt4() 45 &iph->daddr, in iprange_mt4() 72 const struct ipv6hdr *iph = ipv6_hdr(skb); in iprange_mt6() local 76 m = iprange_ipv6_lt(&iph->saddr, &info->src_min.in6); in iprange_mt6() 77 m |= iprange_ipv6_lt(&info->src_max.in6, &iph->saddr); in iprange_mt6() [all …]
|
D | xt_TPROXY.c | 256 const struct iphdr *iph = ip_hdr(skb); in tproxy_handle_time_wait4() local 270 sk2 = nf_tproxy_get_sock_v4(net, iph->protocol, in tproxy_handle_time_wait4() 271 iph->saddr, laddr ? laddr : iph->daddr, in tproxy_handle_time_wait4() 296 const struct iphdr *iph = ip_hdr(skb); in tproxy_tg4() local 308 sk = nf_tproxy_get_sock_v4(net, iph->protocol, in tproxy_tg4() 309 iph->saddr, iph->daddr, in tproxy_tg4() 313 laddr = tproxy_laddr4(skb, laddr, iph->daddr); in tproxy_tg4() 324 sk = nf_tproxy_get_sock_v4(net, iph->protocol, in tproxy_tg4() 325 iph->saddr, laddr, in tproxy_tg4() 336 iph->protocol, &iph->daddr, ntohs(hp->dest), in tproxy_tg4() [all …]
|
D | xt_HL.c | 31 struct iphdr *iph; in ttl_tg() local 38 iph = ip_hdr(skb); in ttl_tg() 45 new_ttl = iph->ttl + info->ttl; in ttl_tg() 50 new_ttl = iph->ttl - info->ttl; in ttl_tg() 55 new_ttl = iph->ttl; in ttl_tg() 59 if (new_ttl != iph->ttl) { in ttl_tg() 60 csum_replace2(&iph->check, htons(iph->ttl << 8), in ttl_tg() 62 iph->ttl = new_ttl; in ttl_tg()
|
D | xt_DSCP.c | 80 struct iphdr *iph = ip_hdr(skb); in tos_tg() local 83 orig = ipv4_get_dsfield(iph); in tos_tg() 89 iph = ip_hdr(skb); in tos_tg() 90 ipv4_change_dsfield(iph, 0, nv); in tos_tg() 100 struct ipv6hdr *iph = ipv6_hdr(skb); in tos_tg6() local 103 orig = ipv6_get_dsfield(iph); in tos_tg6() 109 iph = ipv6_hdr(skb); in tos_tg6() 110 ipv6_change_dsfield(iph, 0, nv); in tos_tg6()
|
D | nf_tables_netdev.c | 23 struct iphdr *iph, _iph; in nft_netdev_set_pktinfo_ipv4() local 28 iph = skb_header_pointer(skb, skb_network_offset(skb), sizeof(*iph), in nft_netdev_set_pktinfo_ipv4() 30 if (!iph) in nft_netdev_set_pktinfo_ipv4() 33 iph = ip_hdr(skb); in nft_netdev_set_pktinfo_ipv4() 34 if (iph->ihl < 5 || iph->version != 4) in nft_netdev_set_pktinfo_ipv4() 37 len = ntohs(iph->tot_len); in nft_netdev_set_pktinfo_ipv4() 38 thoff = iph->ihl * 4; in nft_netdev_set_pktinfo_ipv4() 44 pkt->tprot = iph->protocol; in nft_netdev_set_pktinfo_ipv4() 46 pkt->xt.fragoff = ntohs(iph->frag_off) & IP_OFFSET; in nft_netdev_set_pktinfo_ipv4()
|
D | xt_addrtype.c | 106 const struct ipv6hdr *iph = ipv6_hdr(skb); in addrtype_mt6() local 110 ret &= match_type6(net, dev, &iph->saddr, info->source) ^ in addrtype_mt6() 113 ret &= match_type6(net, dev, &iph->daddr, info->dest) ^ in addrtype_mt6() 130 const struct iphdr *iph = ip_hdr(skb); in addrtype_mt_v0() local 134 ret &= match_type(net, NULL, iph->saddr, info->source) ^ in addrtype_mt_v0() 137 ret &= match_type(net, NULL, iph->daddr, info->dest) ^ in addrtype_mt_v0() 148 const struct iphdr *iph; in addrtype_mt_v1() local 161 iph = ip_hdr(skb); in addrtype_mt_v1() 163 ret &= match_type(net, dev, iph->saddr, info->source) ^ in addrtype_mt_v1() 166 ret &= match_type(net, dev, iph->daddr, info->dest) ^ in addrtype_mt_v1()
|
D | xt_socket.c | 150 const struct iphdr *iph = ip_hdr(skb); in xt_socket_lookup_slow_v4() local 159 if (iph->protocol == IPPROTO_UDP || iph->protocol == IPPROTO_TCP) { in xt_socket_lookup_slow_v4() 167 protocol = iph->protocol; in xt_socket_lookup_slow_v4() 168 saddr = iph->saddr; in xt_socket_lookup_slow_v4() 170 daddr = iph->daddr; in xt_socket_lookup_slow_v4() 173 } else if (iph->protocol == IPPROTO_ICMP) { in xt_socket_lookup_slow_v4() 188 ((iph->protocol != IPPROTO_ICMP && in xt_socket_lookup_slow_v4() 190 (iph->protocol == IPPROTO_ICMP && in xt_socket_lookup_slow_v4() 195 dport = (iph->protocol == IPPROTO_TCP) ? in xt_socket_lookup_slow_v4() 345 struct ipv6hdr *iph = ipv6_hdr(skb); in xt_socket_lookup_slow_v6() local [all …]
|
D | xt_ipvs.c | 54 struct ip_vs_iphdr iph; in ipvs_mt() local 71 ip_vs_fill_iph_skb(family, skb, true, &iph); in ipvs_mt() 74 if ((iph.protocol == data->l4proto) ^ in ipvs_mt() 80 pp = ip_vs_proto_get(iph.protocol); in ipvs_mt() 89 cp = pp->conn_out_get(ipvs, family, skb, &iph); in ipvs_mt()
|
D | xt_TCPMSS.c | 206 struct iphdr *iph = ip_hdr(skb); in tcpmss_tg4() local 212 iph->ihl * 4, in tcpmss_tg4() 213 sizeof(*iph) + sizeof(struct tcphdr)); in tcpmss_tg4() 217 iph = ip_hdr(skb); in tcpmss_tg4() 218 newlen = htons(ntohs(iph->tot_len) + ret); in tcpmss_tg4() 219 csum_replace2(&iph->check, iph->tot_len, newlen); in tcpmss_tg4() 220 iph->tot_len = newlen; in tcpmss_tg4()
|
D | nf_conntrack_irc.c | 110 const struct iphdr *iph; in help() local 161 iph = ip_hdr(skb); in help() 163 &iph->saddr, ntohs(th->source), in help() 164 &iph->daddr, ntohs(th->dest)); in help()
|
D | xt_connlimit.c | 340 const struct ipv6hdr *iph = ipv6_hdr(skb); in connlimit_mt() local 342 &iph->daddr : &iph->saddr, sizeof(addr.ip6)); in connlimit_mt() 344 const struct iphdr *iph = ip_hdr(skb); in connlimit_mt() local 346 iph->daddr : iph->saddr; in connlimit_mt()
|
D | nf_conntrack_broadcast.c | 29 struct iphdr *iph = ip_hdr(skb); in nf_conntrack_broadcast_help() local 47 if (ifa->ifa_broadcast == iph->daddr) { in nf_conntrack_broadcast_help()
|
D | xt_recent.c | 250 const struct iphdr *iph = ip_hdr(skb); in recent_mt() local 253 addr.ip = iph->daddr; in recent_mt() 255 addr.ip = iph->saddr; in recent_mt() 257 ttl = iph->ttl; in recent_mt() 259 const struct ipv6hdr *iph = ipv6_hdr(skb); in recent_mt() local 262 memcpy(&addr.in6, &iph->daddr, sizeof(addr.in6)); in recent_mt() 264 memcpy(&addr.in6, &iph->saddr, sizeof(addr.in6)); in recent_mt() 266 ttl = iph->hop_limit; in recent_mt()
|
D | xt_l2tp.c | 175 struct iphdr *iph = ip_hdr(skb); in l2tp_mt4() local 176 u8 ipproto = iph->protocol; in l2tp_mt4()
|
/linux-4.4.14/net/ipv6/ |
D | sit.c | 102 if (local == t->parms.iph.saddr && in ipip6_tunnel_lookup() 103 remote == t->parms.iph.daddr && in ipip6_tunnel_lookup() 109 if (remote == t->parms.iph.daddr && in ipip6_tunnel_lookup() 115 if (local == t->parms.iph.saddr && in ipip6_tunnel_lookup() 129 __be32 remote = parms->iph.daddr; in __ipip6_bucket() 130 __be32 local = parms->iph.saddr; in __ipip6_bucket() 198 memcpy(dev->dev_addr, &t->parms.iph.saddr, 4); in ipip6_tunnel_create() 199 memcpy(dev->broadcast, &t->parms.iph.daddr, 4); in ipip6_tunnel_create() 224 __be32 remote = parms->iph.daddr; in ipip6_tunnel_locate() 225 __be32 local = parms->iph.saddr; in ipip6_tunnel_locate() [all …]
|
D | ip6_offload.c | 143 static int ipv6_exthdrs_len(struct ipv6hdr *iph, in ipv6_exthdrs_len() argument 146 struct ipv6_opt_hdr *opth = (void *)iph; in ipv6_exthdrs_len() 147 int len = 0, proto, optlen = sizeof(*iph); in ipv6_exthdrs_len() 149 proto = iph->nexthdr; in ipv6_exthdrs_len() 172 struct ipv6hdr *iph; in ipv6_gro_receive() local 180 hlen = off + sizeof(*iph); in ipv6_gro_receive() 181 iph = skb_gro_header_fast(skb, off); in ipv6_gro_receive() 183 iph = skb_gro_header_slow(skb, hlen, off); in ipv6_gro_receive() 184 if (unlikely(!iph)) in ipv6_gro_receive() 189 skb_gro_pull(skb, sizeof(*iph)); in ipv6_gro_receive() [all …]
|
D | xfrm6_mode_beet.c | 24 struct ipv6hdr *iph = ipv6_hdr(skb); in xfrm6_beet_make_header() local 26 iph->version = 6; in xfrm6_beet_make_header() 28 memcpy(iph->flow_lbl, XFRM_MODE_SKB_CB(skb)->flow_lbl, in xfrm6_beet_make_header() 29 sizeof(iph->flow_lbl)); in xfrm6_beet_make_header() 30 iph->nexthdr = XFRM_MODE_SKB_CB(skb)->protocol; in xfrm6_beet_make_header() 32 ipv6_change_dsfield(iph, 0, XFRM_MODE_SKB_CB(skb)->tos); in xfrm6_beet_make_header() 33 iph->hop_limit = XFRM_MODE_SKB_CB(skb)->ttl; in xfrm6_beet_make_header()
|
D | netfilter.c | 23 const struct ipv6hdr *iph = ipv6_hdr(skb); in ip6_route_me_harder() local 29 .daddr = iph->daddr, in ip6_route_me_harder() 30 .saddr = iph->saddr, in ip6_route_me_harder() 87 const struct ipv6hdr *iph = ipv6_hdr(skb); in nf_ip6_saveroute() local 89 rt_info->daddr = iph->daddr; in nf_ip6_saveroute() 90 rt_info->saddr = iph->saddr; in nf_ip6_saveroute() 101 const struct ipv6hdr *iph = ipv6_hdr(skb); in nf_ip6_reroute() local 102 if (!ipv6_addr_equal(&iph->daddr, &rt_info->daddr) || in nf_ip6_reroute() 103 !ipv6_addr_equal(&iph->saddr, &rt_info->saddr) || in nf_ip6_reroute()
|
D | mip6.c | 133 const struct ipv6hdr *iph = ipv6_hdr(skb); in mip6_destopt_input() local 138 if (!ipv6_addr_equal(&iph->saddr, (struct in6_addr *)x->coaddr) && in mip6_destopt_input() 152 struct ipv6hdr *iph; in mip6_destopt_output() local 159 iph = ipv6_hdr(skb); in mip6_destopt_output() 176 memcpy(&hao->addr, &iph->saddr, sizeof(hao->addr)); in mip6_destopt_output() 178 memcpy(&iph->saddr, x->coaddr, sizeof(iph->saddr)); in mip6_destopt_output() 353 const struct ipv6hdr *iph = ipv6_hdr(skb); in mip6_rthdr_input() local 358 if (!ipv6_addr_equal(&iph->daddr, (struct in6_addr *)x->coaddr) && in mip6_rthdr_input() 371 struct ipv6hdr *iph; in mip6_rthdr_output() local 376 iph = ipv6_hdr(skb); in mip6_rthdr_output() [all …]
|
D | ah6.c | 160 static void ipv6_rearrange_destopt(struct ipv6hdr *iph, struct ipv6_opt_hdr *destopt) in ipv6_rearrange_destopt() argument 199 hao->addr = iph->saddr; in ipv6_rearrange_destopt() 200 iph->saddr = final_addr; in ipv6_rearrange_destopt() 213 static void ipv6_rearrange_destopt(struct ipv6hdr *iph, struct ipv6_opt_hdr *destopt) {} in ipv6_rearrange_destopt() argument 225 static void ipv6_rearrange_rthdr(struct ipv6hdr *iph, struct ipv6_rt_hdr *rthdr) in ipv6_rearrange_rthdr() argument 251 addrs[0] = iph->daddr; in ipv6_rearrange_rthdr() 252 iph->daddr = final_addr; in ipv6_rearrange_rthdr() 255 static int ipv6_clear_mutable_options(struct ipv6hdr *iph, int len, int dir) in ipv6_clear_mutable_options() argument 258 struct ipv6hdr *iph; in ipv6_clear_mutable_options() member 262 } exthdr = { .iph = iph }; in ipv6_clear_mutable_options() [all …]
|
D | syncookies.c | 100 u32 __cookie_v6_init_sequence(const struct ipv6hdr *iph, in __cookie_v6_init_sequence() argument 112 return secure_tcp_syn_cookie(&iph->saddr, &iph->daddr, th->source, in __cookie_v6_init_sequence() 119 const struct ipv6hdr *iph = ipv6_hdr(skb); in cookie_v6_init_sequence() local 122 return __cookie_v6_init_sequence(iph, th, mssp); in cookie_v6_init_sequence() 125 int __cookie_v6_check(const struct ipv6hdr *iph, const struct tcphdr *th, in __cookie_v6_check() argument 129 __u32 mssind = check_tcp_syn_cookie(cookie, &iph->saddr, &iph->daddr, in __cookie_v6_check()
|
D | xfrm6_mode_ro.c | 43 struct ipv6hdr *iph; in xfrm6_ro_output() local 47 iph = ipv6_hdr(skb); in xfrm6_ro_output() 54 memmove(ipv6_hdr(skb), iph, hdr_len); in xfrm6_ro_output()
|
D | xfrm6_state.c | 158 struct ipv6hdr *iph = ipv6_hdr(skb); in xfrm6_extract_header() local 160 XFRM_MODE_SKB_CB(skb)->ihl = sizeof(*iph); in xfrm6_extract_header() 163 XFRM_MODE_SKB_CB(skb)->tos = ipv6_get_dsfield(iph); in xfrm6_extract_header() 164 XFRM_MODE_SKB_CB(skb)->ttl = iph->hop_limit; in xfrm6_extract_header() 166 memcpy(XFRM_MODE_SKB_CB(skb)->flow_lbl, iph->flow_lbl, in xfrm6_extract_header()
|
D | tcpv6_offload.c | 34 const struct ipv6hdr *iph = ipv6_hdr(skb); in tcp6_gro_complete() local 37 th->check = ~tcp_v6_check(skb->len - thoff, &iph->saddr, in tcp6_gro_complete() 38 &iph->daddr, 0); in tcp6_gro_complete()
|
D | xfrm6_mode_transport.c | 24 struct ipv6hdr *iph; in xfrm6_transport_output() local 28 iph = ipv6_hdr(skb); in xfrm6_transport_output() 35 memmove(ipv6_hdr(skb), iph, hdr_len); in xfrm6_transport_output()
|
D | ipcomp6.c | 61 const struct ipv6hdr *iph = (const struct ipv6hdr *)skb->data; in ipcomp6_err() local 71 x = xfrm_state_lookup(net, skb->mark, (const xfrm_address_t *)&iph->daddr, in ipcomp6_err()
|
D | datagram.c | 273 struct ipv6hdr *iph; in ipv6_local_error() local 287 iph = ipv6_hdr(skb); in ipv6_local_error() 288 iph->daddr = fl6->daddr; in ipv6_local_error() 298 serr->addr_offset = (u8 *)&iph->daddr - skb_network_header(skb); in ipv6_local_error() 311 struct ipv6hdr *iph; in ipv6_local_rxpmtu() local 324 iph = ipv6_hdr(skb); in ipv6_local_rxpmtu() 325 iph->daddr = fl6->daddr; in ipv6_local_rxpmtu()
|
D | route.c | 1151 const struct ipv6hdr *iph = ipv6_hdr(skb); in ip6_route_input() local 1157 .daddr = iph->daddr, in ip6_route_input() 1158 .saddr = iph->saddr, in ip6_route_input() 1159 .flowlabel = ip6_flowinfo(iph), in ip6_route_input() 1161 .flowi6_proto = iph->nexthdr, in ip6_route_input() 1341 const struct ipv6hdr *iph, u32 mtu) in __ip6_rt_update_pmtu() argument 1359 if (iph) { in __ip6_rt_update_pmtu() 1360 daddr = &iph->daddr; in __ip6_rt_update_pmtu() 1361 saddr = &iph->saddr; in __ip6_rt_update_pmtu() 1391 const struct ipv6hdr *iph = (struct ipv6hdr *) skb->data; in ip6_update_pmtu() local [all …]
|
D | ip6mr.c | 2302 struct ipv6hdr *iph; in ip6mr_get_route() local 2329 iph = ipv6_hdr(skb2); in ip6mr_get_route() 2330 iph->version = 0; in ip6mr_get_route() 2331 iph->priority = 0; in ip6mr_get_route() 2332 iph->flow_lbl[0] = 0; in ip6mr_get_route() 2333 iph->flow_lbl[1] = 0; in ip6mr_get_route() 2334 iph->flow_lbl[2] = 0; in ip6mr_get_route() 2335 iph->payload_len = 0; in ip6mr_get_route() 2336 iph->nexthdr = IPPROTO_NONE; in ip6mr_get_route() 2337 iph->hop_limit = 0; in ip6mr_get_route() [all …]
|
D | xfrm6_tunnel.c | 235 const struct ipv6hdr *iph = ipv6_hdr(skb); in xfrm6_tunnel_rcv() local 238 spi = xfrm6_tunnel_spi_lookup(net, (const xfrm_address_t *)&iph->saddr); in xfrm6_tunnel_rcv()
|
D | ip6_vti.c | 564 const struct ipv6hdr *iph = (const struct ipv6hdr *)skb->data; in vti6_err() local 565 int protocol = iph->nexthdr; in vti6_err() 567 t = vti6_tnl_lookup(dev_net(skb->dev), &iph->daddr, &iph->saddr); in vti6_err() 594 x = xfrm_state_lookup(net, mark, (const xfrm_address_t *)&iph->daddr, in vti6_err()
|
D | icmp.c | 303 struct ipv6hdr *iph = ipv6_hdr(skb); in mip6_addr_swap() local 314 tmp = iph->saddr; in mip6_addr_swap() 315 iph->saddr = hao->addr; in mip6_addr_swap()
|
D | esp6.c | 463 const struct ipv6hdr *iph = (const struct ipv6hdr *)skb->data; in esp6_err() local 471 x = xfrm_state_lookup(net, skb->mark, (const xfrm_address_t *)&iph->daddr, in esp6_err()
|
D | raw.c | 618 struct ipv6hdr *iph; in rawv6_send_hdrinc() local 647 iph = ipv6_hdr(skb); in rawv6_send_hdrinc() 652 err = memcpy_from_msg(iph, msg, length); in rawv6_send_hdrinc()
|
D | udp.c | 373 const struct ipv6hdr *iph = ipv6_hdr(skb); in __udp6_lib_lookup_skb() local 378 return __udp6_lib_lookup(dev_net(skb_dst(skb)->dev), &iph->saddr, sport, in __udp6_lib_lookup_skb() 379 &iph->daddr, dport, inet6_iif(skb), in __udp6_lib_lookup_skb()
|
/linux-4.4.14/net/ipv4/netfilter/ |
D | nft_chain_route_ipv4.c | 33 const struct iphdr *iph; in nf_route_table_hook() local 43 iph = ip_hdr(skb); in nf_route_table_hook() 44 saddr = iph->saddr; in nf_route_table_hook() 45 daddr = iph->daddr; in nf_route_table_hook() 46 tos = iph->tos; in nf_route_table_hook() 50 iph = ip_hdr(skb); in nf_route_table_hook() 52 if (iph->saddr != saddr || in nf_route_table_hook() 53 iph->daddr != daddr || in nf_route_table_hook() 55 iph->tos != tos) in nf_route_table_hook()
|
D | ipt_SYNPROXY.c | 23 struct iphdr *iph; in synproxy_build_ip() local 26 iph = (struct iphdr *)skb_put(skb, sizeof(*iph)); in synproxy_build_ip() 27 iph->version = 4; in synproxy_build_ip() 28 iph->ihl = sizeof(*iph) / 4; in synproxy_build_ip() 29 iph->tos = 0; in synproxy_build_ip() 30 iph->id = 0; in synproxy_build_ip() 31 iph->frag_off = htons(IP_DF); in synproxy_build_ip() 32 iph->ttl = sysctl_ip_default_ttl; in synproxy_build_ip() 33 iph->protocol = IPPROTO_TCP; in synproxy_build_ip() 34 iph->check = 0; in synproxy_build_ip() [all …]
|
D | iptable_mangle.c | 43 const struct iphdr *iph; in ipt_mangle_out() local 56 iph = ip_hdr(skb); in ipt_mangle_out() 57 saddr = iph->saddr; in ipt_mangle_out() 58 daddr = iph->daddr; in ipt_mangle_out() 59 tos = iph->tos; in ipt_mangle_out() 64 iph = ip_hdr(skb); in ipt_mangle_out() 66 if (iph->saddr != saddr || in ipt_mangle_out() 67 iph->daddr != daddr || in ipt_mangle_out() 69 iph->tos != tos) { in ipt_mangle_out()
|
D | nf_dup_ipv4.c | 29 const struct iphdr *iph = ip_hdr(skb); in nf_dup_ipv4_route() local 38 fl4.flowi4_tos = RT_TOS(iph->tos); in nf_dup_ipv4_route() 56 struct iphdr *iph; in nf_dup_ipv4() local 86 iph = ip_hdr(skb); in nf_dup_ipv4() 87 iph->frag_off |= htons(IP_DF); in nf_dup_ipv4() 90 --iph->ttl; in nf_dup_ipv4() 91 ip_send_check(iph); in nf_dup_ipv4()
|
D | ipt_rpfilter.c | 75 const struct iphdr *iph; in rpfilter_mt() local 85 iph = ip_hdr(skb); in rpfilter_mt() 86 if (ipv4_is_multicast(iph->daddr)) { in rpfilter_mt() 87 if (ipv4_is_zeronet(iph->saddr)) in rpfilter_mt() 88 return ipv4_is_local_multicast(iph->daddr) ^ invert; in rpfilter_mt() 91 flow.daddr = iph->saddr; in rpfilter_mt() 92 flow.saddr = rpfilter_get_saddr(iph->daddr); in rpfilter_mt() 95 flow.flowi4_tos = RT_TOS(iph->tos); in rpfilter_mt()
|
D | ipt_ECN.c | 31 struct iphdr *iph = ip_hdr(skb); in set_ect_ip() local 33 if ((iph->tos & IPT_ECN_IP_MASK) != (einfo->ip_ect & IPT_ECN_IP_MASK)) { in set_ect_ip() 37 iph = ip_hdr(skb); in set_ect_ip() 38 oldtos = iph->tos; in set_ect_ip() 39 iph->tos &= ~IPT_ECN_IP_MASK; in set_ect_ip() 40 iph->tos |= (einfo->ip_ect & IPT_ECN_IP_MASK); in set_ect_ip() 41 csum_replace2(&iph->check, htons(oldtos), htons(iph->tos)); in set_ect_ip()
|
D | nf_nat_l3proto_ipv4.c | 84 struct iphdr *iph; in nf_nat_ipv4_manip_pkt() local 87 if (!skb_make_writable(skb, iphdroff + sizeof(*iph))) in nf_nat_ipv4_manip_pkt() 90 iph = (void *)skb->data + iphdroff; in nf_nat_ipv4_manip_pkt() 91 hdroff = iphdroff + iph->ihl * 4; in nf_nat_ipv4_manip_pkt() 96 iph = (void *)skb->data + iphdroff; in nf_nat_ipv4_manip_pkt() 99 csum_replace4(&iph->check, iph->saddr, target->src.u3.ip); in nf_nat_ipv4_manip_pkt() 100 iph->saddr = target->src.u3.ip; in nf_nat_ipv4_manip_pkt() 102 csum_replace4(&iph->check, iph->daddr, target->dst.u3.ip); in nf_nat_ipv4_manip_pkt() 103 iph->daddr = target->dst.u3.ip; in nf_nat_ipv4_manip_pkt() 113 struct iphdr *iph = (struct iphdr *)(skb->data + iphdroff); in nf_nat_ipv4_csum_update() local [all …]
|
D | nf_reject_ipv4.c | 171 struct iphdr *iph = ip_hdr(skb_in); in nf_send_unreach() local 174 if (skb_in->csum_bad || iph->frag_off & htons(IP_OFFSET)) in nf_send_unreach() 182 if (iph->protocol == IPPROTO_TCP || iph->protocol == IPPROTO_UDP) in nf_send_unreach() 183 proto = iph->protocol; in nf_send_unreach()
|
D | nf_conntrack_l3proto_ipv4.c | 69 const struct iphdr *iph; in ipv4_get_l4proto() local 72 iph = skb_header_pointer(skb, nhoff, sizeof(_iph), &_iph); in ipv4_get_l4proto() 73 if (iph == NULL) in ipv4_get_l4proto() 78 if (iph->frag_off & htons(IP_OFFSET)) in ipv4_get_l4proto() 81 *dataoff = nhoff + (iph->ihl << 2); in ipv4_get_l4proto() 82 *protonum = iph->protocol; in ipv4_get_l4proto() 88 nhoff, iph->ihl << 2, skb->len); in ipv4_get_l4proto()
|
D | ipt_CLUSTERIP.c | 245 const struct iphdr *iph = ip_hdr(skb); in clusterip_hashfn() local 250 poff = proto_ports_offset(iph->protocol); in clusterip_hashfn() 255 ports = skb_header_pointer(skb, iph->ihl * 4 + poff, 4, _ports); in clusterip_hashfn() 261 net_info_ratelimited("unknown protocol %u\n", iph->protocol); in clusterip_hashfn() 266 hashval = jhash_1word(ntohl(iph->saddr), in clusterip_hashfn() 270 hashval = jhash_2words(ntohl(iph->saddr), sport, in clusterip_hashfn() 274 hashval = jhash_3words(ntohl(iph->saddr), sport, dport, in clusterip_hashfn()
|
D | nf_nat_snmp_basic.c | 1184 struct iphdr *iph = ip_hdr(skb); in snmp_translate() local 1185 struct udphdr *udph = (struct udphdr *)((__be32 *)iph + iph->ihl); in snmp_translate() 1224 const struct iphdr *iph = ip_hdr(skb); in help() local 1225 const struct udphdr *udph = (struct udphdr *)((__be32 *)iph + iph->ihl); in help() 1243 if (ntohs(udph->len) != skb->len - (iph->ihl << 2)) { in help() 1245 &iph->saddr, &iph->daddr); in help()
|
/linux-4.4.14/include/net/ |
D | dsfield.h | 15 static inline __u8 ipv4_get_dsfield(const struct iphdr *iph) in ipv4_get_dsfield() argument 17 return iph->tos; in ipv4_get_dsfield() 27 static inline void ipv4_change_dsfield(struct iphdr *iph,__u8 mask, in ipv4_change_dsfield() argument 30 __u32 check = ntohs((__force __be16)iph->check); in ipv4_change_dsfield() 33 dsfield = (iph->tos & mask) | value; in ipv4_change_dsfield() 34 check += iph->tos; in ipv4_change_dsfield() 38 iph->check = (__force __sum16)htons(check); in ipv4_change_dsfield() 39 iph->tos = dsfield; in ipv4_change_dsfield()
|
D | inet_ecn.h | 74 static inline int IP_ECN_set_ce(struct iphdr *iph) in IP_ECN_set_ce() argument 76 u32 check = (__force u32)iph->check; in IP_ECN_set_ce() 77 u32 ecn = (iph->tos + 1) & INET_ECN_MASK; in IP_ECN_set_ce() 96 iph->check = (__force __sum16)(check + (check>=0xFFFF)); in IP_ECN_set_ce() 97 iph->tos |= INET_ECN_CE; in IP_ECN_set_ce() 101 static inline void IP_ECN_clear(struct iphdr *iph) in IP_ECN_clear() argument 103 iph->tos &= ~INET_ECN_MASK; in IP_ECN_clear() 120 static inline int IP6_ECN_set_ce(struct sk_buff *skb, struct ipv6hdr *iph) in IP6_ECN_set_ce() argument 124 if (INET_ECN_is_not_ect(ipv6_get_dsfield(iph))) in IP6_ECN_set_ce() 127 from = *(__be32 *)iph; in IP6_ECN_set_ce() [all …]
|
D | ip_vs.h | 89 const struct ipv6hdr *iph = skb_header_pointer( in ip_vs_fill_iph_skb_off() local 91 if (!iph) in ip_vs_fill_iph_skb_off() 94 iphdr->saddr.in6 = iph->saddr; in ip_vs_fill_iph_skb_off() 95 iphdr->daddr.in6 = iph->daddr; in ip_vs_fill_iph_skb_off() 108 const struct iphdr *iph = skb_header_pointer( in ip_vs_fill_iph_skb_off() local 110 if (!iph) in ip_vs_fill_iph_skb_off() 113 iphdr->len = offset + iph->ihl * 4; in ip_vs_fill_iph_skb_off() 115 iphdr->protocol = iph->protocol; in ip_vs_fill_iph_skb_off() 116 iphdr->saddr.ip = iph->saddr; in ip_vs_fill_iph_skb_off() 117 iphdr->daddr.ip = iph->daddr; in ip_vs_fill_iph_skb_off() [all …]
|
D | ip.h | 261 static inline bool ip_is_fragment(const struct iphdr *iph) in ip_is_fragment() argument 263 return (iph->frag_off & htons(IP_MF | IP_OFFSET)) != 0; in ip_is_fragment() 272 int ip_decrease_ttl(struct iphdr *iph) in ip_decrease_ttl() argument 274 u32 check = (__force u32)iph->check; in ip_decrease_ttl() 276 iph->check = (__force __sum16)(check + (check>=0xFFFF)); in ip_decrease_ttl() 277 return --iph->ttl; in ip_decrease_ttl() 334 void __ip_select_ident(struct net *net, struct iphdr *iph, int segs); 339 struct iphdr *iph = ip_hdr(skb); in ip_select_ident_segs() local 341 if ((iph->frag_off & htons(IP_DF)) && !skb->ignore_df) { in ip_select_ident_segs() 348 iph->id = htons(inet_sk(sk)->inet_id); in ip_select_ident_segs() [all …]
|
D | dst_metadata.h | 119 const struct iphdr *iph = ip_hdr(skb); in ip_tun_rx_dst() local 127 iph->saddr, iph->daddr, iph->tos, iph->ttl, in ip_tun_rx_dst()
|
D | ip6_checksum.h | 53 const struct ipv6hdr *iph = skb_gro_network_header(skb); in ip6_gro_compute_pseudo() local 55 return ~csum_unfold(csum_ipv6_magic(&iph->saddr, &iph->daddr, in ip6_gro_compute_pseudo()
|
D | ip_tunnels.h | 256 static inline u8 ip_tunnel_get_dsfield(const struct iphdr *iph, in ip_tunnel_get_dsfield() argument 260 return iph->tos; in ip_tunnel_get_dsfield() 262 return ipv6_get_dsfield((const struct ipv6hdr *)iph); in ip_tunnel_get_dsfield() 268 static inline u8 ip_tunnel_ecn_encap(u8 tos, const struct iphdr *iph, in ip_tunnel_ecn_encap() argument 271 u8 inner = ip_tunnel_get_dsfield(iph, skb); in ip_tunnel_ecn_encap()
|
D | inet_hashtables.h | 335 const struct iphdr *iph = ip_hdr(skb); in __inet_lookup_skb() local 341 iph->saddr, sport, in __inet_lookup_skb() 342 iph->daddr, dport, inet_iif(skb)); in __inet_lookup_skb()
|
D | tcp.h | 480 int __cookie_v4_check(const struct iphdr *iph, const struct tcphdr *th, 525 u32 __cookie_v4_init_sequence(const struct iphdr *iph, const struct tcphdr *th, 534 int __cookie_v6_check(const struct ipv6hdr *iph, const struct tcphdr *th, 538 u32 __cookie_v6_init_sequence(const struct ipv6hdr *iph,
|
D | ipv6.h | 720 const struct ipv6hdr *iph) in iph_to_flow_copy_v6addrs() argument 725 memcpy(&flow->addrs.v6addrs, &iph->saddr, sizeof(flow->addrs.v6addrs)); in iph_to_flow_copy_v6addrs()
|
/linux-4.4.14/include/net/netfilter/ |
D | nf_queue.h | 46 const struct iphdr *iph = ip_hdr(skb); in hash_v4() local 49 if ((__force u32)iph->saddr < (__force u32)iph->daddr) in hash_v4() 50 return jhash_3words((__force u32)iph->saddr, in hash_v4() 51 (__force u32)iph->daddr, iph->protocol, jhash_initval); in hash_v4() 53 return jhash_3words((__force u32)iph->daddr, in hash_v4() 54 (__force u32)iph->saddr, iph->protocol, jhash_initval); in hash_v4()
|
/linux-4.4.14/net/ipv6/netfilter/ |
D | ip6t_rpfilter.c | 33 struct ipv6hdr *iph = ipv6_hdr(skb); in rpfilter_lookup_reverse6() local 37 .flowlabel = (* (__be32 *) iph) & IPV6_FLOWINFO_MASK, in rpfilter_lookup_reverse6() 38 .flowi6_proto = iph->nexthdr, in rpfilter_lookup_reverse6() 39 .daddr = iph->saddr, in rpfilter_lookup_reverse6() 43 if (rpfilter_addr_unicast(&iph->daddr)) { in rpfilter_lookup_reverse6() 44 memcpy(&fl6.saddr, &iph->daddr, sizeof(struct in6_addr)); in rpfilter_lookup_reverse6() 85 struct ipv6hdr *iph; in rpfilter_mt() local 91 iph = ipv6_hdr(skb); in rpfilter_mt() 92 saddrtype = ipv6_addr_type(&iph->saddr); in rpfilter_mt()
|
D | ip6t_SYNPROXY.c | 26 struct ipv6hdr *iph; in synproxy_build_ip() local 29 iph = (struct ipv6hdr *)skb_put(skb, sizeof(*iph)); in synproxy_build_ip() 30 ip6_flow_hdr(iph, 0, 0); in synproxy_build_ip() 31 iph->hop_limit = 64; //XXX in synproxy_build_ip() 32 iph->nexthdr = IPPROTO_TCP; in synproxy_build_ip() 33 iph->saddr = *saddr; in synproxy_build_ip() 34 iph->daddr = *daddr; in synproxy_build_ip() 36 return iph; in synproxy_build_ip() 92 struct ipv6hdr *iph, *niph; in synproxy_send_client_synack() local 97 iph = ipv6_hdr(skb); in synproxy_send_client_synack() [all …]
|
D | nf_dup_ipv6.c | 25 const struct ipv6hdr *iph = ipv6_hdr(skb); in nf_dup_ipv6_route() local 34 fl6.flowlabel = (__force __be32)(((iph->flow_lbl[0] & 0xF) << 16) | in nf_dup_ipv6_route() 35 (iph->flow_lbl[1] << 8) | iph->flow_lbl[2]); in nf_dup_ipv6_route() 66 struct ipv6hdr *iph = ipv6_hdr(skb); in nf_dup_ipv6() local 67 --iph->hop_limit; in nf_dup_ipv6()
|
D | nf_log_ipv6.c | 334 const struct iphdr *iph = in dump_ipv6_mac_header() local 336 nf_log_buf_add(m, "TUNNEL=%pI4->%pI4 ", &iph->saddr, in dump_ipv6_mac_header() 337 &iph->daddr); in dump_ipv6_mac_header()
|
/linux-4.4.14/net/bridge/netfilter/ |
D | nf_tables_bridge.c | 24 struct iphdr *iph; in nft_bridge_iphdr_validate() local 30 iph = ip_hdr(skb); in nft_bridge_iphdr_validate() 31 if (iph->ihl < 5 || iph->version != 4) in nft_bridge_iphdr_validate() 34 len = ntohs(iph->tot_len); in nft_bridge_iphdr_validate() 37 else if (len < (iph->ihl*4)) in nft_bridge_iphdr_validate() 40 if (!pskb_may_pull(skb, iph->ihl*4)) in nft_bridge_iphdr_validate()
|
/linux-4.4.14/drivers/net/ppp/ |
D | pptp.c | 188 struct iphdr *iph; in pptp_xmit() local 204 max_headroom = LL_RESERVED_SPACE(tdev) + sizeof(*iph) + sizeof(*hdr) + 2; in pptp_xmit() 261 skb_push(skb, sizeof(*iph)); in pptp_xmit() 266 iph = ip_hdr(skb); in pptp_xmit() 267 iph->version = 4; in pptp_xmit() 268 iph->ihl = sizeof(struct iphdr) >> 2; in pptp_xmit() 270 iph->frag_off = htons(IP_DF); in pptp_xmit() 272 iph->frag_off = 0; in pptp_xmit() 273 iph->protocol = IPPROTO_GRE; in pptp_xmit() 274 iph->tos = 0; in pptp_xmit() [all …]
|
/linux-4.4.14/net/core/ |
D | tso.c | 24 struct iphdr *iph = (void *)(hdr + mac_hdr_len); in tso_build_hdr() local 26 iph->id = htons(tso->ip_id); in tso_build_hdr() 27 iph->tot_len = htons(size + hdr_len - mac_hdr_len); in tso_build_hdr() 30 struct ipv6hdr *iph = (void *)(hdr + mac_hdr_len); in tso_build_hdr() local 32 iph->payload_len = htons(size + tcp_hdrlen(skb)); in tso_build_hdr()
|
D | netpoll.c | 383 struct iphdr *iph; in netpoll_send_udp() local 394 ip_len = udp_len + sizeof(*iph); in netpoll_send_udp() 450 skb_push(skb, sizeof(*iph)); in netpoll_send_udp() 452 iph = ip_hdr(skb); in netpoll_send_udp() 455 put_unaligned(0x45, (unsigned char *)iph); in netpoll_send_udp() 456 iph->tos = 0; in netpoll_send_udp() 457 put_unaligned(htons(ip_len), &(iph->tot_len)); in netpoll_send_udp() 458 iph->id = htons(atomic_inc_return(&ip_ident)); in netpoll_send_udp() 459 iph->frag_off = 0; in netpoll_send_udp() 460 iph->ttl = 64; in netpoll_send_udp() [all …]
|
D | flow_dissector.c | 171 const struct iphdr *iph; in __skb_flow_dissect() local 174 iph = __skb_header_pointer(skb, nhoff, sizeof(_iph), data, hlen, &_iph); in __skb_flow_dissect() 175 if (!iph || iph->ihl < 5) in __skb_flow_dissect() 177 nhoff += iph->ihl * 4; in __skb_flow_dissect() 179 ip_proto = iph->protocol; in __skb_flow_dissect() 187 memcpy(&key_addrs->v4addrs, &iph->saddr, in __skb_flow_dissect() 191 if (ip_is_fragment(iph)) { in __skb_flow_dissect() 194 if (iph->frag_off & htons(IP_OFFSET)) { in __skb_flow_dissect() 209 const struct ipv6hdr *iph; in __skb_flow_dissect() local 213 iph = __skb_header_pointer(skb, nhoff, sizeof(_iph), data, hlen, &_iph); in __skb_flow_dissect() [all …]
|
D | pktgen.c | 2646 struct iphdr *iph; in process_ipsec() local 2672 iph = ip_hdr(skb); in process_ipsec() 2673 iph->tot_len = htons(skb->len - ETH_HLEN); in process_ipsec() 2674 ip_send_check(iph); in process_ipsec() 2804 struct iphdr *iph; in fill_packet_ipv4() local 2861 iph = (struct iphdr *) skb_put(skb, sizeof(struct iphdr)); in fill_packet_ipv4() 2882 iph->ihl = 5; in fill_packet_ipv4() 2883 iph->version = 4; in fill_packet_ipv4() 2884 iph->ttl = 32; in fill_packet_ipv4() 2885 iph->tos = pkt_dev->tos; in fill_packet_ipv4() [all …]
|
/linux-4.4.14/arch/frv/include/asm/ |
D | checksum.h | 55 __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 75 : "=r" (sum), "=r" (iph), "=r" (ihl), "=r" (inc), "=&r"(tmp) in ip_fast_csum() 76 : "0" (sum), "1" (iph), "2" (ihl), "3" (4), in ip_fast_csum() 77 "m"(*(volatile struct { int _[100]; } *)iph) in ip_fast_csum()
|
/linux-4.4.14/net/bridge/ |
D | br_netfilter_hooks.c | 192 const struct iphdr *iph; in br_validate_ipv4() local 198 iph = ip_hdr(skb); in br_validate_ipv4() 201 if (iph->ihl < 5 || iph->version != 4) in br_validate_ipv4() 204 if (!pskb_may_pull(skb, iph->ihl*4)) in br_validate_ipv4() 207 iph = ip_hdr(skb); in br_validate_ipv4() 208 if (unlikely(ip_fast_csum((u8 *)iph, iph->ihl))) in br_validate_ipv4() 211 len = ntohs(iph->tot_len); in br_validate_ipv4() 215 } else if (len < (iph->ihl*4)) in br_validate_ipv4() 345 struct iphdr *iph = ip_hdr(skb); in br_nf_pre_routing_finish() local 358 if ((err = ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))) { in br_nf_pre_routing_finish() [all …]
|
D | br_multicast.c | 369 struct iphdr *iph; in br_ip4_multicast_alloc_query() local 371 skb = netdev_alloc_skb_ip_align(br->dev, sizeof(*eth) + sizeof(*iph) + in br_ip4_multicast_alloc_query() 392 iph = ip_hdr(skb); in br_ip4_multicast_alloc_query() 394 iph->version = 4; in br_ip4_multicast_alloc_query() 395 iph->ihl = 6; in br_ip4_multicast_alloc_query() 396 iph->tos = 0xc0; in br_ip4_multicast_alloc_query() 397 iph->tot_len = htons(sizeof(*iph) + sizeof(*ih) + 4); in br_ip4_multicast_alloc_query() 398 iph->id = 0; in br_ip4_multicast_alloc_query() 399 iph->frag_off = htons(IP_DF); in br_ip4_multicast_alloc_query() 400 iph->ttl = 1; in br_ip4_multicast_alloc_query() [all …]
|
/linux-4.4.14/arch/x86/um/asm/ |
D | checksum.h | 119 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 143 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 144 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/Documentation/networking/timestamping/ |
D | txtimestamp.c | 341 struct iphdr *iph = (void *) buf; in do_test() local 343 memset(iph, 0, sizeof(*iph)); in do_test() 344 iph->ihl = 5; in do_test() 345 iph->version = 4; in do_test() 346 iph->ttl = 2; in do_test() 347 iph->daddr = daddr.sin_addr.s_addr; in do_test() 348 iph->protocol = IPPROTO_UDP; in do_test() 351 off = sizeof(*iph); in do_test()
|
/linux-4.4.14/arch/avr32/include/asm/ |
D | checksum.h | 62 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 88 : "=r"(sum), "=r"(iph), "=r"(ihl), "=r"(tmp) in ip_fast_csum() 89 : "1"(iph), "2"(ihl) in ip_fast_csum()
|
/linux-4.4.14/arch/m68k/include/asm/ |
D | checksum.h | 45 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 60 : "=d" (sum), "=&a" (iph), "=&d" (ihl), "=&d" (tmp) in ip_fast_csum() 61 : "0" (sum), "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/arch/parisc/include/asm/ |
D | checksum.h | 41 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 66 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 67 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/arch/arm/include/asm/ |
D | checksum.h | 60 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 80 : "=r" (sum), "=r" (iph), "=r" (ihl), "=r" (tmp1) in ip_fast_csum() 81 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/arch/m32r/include/asm/ |
D | checksum.h | 79 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 109 : "=&r" (sum), "=r" (iph), "=r" (ihl), "=&r" (tmpreg0), "=&r" (tmpreg1) in ip_fast_csum() 110 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/arch/score/include/asm/ |
D | checksum.h | 83 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 123 : "=&r" (sum), "=&r" (iph), "=&r" (ihl), "=&r" (dummy) in ip_fast_csum() 124 : "1" (iph), "2" (ihl)); in ip_fast_csum()
|
/linux-4.4.14/arch/x86/include/asm/ |
D | checksum_64.h | 45 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 69 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 70 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
D | checksum_32.h | 70 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 94 : "=r" (sum), "=r" (iph), "=r" (ihl) in ip_fast_csum() 95 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/net/dccp/ |
D | ipv4.c | 148 const struct iphdr *iph, in dccp_do_pmtu_discovery() argument 236 const struct iphdr *iph = (struct iphdr *)skb->data; in dccp_v4_err() local 237 const u8 offset = iph->ihl << 2; in dccp_v4_err() 255 iph->daddr, dh->dccph_dport, in dccp_v4_err() 256 iph->saddr, ntohs(dh->dccph_sport), in dccp_v4_err() 304 dccp_do_pmtu_discovery(sk, iph, info); in dccp_v4_err() 451 const struct iphdr *iph = ip_hdr(skb); in dccp_v4_route_skb() local 454 .daddr = iph->saddr, in dccp_v4_route_skb() 455 .saddr = iph->daddr, in dccp_v4_route_skb() 766 const struct iphdr *iph; in dccp_v4_rcv() local [all …]
|
/linux-4.4.14/arch/sh/include/asm/ |
D | checksum_32.h | 89 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 110 : "=r" (sum), "=r" (iph), "=r" (ihl), "=&r" (__dummy0), "=&z" (__dummy1) in ip_fast_csum() 111 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/drivers/infiniband/hw/nes/ |
D | nes_mgt.c | 177 struct iphdr *iph = (struct iphdr *)(cb->data_start + ETH_HLEN); in nes_get_seq() local 178 struct tcphdr *tcph = (struct tcphdr *)(((char *)iph) + (4 * iph->ihl)); in nes_get_seq() 245 struct iphdr *iph; in get_fpdu_info() local 337 iph = (struct iphdr *)(cb->data_start + ETH_HLEN); in get_fpdu_info() 338 tcph = (struct tcphdr *)(((char *)iph) + (4 * iph->ihl)); in get_fpdu_info() 357 iph = (struct iphdr *)(fpdu_info->hdr_vbase + ETH_HLEN); in get_fpdu_info() 358 tcph = (struct tcphdr *)(((char *)iph) + (4 * iph->ihl)); in get_fpdu_info() 361 iph->tot_len = cpu_to_be16(tot_len); in get_fpdu_info() 362 iph->saddr = cpu_to_be32(0x7f000001); in get_fpdu_info() 386 iph = (struct iphdr *)(cb->data_start + ETH_HLEN); in get_fpdu_info() [all …]
|
D | nes_cm.c | 440 struct iphdr *iph; in form_cm_frame() local 443 u16 packetsize = sizeof(*iph); in form_cm_frame() 449 memset(skb->data, 0x00, ETH_HLEN + sizeof(*iph) + sizeof(*tcph)); in form_cm_frame() 456 iph = (struct iphdr *)buf; in form_cm_frame() 457 buf += sizeof(*iph); in form_cm_frame() 461 skb_set_transport_header(skb, ETH_HLEN + sizeof(*iph)); in form_cm_frame() 475 iph->version = IPVERSION; in form_cm_frame() 476 iph->ihl = 5; /* 5 * 4Byte words, IP headr len */ in form_cm_frame() 477 iph->tos = 0; in form_cm_frame() 478 iph->tot_len = htons(packetsize); in form_cm_frame() [all …]
|
/linux-4.4.14/arch/arc/include/asm/ |
D | checksum.h | 41 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 43 const void *ptr = iph; in ip_fast_csum()
|
/linux-4.4.14/arch/xtensa/include/asm/ |
D | checksum.h | 90 static __inline__ __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 117 : "=r" (sum), "=r" (iph), "=r" (ihl), "=&r" (tmp), in ip_fast_csum() 119 : "1" (iph), "2" (ihl) in ip_fast_csum()
|
/linux-4.4.14/drivers/staging/gdm72xx/ |
D | gdm_qos.c | 188 static int get_qos_index(struct nic *nic, u8 *iph, u8 *tcpudph) in get_qos_index() argument 193 if (!iph || !tcpudph) in get_qos_index() 196 ip_ver = (iph[0]>>4)&0xf; in get_qos_index() 206 if (chk_ipv4_rule(&qcb->csr[i], iph, tcpudph) == 0) in get_qos_index() 258 struct iphdr *iph = (struct iphdr *)((char *)ethh + ETH_HLEN); in gdm_qos_send_hci_pkt() local 264 tcph = (struct tcphdr *)iph + iph->ihl*4; in gdm_qos_send_hci_pkt() 277 index = get_qos_index(nic, (u8 *)iph, (u8 *)tcph); in gdm_qos_send_hci_pkt()
|
/linux-4.4.14/arch/cris/include/asm/ |
D | checksum.h | 55 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 57 return csum_fold(csum_partial(iph, ihl * 4, 0)); in ip_fast_csum()
|
/linux-4.4.14/arch/sparc/include/asm/ |
D | checksum_32.h | 121 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 151 : "=r" (sum), "=&r" (iph) in ip_fast_csum() 152 : "r" (ihl), "1" (iph) in ip_fast_csum()
|
D | checksum_64.h | 80 __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/net/netfilter/ipset/ |
D | ip_set_getport.c | 100 const struct iphdr *iph = ip_hdr(skb); in ip_set_get_ip4_port() local 102 int protocol = iph->protocol; in ip_set_get_ip4_port() 108 if (ntohs(iph->frag_off) & IP_OFFSET) in ip_set_get_ip4_port()
|
/linux-4.4.14/drivers/net/usb/ |
D | cdc_mbim.c | 310 struct ipv6hdr *iph = (void *)buf; in do_neigh_solicit() local 311 struct nd_msg *msg = (void *)(iph + 1); in do_neigh_solicit() 319 if (!ipv6_addr_is_solict_mult(&iph->daddr) || in do_neigh_solicit() 320 !(ipv6_addr_type(&iph->saddr) & IPV6_ADDR_UNICAST)) in do_neigh_solicit() 345 ipv6_stub->ndisc_send_na(netdev, &iph->saddr, &msg->target, in do_neigh_solicit() 356 struct ipv6hdr *iph = (void *)buf; in is_neigh_solicit() local 357 struct nd_msg *msg = (void *)(iph + 1); in is_neigh_solicit() 360 iph->nexthdr == IPPROTO_ICMPV6 && in is_neigh_solicit()
|
/linux-4.4.14/arch/s390/include/asm/ |
D | checksum.h | 84 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 86 return csum_fold(csum_partial(iph, ihl*4, 0)); in ip_fast_csum()
|
/linux-4.4.14/arch/mn10300/lib/ |
D | checksum.c | 30 __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 32 return ~do_csum(iph, ihl * 4); in ip_fast_csum()
|
/linux-4.4.14/lib/ |
D | checksum.c | 110 __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 112 return (__force __sum16)~do_csum(iph, ihl*4); in ip_fast_csum()
|
/linux-4.4.14/arch/alpha/lib/ |
D | checksum.c | 147 __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 149 return (__force __sum16)~do_csum(iph,ihl*4); in ip_fast_csum()
|
/linux-4.4.14/drivers/net/ethernet/sun/ |
D | sunvnet.c | 319 struct iphdr *iph = ip_hdr(skb); in vnet_fullcsum() local 324 if (iph->protocol != IPPROTO_TCP && in vnet_fullcsum() 325 iph->protocol != IPPROTO_UDP) in vnet_fullcsum() 330 if (iph->protocol == IPPROTO_TCP) { in vnet_fullcsum() 335 ptcp->check = csum_tcpudp_magic(iph->saddr, iph->daddr, in vnet_fullcsum() 338 } else if (iph->protocol == IPPROTO_UDP) { in vnet_fullcsum() 343 pudp->check = csum_tcpudp_magic(iph->saddr, iph->daddr, in vnet_fullcsum() 394 struct iphdr *iph = (struct iphdr *)skb->data; in vnet_rx_one() local 396 iph->check = 0; in vnet_rx_one() 397 ip_send_check(iph); in vnet_rx_one() [all …]
|
/linux-4.4.14/drivers/infiniband/hw/qib/ |
D | qib_user_sdma.c | 457 hdr->iph.pkt_flags = in qib_user_sdma_page_to_frags() 458 cpu_to_le16(le16_to_cpu(hdr->iph.pkt_flags)|0x2); in qib_user_sdma_page_to_frags() 469 vcto = le32_to_cpu(hdr->iph.ver_ctxt_tid_offset); in qib_user_sdma_page_to_frags() 470 hdr->iph.chksum = cpu_to_le16(QIB_LRH_BTH + in qib_user_sdma_page_to_frags() 473 le16_to_cpu(hdr->iph.pkt_flags)); in qib_user_sdma_page_to_frags() 503 hdr->iph.ver_ctxt_tid_offset = cpu_to_le32( in qib_user_sdma_page_to_frags() 504 (le32_to_cpu(hdr->iph.ver_ctxt_tid_offset)&0xFF000000) + in qib_user_sdma_page_to_frags() 513 vcto = le32_to_cpu(hdr->iph.ver_ctxt_tid_offset); in qib_user_sdma_page_to_frags() 514 hdr->iph.chksum = cpu_to_le16(QIB_LRH_BTH + in qib_user_sdma_page_to_frags() 517 le16_to_cpu(hdr->iph.pkt_flags)); in qib_user_sdma_page_to_frags()
|
D | qib_common.h | 703 struct qib_header iph; member
|
/linux-4.4.14/arch/mips/include/asm/ |
D | checksum.h | 131 static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) in ip_fast_csum() argument 133 const unsigned int *word = iph; in ip_fast_csum()
|
/linux-4.4.14/drivers/net/ethernet/intel/i40evf/ |
D | i40e_txrx.c | 800 struct iphdr *iph; in i40e_rx_checksum() local 870 iph = ip_hdr(skb); in i40e_rx_checksum() 871 csum = csum_tcpudp_magic(iph->saddr, iph->daddr, in i40e_rx_checksum() 1451 struct iphdr *iph; in i40e_tso() local 1462 iph = skb->encapsulation ? inner_ip_hdr(skb) : ip_hdr(skb); in i40e_tso() 1465 if (iph->version == 4) { in i40e_tso() 1467 iph->tot_len = 0; in i40e_tso() 1468 iph->check = 0; in i40e_tso() 1469 tcph->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr, in i40e_tso()
|
/linux-4.4.14/net/atm/ |
D | mpc.c | 494 struct iphdr *iph; in send_via_shortcut() local 507 iph = (struct iphdr *)buff; in send_via_shortcut() 508 ipaddr = iph->daddr; in send_via_shortcut() 531 if (iph->ttl <= 1) { in send_via_shortcut() 533 mpc->dev->name, iph->ttl); in send_via_shortcut() 537 iph->ttl--; in send_via_shortcut() 538 iph->check = 0; in send_via_shortcut() 539 iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl); in send_via_shortcut()
|
D | br2684.c | 481 struct iphdr *iph; in br2684_push() local 484 iph = ip_hdr(skb); in br2684_push() 485 if (iph->version == 4) in br2684_push() 487 else if (iph->version == 6) in br2684_push()
|
/linux-4.4.14/arch/ia64/include/asm/ |
D | checksum.h | 13 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/arch/alpha/include/asm/ |
D | checksum.h | 10 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/include/linux/ |
D | inet_lro.h | 51 struct iphdr *iph; member
|
/linux-4.4.14/include/asm-generic/ |
D | checksum.h | 46 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/arch/nios2/include/asm/ |
D | checksum.h | 22 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/arch/mn10300/include/asm/ |
D | checksum.h | 20 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/arch/metag/include/asm/ |
D | checksum.h | 55 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/drivers/net/ethernet/qlogic/qlcnic/ |
D | qlcnic_io.c | 1267 struct iphdr *iph; in qlcnic_process_lro() local 1325 iph = (struct iphdr *)skb->data; in qlcnic_process_lro() 1326 th = (struct tcphdr *)(skb->data + (iph->ihl << 2)); in qlcnic_process_lro() 1327 length = (iph->ihl << 2) + (th->doff << 2) + lro_length; in qlcnic_process_lro() 1328 csum_replace2(&iph->check, iph->tot_len, htons(length)); in qlcnic_process_lro() 1329 iph->tot_len = htons(length); in qlcnic_process_lro() 1789 struct iphdr *iph; in qlcnic_83xx_process_lro() local 1848 iph = (struct iphdr *)skb->data; in qlcnic_83xx_process_lro() 1849 th = (struct tcphdr *)(skb->data + (iph->ihl << 2)); in qlcnic_83xx_process_lro() 1850 length = (iph->ihl << 2) + (th->doff << 2) + lro_length; in qlcnic_83xx_process_lro() [all …]
|
/linux-4.4.14/drivers/net/ethernet/apm/xgene/ |
D | xgene_enet_main.c | 193 struct iphdr *iph; in xgene_enet_work_msg() local 209 iph = ip_hdr(skb); in xgene_enet_work_msg() 210 if (unlikely(ip_is_fragment(iph))) in xgene_enet_work_msg() 213 if (likely(iph->protocol == IPPROTO_TCP)) { in xgene_enet_work_msg() 244 } else if (iph->protocol == IPPROTO_UDP) { in xgene_enet_work_msg() 465 struct iphdr *iph = ip_hdr(skb); in xgene_enet_skip_csum() local 467 if (!ip_is_fragment(iph) || in xgene_enet_skip_csum() 468 (iph->protocol != IPPROTO_TCP && iph->protocol != IPPROTO_UDP)) { in xgene_enet_skip_csum()
|
/linux-4.4.14/include/uapi/linux/ |
D | if_tunnel.h | 37 struct iphdr iph; member
|
/linux-4.4.14/drivers/net/ |
D | geneve.c | 155 struct iphdr *iph = NULL; in geneve_rx() local 170 iph = ip_hdr(skb); /* outer IP header... */ in geneve_rx() 178 addr = iph->saddr; in geneve_rx() 238 if (iph) in geneve_rx() 239 err = IP_ECN_decapsulate(iph, skb); in geneve_rx() 247 if (iph) in geneve_rx() 250 &iph->saddr, iph->tos); in geneve_rx()
|
D | vrf.c | 225 const struct ipv6hdr *iph = ipv6_hdr(skb); in vrf_process_v6_outbound() local 231 .daddr = iph->daddr, in vrf_process_v6_outbound() 232 .saddr = iph->saddr, in vrf_process_v6_outbound() 233 .flowlabel = ip6_flowinfo(iph), in vrf_process_v6_outbound() 235 .flowi6_proto = iph->nexthdr, in vrf_process_v6_outbound()
|
/linux-4.4.14/arch/powerpc/include/asm/ |
D | checksum.h | 20 extern __sum16 ip_fast_csum(const void *iph, unsigned int ihl);
|
/linux-4.4.14/drivers/net/ethernet/intel/i40e/ |
D | i40e_txrx.c | 1326 struct iphdr *iph; in i40e_rx_checksum() local 1397 iph = ip_hdr(skb); in i40e_rx_checksum() 1399 iph->saddr, iph->daddr, in i40e_rx_checksum() 2202 struct iphdr *iph; in i40e_tso() local 2213 iph = skb->encapsulation ? inner_ip_hdr(skb) : ip_hdr(skb); in i40e_tso() 2216 if (iph->version == 4) { in i40e_tso() 2218 iph->tot_len = 0; in i40e_tso() 2219 iph->check = 0; in i40e_tso() 2220 tcph->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr, in i40e_tso()
|
/linux-4.4.14/arch/c6x/lib/ |
D | csum_64plus.S | 159 ;ip_fast_csum(unsigned char *iph, unsigned int ihl) 162 ; unsigned short *tosum = (unsigned short *) iph; 183 ; A4: iph
|
/linux-4.4.14/drivers/staging/rdma/ipath/ |
D | ipath_common.h | 746 struct ipath_header iph; member 754 struct ipath_header iph; member
|
/linux-4.4.14/drivers/net/ethernet/mellanox/mlx4/ |
D | en_rx.c | 684 struct iphdr *iph) in get_fixed_ipv4_csum() argument 689 length_for_csum = (be16_to_cpu(iph->tot_len) - (iph->ihl << 2)); in get_fixed_ipv4_csum() 690 csum_pseudo_header = csum_tcpudp_nofold(iph->saddr, iph->daddr, in get_fixed_ipv4_csum() 691 length_for_csum, iph->protocol, 0); in get_fixed_ipv4_csum()
|
/linux-4.4.14/drivers/net/ethernet/ibm/ |
D | ibmveth.c | 1182 struct iphdr *iph; in ibmveth_poll() local 1228 iph = (struct iphdr *)skb->data; in ibmveth_poll() 1233 if (iph->check == 0xffff) { in ibmveth_poll() 1234 iph->check = 0; in ibmveth_poll() 1235 iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl); in ibmveth_poll()
|
/linux-4.4.14/drivers/net/ethernet/qlogic/netxen/ |
D | netxen_nic_init.c | 1598 struct iphdr *iph; in netxen_process_lro() local 1641 iph = (struct iphdr *)(skb->data + vhdr_len); in netxen_process_lro() 1642 th = (struct tcphdr *)((skb->data + vhdr_len) + (iph->ihl << 2)); in netxen_process_lro() 1644 length = (iph->ihl << 2) + (th->doff << 2) + lro_length; in netxen_process_lro() 1645 csum_replace2(&iph->check, iph->tot_len, htons(length)); in netxen_process_lro() 1646 iph->tot_len = htons(length); in netxen_process_lro()
|
/linux-4.4.14/drivers/net/ethernet/atheros/atlx/ |
D | atl1.c | 2133 struct iphdr *iph = ip_hdr(skb); in atl1_tso() local 2135 real_len = (((unsigned char *)iph - skb->data) + in atl1_tso() 2136 ntohs(iph->tot_len)); in atl1_tso() 2141 iph->check = 0; in atl1_tso() 2143 ~csum_tcpudp_magic(iph->saddr, in atl1_tso() 2144 iph->daddr, tcp_hdrlen(skb), in atl1_tso() 2146 ptpd->word3 |= (iph->ihl & TPD_IPHL_MASK) << in atl1_tso() 2156 iph->check = 0; in atl1_tso() 2157 tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr, in atl1_tso() 2158 iph->daddr, 0, IPPROTO_TCP, 0); in atl1_tso() [all …]
|
/linux-4.4.14/drivers/net/ethernet/qlogic/qlge/ |
D | qlge_main.c | 1606 struct iphdr *iph = in ql_process_mac_rx_page() local 1608 if (!(iph->frag_off & in ql_process_mac_rx_page() 1721 struct iphdr *iph = (struct iphdr *) skb->data; in ql_process_mac_rx_skb() local 1722 if (!(iph->frag_off & in ql_process_mac_rx_skb() 2035 struct iphdr *iph = (struct iphdr *) skb->data; in ql_process_mac_split_rx_intr() local 2036 if (!(iph->frag_off & in ql_process_mac_split_rx_intr() 2594 struct iphdr *iph = ip_hdr(skb); in ql_tso() local 2595 iph->check = 0; in ql_tso() 2597 tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr, in ql_tso() 2598 iph->daddr, 0, in ql_tso() [all …]
|
/linux-4.4.14/drivers/infiniband/hw/cxgb4/ |
D | cm.c | 3780 struct iphdr *iph; in rx_pkt() local 3836 iph = (struct iphdr *)(eh + 1); in rx_pkt() 3839 iph = (struct iphdr *)(vlan_eh + 1); in rx_pkt() 3843 if (iph->version != 0x4) in rx_pkt() 3846 tcph = (struct tcphdr *)(iph + 1); in rx_pkt() 3847 skb_set_network_header(skb, (void *)iph - (void *)rss); in rx_pkt() 3852 ntohl(iph->daddr), ntohs(tcph->dest), ntohl(iph->saddr), in rx_pkt() 3853 ntohs(tcph->source), iph->tos); in rx_pkt() 3855 dst = find_route(dev, iph->daddr, iph->saddr, tcph->dest, tcph->source, in rx_pkt() 3856 iph->tos); in rx_pkt() [all …]
|
/linux-4.4.14/drivers/net/ethernet/intel/ixgb/ |
D | ixgb_main.c | 1227 struct iphdr *iph; in ixgb_tso() local 1236 iph = ip_hdr(skb); in ixgb_tso() 1237 iph->tot_len = 0; in ixgb_tso() 1238 iph->check = 0; in ixgb_tso() 1239 tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr, in ixgb_tso() 1240 iph->daddr, 0, in ixgb_tso() 1243 ipcso = (void *)&(iph->check) - (void *)skb->data; in ixgb_tso()
|
/linux-4.4.14/drivers/net/bonding/ |
D | bond_alb.c | 1381 const struct iphdr *iph = ip_hdr(skb); in bond_alb_xmit() local 1384 (iph->daddr == ip_bcast) || in bond_alb_xmit() 1385 (iph->protocol == IPPROTO_IGMP)) { in bond_alb_xmit() 1389 hash_start = (char *)&(iph->daddr); in bond_alb_xmit() 1390 hash_size = sizeof(iph->daddr); in bond_alb_xmit()
|
D | bond_main.c | 3105 const struct iphdr *iph; in bond_flow_dissect() local 3114 if (unlikely(!pskb_may_pull(skb, noff + sizeof(*iph)))) in bond_flow_dissect() 3116 iph = ip_hdr(skb); in bond_flow_dissect() 3117 iph_to_flow_copy_v4addrs(fk, iph); in bond_flow_dissect() 3118 noff += iph->ihl << 2; in bond_flow_dissect() 3119 if (!ip_is_fragment(iph)) in bond_flow_dissect() 3120 proto = iph->protocol; in bond_flow_dissect() 3709 struct iphdr *iph = ip_hdr(skb); in bond_xmit_roundrobin() local 3719 if (iph->protocol == IPPROTO_IGMP && skb->protocol == htons(ETH_P_IP)) { in bond_xmit_roundrobin()
|
/linux-4.4.14/net/l2tp/ |
D | l2tp_ip.c | 182 struct iphdr *iph = (struct iphdr *) skb_network_header(skb); in l2tp_ip_recv() local 185 sk = __l2tp_ip_bind_lookup(net, iph->daddr, 0, tunnel_id); in l2tp_ip_recv()
|
D | l2tp_ip6.c | 194 struct ipv6hdr *iph = ipv6_hdr(skb); in l2tp_ip6_recv() local 197 sk = __l2tp_ip6_bind_lookup(&init_net, &iph->daddr, in l2tp_ip6_recv()
|
/linux-4.4.14/drivers/net/ethernet/pasemi/ |
D | pasemi_mac.c | 265 struct iphdr *iph; in get_skb_hdr() local 273 iph = ip_hdr(skb); in get_skb_hdr() 274 if (iph->protocol != IPPROTO_TCP) in get_skb_hdr() 282 if (ntohs(iph->tot_len) < ip_len + tcp_hdrlen(skb)) in get_skb_hdr() 286 *iphdr = iph; in get_skb_hdr()
|
/linux-4.4.14/drivers/net/ethernet/oki-semi/pch_gbe/ |
D | pch_gbe_main.c | 1174 struct iphdr *iph = ip_hdr(skb); in pch_gbe_tx_queue() local 1177 if (iph->protocol == IPPROTO_TCP) { in pch_gbe_tx_queue() 1183 csum_tcpudp_magic(iph->saddr, in pch_gbe_tx_queue() 1184 iph->daddr, in pch_gbe_tx_queue() 1188 } else if (iph->protocol == IPPROTO_UDP) { in pch_gbe_tx_queue() 1195 csum_tcpudp_magic(iph->saddr, in pch_gbe_tx_queue() 1196 iph->daddr, in pch_gbe_tx_queue()
|
/linux-4.4.14/drivers/s390/net/ |
D | qeth_l3_main.c | 2767 struct iphdr *iph = ip_hdr(skb); in qeth_l3_hdr_csum() local 2772 if (iph->protocol == IPPROTO_UDP) in qeth_l3_hdr_csum() 2776 iph->check = 0; in qeth_l3_hdr_csum() 2786 struct iphdr *iph = ip_hdr(skb); in qeth_tso_fill_header() local 2800 hdr->ext.dg_hdr_len = (__u16)(iph->ihl*4 + tcph->doff*4); in qeth_tso_fill_header() 2810 tcph->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr, in qeth_tso_fill_header() 2812 iph->tot_len = 0; in qeth_tso_fill_header() 2813 iph->check = 0; in qeth_tso_fill_header()
|
/linux-4.4.14/drivers/net/vmxnet3/ |
D | vmxnet3_drv.c | 850 const struct iphdr *iph = ip_hdr(skb); in vmxnet3_parse_and_copy_hdr() local 852 protocol = iph->protocol; in vmxnet3_parse_and_copy_hdr() 915 struct iphdr *iph = ip_hdr(skb); in vmxnet3_prepare_tso() local 917 iph->check = 0; in vmxnet3_prepare_tso() 918 tcph->check = ~csum_tcpudp_magic(iph->saddr, iph->daddr, 0, in vmxnet3_prepare_tso() 921 struct ipv6hdr *iph = ipv6_hdr(skb); in vmxnet3_prepare_tso() local 923 tcph->check = ~csum_ipv6_magic(&iph->saddr, &iph->daddr, 0, in vmxnet3_prepare_tso()
|
/linux-4.4.14/drivers/net/ethernet/chelsio/cxgb4vf/ |
D | sge.c | 1088 const struct iphdr *iph = ip_hdr(skb); in hwcsum() local 1090 if (iph->version == 4) { in hwcsum() 1091 if (iph->protocol == IPPROTO_TCP) in hwcsum() 1093 else if (iph->protocol == IPPROTO_UDP) in hwcsum() 1107 const struct ipv6hdr *ip6h = (const struct ipv6hdr *)iph; in hwcsum()
|
/linux-4.4.14/drivers/net/ethernet/broadcom/bnx2x/ |
D | bnx2x_cmn.c | 706 const struct iphdr *iph = ip_hdr(skb); in bnx2x_gro_ip_csum() local 713 iph->saddr, iph->daddr, 0); in bnx2x_gro_ip_csum() 718 struct ipv6hdr *iph = ipv6_hdr(skb); in bnx2x_gro_ipv6_csum() local 725 &iph->saddr, &iph->daddr, 0); in bnx2x_gro_ipv6_csum() 3709 struct iphdr *iph = ip_hdr(skb); in bnx2x_update_pbds_gso_enc() local 3710 u32 csum = (__force u32)(~iph->check) - in bnx2x_update_pbds_gso_enc() 3711 (__force u32)iph->tot_len - in bnx2x_update_pbds_gso_enc() 3712 (__force u32)iph->frag_off; in bnx2x_update_pbds_gso_enc() 3714 outerip_len = iph->ihl << 1; in bnx2x_update_pbds_gso_enc()
|
/linux-4.4.14/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt.c | 871 struct iphdr *iph; in bnxt_gro_skb() local 876 iph = ip_hdr(skb); in bnxt_gro_skb() 880 th->check = ~tcp_v4_check(len, iph->saddr, iph->daddr, 0); in bnxt_gro_skb() 882 struct ipv6hdr *iph; in bnxt_gro_skb() local 887 iph = ipv6_hdr(skb); in bnxt_gro_skb() 891 th->check = ~tcp_v6_check(len, &iph->saddr, &iph->daddr, 0); in bnxt_gro_skb() 902 struct iphdr *iph = (struct iphdr *)skb->data; in bnxt_gro_skb() local 904 if (iph->protocol == IPPROTO_UDP) in bnxt_gro_skb() 905 uh = (struct udphdr *)(iph + 1); in bnxt_gro_skb() 907 struct ipv6hdr *iph = (struct ipv6hdr *)skb->data; in bnxt_gro_skb() local [all …]
|
/linux-4.4.14/net/sctp/ |
D | input.c | 570 const struct iphdr *iph = (const struct iphdr *)skb->data; in sctp_v4_err() local 571 const int ihlen = iph->ihl * 4; in sctp_v4_err()
|
/linux-4.4.14/drivers/net/ethernet/intel/igbvf/ |
D | netdev.c | 1935 struct iphdr *iph = ip_hdr(skb); in igbvf_tso() local 1937 iph->tot_len = 0; in igbvf_tso() 1938 iph->check = 0; in igbvf_tso() 1939 tcp_hdr(skb)->check = ~csum_tcpudp_magic(iph->saddr, in igbvf_tso() 1940 iph->daddr, 0, in igbvf_tso()
|
/linux-4.4.14/drivers/net/ethernet/chelsio/cxgb4/ |
D | sge.c | 1039 const struct iphdr *iph = ip_hdr(skb); in hwcsum() local 1041 if (iph->version == 4) { in hwcsum() 1042 if (iph->protocol == IPPROTO_TCP) in hwcsum() 1044 else if (iph->protocol == IPPROTO_UDP) in hwcsum() 1057 const struct ipv6hdr *ip6h = (const struct ipv6hdr *)iph; in hwcsum()
|