Lines Matching refs:pktinfo
458 static void gtp_push_header(struct sk_buff *skb, struct gtp_pktinfo *pktinfo) in gtp_push_header() argument
460 switch (pktinfo->pctx->gtp_version) { in gtp_push_header()
462 pktinfo->gtph_port = htons(GTP0_PORT); in gtp_push_header()
463 gtp0_push_header(skb, pktinfo->pctx); in gtp_push_header()
466 pktinfo->gtph_port = htons(GTP1U_PORT); in gtp_push_header()
467 gtp1_push_header(skb, pktinfo->pctx); in gtp_push_header()
472 static inline void gtp_set_pktinfo_ipv4(struct gtp_pktinfo *pktinfo, in gtp_set_pktinfo_ipv4() argument
478 pktinfo->sk = sk; in gtp_set_pktinfo_ipv4()
479 pktinfo->iph = iph; in gtp_set_pktinfo_ipv4()
480 pktinfo->pctx = pctx; in gtp_set_pktinfo_ipv4()
481 pktinfo->rt = rt; in gtp_set_pktinfo_ipv4()
482 pktinfo->fl4 = *fl4; in gtp_set_pktinfo_ipv4()
483 pktinfo->dev = dev; in gtp_set_pktinfo_ipv4()
487 struct gtp_pktinfo *pktinfo) in gtp_build_skb_ip4() argument
558 gtp_set_pktinfo_ipv4(pktinfo, pctx->sk, iph, pctx, rt, &fl4, dev); in gtp_build_skb_ip4()
559 gtp_push_header(skb, pktinfo); in gtp_build_skb_ip4()
571 struct gtp_pktinfo pktinfo; in gtp_dev_xmit() local
584 err = gtp_build_skb_ip4(skb, dev, &pktinfo); in gtp_dev_xmit()
597 netdev_dbg(pktinfo.dev, "gtp -> IP src: %pI4 dst: %pI4\n", in gtp_dev_xmit()
598 &pktinfo.iph->saddr, &pktinfo.iph->daddr); in gtp_dev_xmit()
599 udp_tunnel_xmit_skb(pktinfo.rt, pktinfo.sk, skb, in gtp_dev_xmit()
600 pktinfo.fl4.saddr, pktinfo.fl4.daddr, in gtp_dev_xmit()
601 pktinfo.iph->tos, in gtp_dev_xmit()
602 ip4_dst_hoplimit(&pktinfo.rt->dst), in gtp_dev_xmit()
604 pktinfo.gtph_port, pktinfo.gtph_port, in gtp_dev_xmit()