Lines Matching refs:v6_cork
1236 struct inet6_cork *v6_cork, struct ipcm6_cookie *ipc6, in ip6_setup_cork() argument
1247 if (WARN_ON(v6_cork->opt)) in ip6_setup_cork()
1250 v6_cork->opt = kzalloc(sizeof(*opt), sk->sk_allocation); in ip6_setup_cork()
1251 if (unlikely(!v6_cork->opt)) in ip6_setup_cork()
1254 v6_cork->opt->tot_len = sizeof(*opt); in ip6_setup_cork()
1255 v6_cork->opt->opt_flen = opt->opt_flen; in ip6_setup_cork()
1256 v6_cork->opt->opt_nflen = opt->opt_nflen; in ip6_setup_cork()
1258 v6_cork->opt->dst0opt = ip6_opt_dup(opt->dst0opt, in ip6_setup_cork()
1260 if (opt->dst0opt && !v6_cork->opt->dst0opt) in ip6_setup_cork()
1263 v6_cork->opt->dst1opt = ip6_opt_dup(opt->dst1opt, in ip6_setup_cork()
1265 if (opt->dst1opt && !v6_cork->opt->dst1opt) in ip6_setup_cork()
1268 v6_cork->opt->hopopt = ip6_opt_dup(opt->hopopt, in ip6_setup_cork()
1270 if (opt->hopopt && !v6_cork->opt->hopopt) in ip6_setup_cork()
1273 v6_cork->opt->srcrt = ip6_rthdr_dup(opt->srcrt, in ip6_setup_cork()
1275 if (opt->srcrt && !v6_cork->opt->srcrt) in ip6_setup_cork()
1283 v6_cork->hop_limit = ipc6->hlimit; in ip6_setup_cork()
1284 v6_cork->tclass = ipc6->tclass; in ip6_setup_cork()
1316 struct inet6_cork *v6_cork, in __ip6_append_data() argument
1334 struct ipv6_txoptions *opt = v6_cork->opt; in __ip6_append_data()
1694 struct inet6_cork *v6_cork) in ip6_cork_release() argument
1696 if (v6_cork->opt) { in ip6_cork_release()
1697 kfree(v6_cork->opt->dst0opt); in ip6_cork_release()
1698 kfree(v6_cork->opt->dst1opt); in ip6_cork_release()
1699 kfree(v6_cork->opt->hopopt); in ip6_cork_release()
1700 kfree(v6_cork->opt->srcrt); in ip6_cork_release()
1701 kfree(v6_cork->opt); in ip6_cork_release()
1702 v6_cork->opt = NULL; in ip6_cork_release()
1716 struct inet6_cork *v6_cork) in __ip6_make_skb() argument
1724 struct ipv6_txoptions *opt = v6_cork->opt; in __ip6_make_skb()
1762 ip6_flow_hdr(hdr, v6_cork->tclass, in __ip6_make_skb()
1765 hdr->hop_limit = v6_cork->hop_limit; in __ip6_make_skb()
1784 ip6_cork_release(cork, v6_cork); in __ip6_make_skb()
1822 struct inet6_cork *v6_cork) in __ip6_flush_pending_frames() argument
1833 ip6_cork_release(cork, v6_cork); in __ip6_flush_pending_frames()
1851 struct inet6_cork v6_cork; in ip6_make_skb() local
1865 v6_cork.opt = NULL; in ip6_make_skb()
1866 err = ip6_setup_cork(sk, cork, &v6_cork, ipc6, rt, fl6); in ip6_make_skb()
1868 ip6_cork_release(cork, &v6_cork); in ip6_make_skb()
1874 err = __ip6_append_data(sk, fl6, &queue, &cork->base, &v6_cork, in ip6_make_skb()
1879 __ip6_flush_pending_frames(sk, &queue, cork, &v6_cork); in ip6_make_skb()
1883 return __ip6_make_skb(sk, &queue, cork, &v6_cork); in ip6_make_skb()