• Home
  • Raw
  • Download

Lines Matching refs:iph

93 void ip_send_check(struct iphdr *iph)  in ip_send_check()  argument
95 iph->check = 0; in ip_send_check()
96 iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl); in ip_send_check()
102 struct iphdr *iph = ip_hdr(skb); in __ip_local_out() local
106 iph_set_totlen(iph, skb->len); in __ip_local_out()
107 ip_send_check(iph); in __ip_local_out()
156 struct iphdr *iph; in ip_build_and_send_pkt() local
161 iph = ip_hdr(skb); in ip_build_and_send_pkt()
162 iph->version = 4; in ip_build_and_send_pkt()
163 iph->ihl = 5; in ip_build_and_send_pkt()
164 iph->tos = tos; in ip_build_and_send_pkt()
165 iph->ttl = ip_select_ttl(inet, &rt->dst); in ip_build_and_send_pkt()
166 iph->daddr = (opt && opt->opt.srr ? opt->opt.faddr : daddr); in ip_build_and_send_pkt()
167 iph->saddr = saddr; in ip_build_and_send_pkt()
168 iph->protocol = sk->sk_protocol; in ip_build_and_send_pkt()
171 iph->frag_off = htons(IP_DF); in ip_build_and_send_pkt()
172 iph->id = 0; in ip_build_and_send_pkt()
174 iph->frag_off = 0; in ip_build_and_send_pkt()
179 iph->id = (__force __be16)get_random_u16(); in ip_build_and_send_pkt()
181 __ip_select_ident(net, iph, 1); in ip_build_and_send_pkt()
185 iph->ihl += opt->opt.optlen>>2; in ip_build_and_send_pkt()
446 static void ip_copy_addrs(struct iphdr *iph, const struct flowi4 *fl4) in ip_copy_addrs() argument
451 iph->saddr = fl4->saddr; in ip_copy_addrs()
452 iph->daddr = fl4->daddr; in ip_copy_addrs()
464 struct iphdr *iph; in __ip_queue_xmit() local
511 iph = ip_hdr(skb); in __ip_queue_xmit()
512 *((__be16 *)iph) = htons((4 << 12) | (5 << 8) | (tos & 0xff)); in __ip_queue_xmit()
514 iph->frag_off = htons(IP_DF); in __ip_queue_xmit()
516 iph->frag_off = 0; in __ip_queue_xmit()
517 iph->ttl = ip_select_ttl(inet, &rt->dst); in __ip_queue_xmit()
518 iph->protocol = sk->sk_protocol; in __ip_queue_xmit()
519 ip_copy_addrs(iph, fl4); in __ip_queue_xmit()
524 iph->ihl += inet_opt->opt.optlen >> 2; in __ip_queue_xmit()
581 struct iphdr *iph = ip_hdr(skb); in ip_fragment() local
583 if ((iph->frag_off & htons(IP_DF)) == 0) in ip_fragment()
599 void ip_fraglist_init(struct sk_buff *skb, struct iphdr *iph, in ip_fraglist_init() argument
608 iter->iph = iph; in ip_fraglist_init()
613 iph->tot_len = htons(first_len); in ip_fraglist_init()
614 iph->frag_off = htons(IP_MF); in ip_fraglist_init()
615 ip_send_check(iph); in ip_fraglist_init()
622 struct iphdr *iph = iter->iph; in ip_fraglist_prepare() local
630 memcpy(skb_network_header(frag), iph, hlen); in ip_fraglist_prepare()
631 iter->iph = ip_hdr(frag); in ip_fraglist_prepare()
632 iph = iter->iph; in ip_fraglist_prepare()
633 iph->tot_len = htons(frag->len); in ip_fraglist_prepare()
636 iph->frag_off = htons(iter->offset >> 3); in ip_fraglist_prepare()
638 iph->frag_off |= htons(IP_MF); in ip_fraglist_prepare()
640 ip_send_check(iph); in ip_fraglist_prepare()
648 struct iphdr *iph = ip_hdr(skb); in ip_frag_init() local
658 state->offset = (ntohs(iph->frag_off) & IP_OFFSET) << 3; in ip_frag_init()
659 state->not_last_frag = iph->frag_off & htons(IP_MF); in ip_frag_init()
683 struct iphdr *iph; in ip_frag_next() local
733 iph = ip_hdr(skb2); in ip_frag_next()
734 iph->frag_off = htons((state->offset >> 3)); in ip_frag_next()
736 iph->frag_off |= htons(IP_DF); in ip_frag_next()
743 iph->frag_off |= htons(IP_MF); in ip_frag_next()
747 iph->tot_len = htons(len + state->hlen); in ip_frag_next()
749 ip_send_check(iph); in ip_frag_next()
765 struct iphdr *iph; in ip_do_fragment() local
784 iph = ip_hdr(skb); in ip_do_fragment()
794 hlen = iph->ihl * 4; in ip_do_fragment()
812 ip_is_fragment(iph) || in ip_do_fragment()
837 ip_fraglist_init(skb, iph, hlen, &iter); in ip_do_fragment()
855 ip_send_check(iter.iph); in ip_do_fragment()
1391 struct iphdr *iph; in __ip_make_skb() local
1439 iph = ip_hdr(skb); in __ip_make_skb()
1440 iph->version = 4; in __ip_make_skb()
1441 iph->ihl = 5; in __ip_make_skb()
1442 iph->tos = (cork->tos != -1) ? cork->tos : inet->tos; in __ip_make_skb()
1443 iph->frag_off = df; in __ip_make_skb()
1444 iph->ttl = ttl; in __ip_make_skb()
1445 iph->protocol = sk->sk_protocol; in __ip_make_skb()
1446 ip_copy_addrs(iph, fl4); in __ip_make_skb()
1450 iph->ihl += opt->optlen >> 2; in __ip_make_skb()
1464 if (iph->protocol == IPPROTO_ICMP) { in __ip_make_skb()