Lines Matching refs:tuninfo
31 static size_t seg6_lwt_headroom(struct seg6_iptunnel_encap *tuninfo) in seg6_lwt_headroom() argument
35 switch (tuninfo->mode) { in seg6_lwt_headroom()
47 return ((tuninfo->srh->hdrlen + 1) << 3) + head; in seg6_lwt_headroom()
52 struct seg6_iptunnel_encap tuninfo[]; member
63 return seg6_lwt_lwtunnel(lwt)->tuninfo; in seg6_encap_lwtunnel()
71 struct seg6_iptunnel_encap *tuninfo) in nla_put_srh() argument
77 len = SEG6_IPTUN_ENCAP_SIZE(tuninfo); in nla_put_srh()
84 memcpy(data, tuninfo, len); in nla_put_srh()
613 struct seg6_iptunnel_encap *tuninfo; in seg6_build_state() local
631 tuninfo = nla_data(tb[SEG6_IPTUNNEL_SRH]); in seg6_build_state()
637 min_size = sizeof(*tuninfo) + sizeof(struct ipv6_sr_hdr) + in seg6_build_state()
642 switch (tuninfo->mode) { in seg6_build_state()
661 if (!seg6_validate_srh(tuninfo->srh, tuninfo_len - sizeof(*tuninfo), false)) in seg6_build_state()
676 memcpy(&slwt->tuninfo, tuninfo, tuninfo_len); in seg6_build_state()
681 if (tuninfo->mode != SEG6_IPTUN_MODE_L2ENCAP) in seg6_build_state()
684 newts->headroom = seg6_lwt_headroom(tuninfo); in seg6_build_state()
699 struct seg6_iptunnel_encap *tuninfo = seg6_encap_lwtunnel(lwtstate); in seg6_fill_encap_info() local
701 if (nla_put_srh(skb, SEG6_IPTUNNEL_SRH, tuninfo)) in seg6_fill_encap_info()
709 struct seg6_iptunnel_encap *tuninfo = seg6_encap_lwtunnel(lwtstate); in seg6_encap_nlsize() local
711 return nla_total_size(SEG6_IPTUN_ENCAP_SIZE(tuninfo)); in seg6_encap_nlsize()