Lines Matching refs:fl6
223 struct flowi6 *fl6 = &t->fl.u.ip6; in sctp_v6_xmit() local
230 skb->len, &fl6->saddr, &fl6->daddr); in sctp_v6_xmit()
236 IP6_ECN_flow_xmit(sk, fl6->flowlabel); in sctp_v6_xmit()
248 res = ip6_xmit(sk, skb, fl6, sk->sk_mark, in sctp_v6_xmit()
262 label = ip6_make_flowlabel(sock_net(sk), skb, fl6->flowlabel, true, fl6); in sctp_v6_xmit()
264 return udp_tunnel6_xmit_skb(dst, sk, skb, NULL, &fl6->saddr, in sctp_v6_xmit()
265 &fl6->daddr, tclass, ip6_dst_hoplimit(dst), in sctp_v6_xmit()
278 struct flowi6 *fl6 = &_fl.u.ip6; in sctp_v6_get_dst() local
289 fl6->daddr = daddr->v6.sin6_addr; in sctp_v6_get_dst()
290 fl6->fl6_dport = daddr->v6.sin6_port; in sctp_v6_get_dst()
291 fl6->flowi6_proto = IPPROTO_SCTP; in sctp_v6_get_dst()
293 fl6->flowi6_oif = daddr->v6.sin6_scope_id; in sctp_v6_get_dst()
295 fl6->flowi6_oif = asoc->base.sk->sk_bound_dev_if; in sctp_v6_get_dst()
297 fl6->flowlabel = htonl(t->flowlabel & SCTP_FLOWLABEL_VAL_MASK); in sctp_v6_get_dst()
300 (fl6->flowlabel & IPV6_FLOWLABEL_MASK)) { in sctp_v6_get_dst()
303 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in sctp_v6_get_dst()
309 pr_debug("%s: dst=%pI6 ", __func__, &fl6->daddr); in sctp_v6_get_dst()
312 fl6->fl6_sport = htons(asoc->base.bind_addr.port); in sctp_v6_get_dst()
315 fl6->saddr = saddr->v6.sin6_addr; in sctp_v6_get_dst()
316 if (!fl6->fl6_sport) in sctp_v6_get_dst()
317 fl6->fl6_sport = saddr->v6.sin6_port; in sctp_v6_get_dst()
319 pr_debug("src=%pI6 - ", &fl6->saddr); in sctp_v6_get_dst()
323 final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final); in sctp_v6_get_dst()
326 dst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in sctp_v6_get_dst()
342 sctp_v6_to_addr(&dst_saddr, &fl6->saddr, htons(bp->port)); in sctp_v6_get_dst()
381 fl6->saddr = laddr->a.v6.sin6_addr; in sctp_v6_get_dst()
382 fl6->fl6_sport = laddr->a.v6.sin6_port; in sctp_v6_get_dst()
383 final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final); in sctp_v6_get_dst()
384 bdst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in sctp_v6_get_dst()
445 struct flowi6 *fl6 = &fl->u.ip6; in sctp_v6_get_saddr() local
452 saddr->v6.sin6_addr = fl6->saddr; in sctp_v6_get_saddr()