Lines Matching refs:iph

263 	const struct iphdr *iph;  in ip_rcv_options()  local
277 iph = ip_hdr(skb); in ip_rcv_options()
279 opt->optlen = iph->ihl*4 - sizeof(struct iphdr); in ip_rcv_options()
293 &iph->saddr, in ip_rcv_options()
294 &iph->daddr); in ip_rcv_options()
308 static bool ip_can_use_hint(const struct sk_buff *skb, const struct iphdr *iph, in ip_can_use_hint() argument
311 return hint && !skb_dst(skb) && ip_hdr(hint)->daddr == iph->daddr && in ip_can_use_hint()
312 ip_hdr(hint)->tos == iph->tos; in ip_can_use_hint()
321 const struct iphdr *iph = ip_hdr(skb); in ip_rcv_finish_core() local
325 if (ip_can_use_hint(skb, iph, hint)) { in ip_rcv_finish_core()
326 drop_reason = ip_route_use_hint(skb, iph->daddr, iph->saddr, in ip_rcv_finish_core()
327 ip4h_dscp(iph), dev, hint); in ip_rcv_finish_core()
336 !ip_is_fragment(iph)) { in ip_rcv_finish_core()
337 switch (iph->protocol) { in ip_rcv_finish_core()
343 iph = ip_hdr(skb); in ip_rcv_finish_core()
353 iph = ip_hdr(skb); in ip_rcv_finish_core()
364 drop_reason = ip_route_input_noref(skb, iph->daddr, iph->saddr, in ip_rcv_finish_core()
365 ip4h_dscp(iph), dev); in ip_rcv_finish_core()
387 if (iph->ihl > 5 && ip_rcv_options(skb, dev)) in ip_rcv_finish_core()
456 const struct iphdr *iph; in ip_rcv_core() local
481 iph = ip_hdr(skb); in ip_rcv_core()
494 if (iph->ihl < 5 || iph->version != 4) in ip_rcv_core()
501 IPSTATS_MIB_NOECTPKTS + (iph->tos & INET_ECN_MASK), in ip_rcv_core()
504 if (!pskb_may_pull(skb, iph->ihl*4)) in ip_rcv_core()
507 iph = ip_hdr(skb); in ip_rcv_core()
509 if (unlikely(ip_fast_csum((u8 *)iph, iph->ihl))) in ip_rcv_core()
512 len = iph_totlen(skb, iph); in ip_rcv_core()
517 } else if (len < (iph->ihl*4)) in ip_rcv_core()
529 iph = ip_hdr(skb); in ip_rcv_core()
530 skb->transport_header = skb->network_header + iph->ihl*4; in ip_rcv_core()