Lines Matching refs:pktinfo

455 static void gtp_push_header(struct sk_buff *skb, struct gtp_pktinfo *pktinfo)  in gtp_push_header()  argument
457 switch (pktinfo->pctx->gtp_version) { in gtp_push_header()
459 pktinfo->gtph_port = htons(GTP0_PORT); in gtp_push_header()
460 gtp0_push_header(skb, pktinfo->pctx); in gtp_push_header()
463 pktinfo->gtph_port = htons(GTP1U_PORT); in gtp_push_header()
464 gtp1_push_header(skb, pktinfo->pctx); in gtp_push_header()
469 static inline void gtp_set_pktinfo_ipv4(struct gtp_pktinfo *pktinfo, in gtp_set_pktinfo_ipv4() argument
475 pktinfo->sk = sk; in gtp_set_pktinfo_ipv4()
476 pktinfo->iph = iph; in gtp_set_pktinfo_ipv4()
477 pktinfo->pctx = pctx; in gtp_set_pktinfo_ipv4()
478 pktinfo->rt = rt; in gtp_set_pktinfo_ipv4()
479 pktinfo->fl4 = *fl4; in gtp_set_pktinfo_ipv4()
480 pktinfo->dev = dev; in gtp_set_pktinfo_ipv4()
484 struct gtp_pktinfo *pktinfo) in gtp_build_skb_ip4() argument
552 gtp_set_pktinfo_ipv4(pktinfo, pctx->sk, iph, pctx, rt, &fl4, dev); in gtp_build_skb_ip4()
553 gtp_push_header(skb, pktinfo); in gtp_build_skb_ip4()
565 struct gtp_pktinfo pktinfo; in gtp_dev_xmit() local
578 err = gtp_build_skb_ip4(skb, dev, &pktinfo); in gtp_dev_xmit()
591 netdev_dbg(pktinfo.dev, "gtp -> IP src: %pI4 dst: %pI4\n", in gtp_dev_xmit()
592 &pktinfo.iph->saddr, &pktinfo.iph->daddr); in gtp_dev_xmit()
593 udp_tunnel_xmit_skb(pktinfo.rt, pktinfo.sk, skb, in gtp_dev_xmit()
594 pktinfo.fl4.saddr, pktinfo.fl4.daddr, in gtp_dev_xmit()
595 pktinfo.iph->tos, in gtp_dev_xmit()
596 ip4_dst_hoplimit(&pktinfo.rt->dst), in gtp_dev_xmit()
598 pktinfo.gtph_port, pktinfo.gtph_port, in gtp_dev_xmit()
599 !net_eq(sock_net(pktinfo.pctx->sk), in gtp_dev_xmit()