Lines Matching refs:top_iph

151 	struct iphdr *top_iph;  in xfrm4_beet_encap_add()  local
160 (XFRM_MODE_SKB_CB(skb)->ihl - sizeof(*top_iph))); in xfrm4_beet_encap_add()
165 skb->transport_header = skb->network_header + sizeof(*top_iph); in xfrm4_beet_encap_add()
171 top_iph = ip_hdr(skb); in xfrm4_beet_encap_add()
179 ph->nexthdr = top_iph->protocol; in xfrm4_beet_encap_add()
183 top_iph->protocol = IPPROTO_BEETPH; in xfrm4_beet_encap_add()
184 top_iph->ihl = sizeof(struct iphdr) / 4; in xfrm4_beet_encap_add()
187 top_iph->saddr = x->props.saddr.a4; in xfrm4_beet_encap_add()
188 top_iph->daddr = x->id.daddr.a4; in xfrm4_beet_encap_add()
200 struct iphdr *top_iph; in xfrm4_tunnel_encap_add() local
209 skb->transport_header = skb->network_header + sizeof(*top_iph); in xfrm4_tunnel_encap_add()
210 top_iph = ip_hdr(skb); in xfrm4_tunnel_encap_add()
212 top_iph->ihl = 5; in xfrm4_tunnel_encap_add()
213 top_iph->version = 4; in xfrm4_tunnel_encap_add()
215 top_iph->protocol = xfrm_af2proto(skb_dst(skb)->ops->family); in xfrm4_tunnel_encap_add()
219 top_iph->tos = 0; in xfrm4_tunnel_encap_add()
221 top_iph->tos = XFRM_MODE_SKB_CB(skb)->tos; in xfrm4_tunnel_encap_add()
222 top_iph->tos = INET_ECN_encapsulate(top_iph->tos, in xfrm4_tunnel_encap_add()
227 IP_ECN_clear(top_iph); in xfrm4_tunnel_encap_add()
229 top_iph->frag_off = (flags & XFRM_STATE_NOPMTUDISC) ? in xfrm4_tunnel_encap_add()
232 top_iph->ttl = ip4_dst_hoplimit(xfrm_dst_child(dst)); in xfrm4_tunnel_encap_add()
234 top_iph->saddr = x->props.saddr.a4; in xfrm4_tunnel_encap_add()
235 top_iph->daddr = x->id.daddr.a4; in xfrm4_tunnel_encap_add()
245 struct ipv6hdr *top_iph; in xfrm6_tunnel_encap_add() local
254 skb->transport_header = skb->network_header + sizeof(*top_iph); in xfrm6_tunnel_encap_add()
255 top_iph = ipv6_hdr(skb); in xfrm6_tunnel_encap_add()
257 top_iph->version = 6; in xfrm6_tunnel_encap_add()
259 memcpy(top_iph->flow_lbl, XFRM_MODE_SKB_CB(skb)->flow_lbl, in xfrm6_tunnel_encap_add()
260 sizeof(top_iph->flow_lbl)); in xfrm6_tunnel_encap_add()
261 top_iph->nexthdr = xfrm_af2proto(skb_dst(skb)->ops->family); in xfrm6_tunnel_encap_add()
270 ipv6_change_dsfield(top_iph, 0, dsfield); in xfrm6_tunnel_encap_add()
271 top_iph->hop_limit = ip6_dst_hoplimit(xfrm_dst_child(dst)); in xfrm6_tunnel_encap_add()
272 top_iph->saddr = *(struct in6_addr *)&x->props.saddr; in xfrm6_tunnel_encap_add()
273 top_iph->daddr = *(struct in6_addr *)&x->id.daddr; in xfrm6_tunnel_encap_add()
279 struct ipv6hdr *top_iph; in xfrm6_beet_encap_add() local
293 skb->transport_header = skb->network_header + sizeof(*top_iph); in xfrm6_beet_encap_add()
298 top_iph = ipv6_hdr(skb); in xfrm6_beet_encap_add()
305 ph->nexthdr = top_iph->nexthdr; in xfrm6_beet_encap_add()
309 top_iph->nexthdr = IPPROTO_BEETPH; in xfrm6_beet_encap_add()
312 top_iph->saddr = *(struct in6_addr *)&x->props.saddr; in xfrm6_beet_encap_add()
313 top_iph->daddr = *(struct in6_addr *)&x->id.daddr; in xfrm6_beet_encap_add()