Lines Matching refs:opt
157 struct ipv6_txoptions *opt, int tclass) in ip6_xmit() argument
169 if (opt) { in ip6_xmit()
175 head_room = opt->opt_nflen + opt->opt_flen; in ip6_xmit()
191 if (opt->opt_flen) in ip6_xmit()
192 ipv6_push_frag_opts(skb, opt, &proto); in ip6_xmit()
193 if (opt->opt_nflen) in ip6_xmit()
194 ipv6_push_nfrag_opts(skb, opt, &proto, &first_hop); in ip6_xmit()
369 struct inet6_skb_parm *opt = IP6CB(skb); in ip6_forward() local
406 if (unlikely(opt->flags & IP6SKB_ROUTERALERT)) { in ip6_forward()
407 if (ip6_call_ra_chain(skb, ntohs(opt->ra))) in ip6_forward()
449 if (skb->dev == dst->dev && opt->srcrt == 0 && !skb_sec_path(skb)) { in ip6_forward()
1162 int hlimit, int tclass, struct ipv6_txoptions *opt, in ip6_setup_cork() argument
1171 if (opt) { in ip6_setup_cork()
1172 if (WARN_ON(v6_cork->opt)) in ip6_setup_cork()
1175 v6_cork->opt = kzalloc(opt->tot_len, sk->sk_allocation); in ip6_setup_cork()
1176 if (unlikely(!v6_cork->opt)) in ip6_setup_cork()
1179 v6_cork->opt->tot_len = opt->tot_len; in ip6_setup_cork()
1180 v6_cork->opt->opt_flen = opt->opt_flen; in ip6_setup_cork()
1181 v6_cork->opt->opt_nflen = opt->opt_nflen; in ip6_setup_cork()
1183 v6_cork->opt->dst0opt = ip6_opt_dup(opt->dst0opt, in ip6_setup_cork()
1185 if (opt->dst0opt && !v6_cork->opt->dst0opt) in ip6_setup_cork()
1188 v6_cork->opt->dst1opt = ip6_opt_dup(opt->dst1opt, in ip6_setup_cork()
1190 if (opt->dst1opt && !v6_cork->opt->dst1opt) in ip6_setup_cork()
1193 v6_cork->opt->hopopt = ip6_opt_dup(opt->hopopt, in ip6_setup_cork()
1195 if (opt->hopopt && !v6_cork->opt->hopopt) in ip6_setup_cork()
1198 v6_cork->opt->srcrt = ip6_rthdr_dup(opt->srcrt, in ip6_setup_cork()
1200 if (opt->srcrt && !v6_cork->opt->srcrt) in ip6_setup_cork()
1250 struct ipv6_txoptions *opt = v6_cork->opt; in __ip6_append_data() local
1255 exthdrlen = opt ? opt->opt_flen : 0; in __ip6_append_data()
1265 (opt ? opt->opt_nflen : 0); in __ip6_append_data()
1273 (opt ? opt->opt_flen + opt->opt_nflen : 0) + in __ip6_append_data()
1547 int tclass, struct ipv6_txoptions *opt, struct flowi6 *fl6, in ip6_append_data() argument
1562 tclass, opt, rt, fl6); in ip6_append_data()
1566 exthdrlen = (opt ? opt->opt_flen : 0); in ip6_append_data()
1583 if (v6_cork->opt) { in ip6_cork_release()
1584 kfree(v6_cork->opt->dst0opt); in ip6_cork_release()
1585 kfree(v6_cork->opt->dst1opt); in ip6_cork_release()
1586 kfree(v6_cork->opt->hopopt); in ip6_cork_release()
1587 kfree(v6_cork->opt->srcrt); in ip6_cork_release()
1588 kfree(v6_cork->opt); in ip6_cork_release()
1589 v6_cork->opt = NULL; in ip6_cork_release()
1611 struct ipv6_txoptions *opt = v6_cork->opt; in __ip6_make_skb() local
1640 if (opt && opt->opt_flen) in __ip6_make_skb()
1641 ipv6_push_frag_opts(skb, opt, &proto); in __ip6_make_skb()
1642 if (opt && opt->opt_nflen) in __ip6_make_skb()
1643 ipv6_push_nfrag_opts(skb, opt, &proto, &final_dst); in __ip6_make_skb()
1733 struct ipv6_txoptions *opt, struct flowi6 *fl6, in ip6_make_skb() argument
1740 int exthdrlen = (opt ? opt->opt_flen : 0); in ip6_make_skb()
1750 cork.base.opt = NULL; in ip6_make_skb()
1751 v6_cork.opt = NULL; in ip6_make_skb()
1752 err = ip6_setup_cork(sk, &cork, &v6_cork, hlimit, tclass, opt, rt, fl6); in ip6_make_skb()