Lines Matching refs:fl6
225 struct flowi6 *fl6 = &t->fl.u.ip6; in sctp_v6_xmit() local
232 skb->len, &fl6->saddr, &fl6->daddr); in sctp_v6_xmit()
238 IP6_ECN_flow_xmit(sk, fl6->flowlabel); in sctp_v6_xmit()
250 res = ip6_xmit(sk, skb, fl6, sk->sk_mark, in sctp_v6_xmit()
264 label = ip6_make_flowlabel(sock_net(sk), skb, fl6->flowlabel, true, fl6); in sctp_v6_xmit()
266 return udp_tunnel6_xmit_skb(dst, sk, skb, NULL, &fl6->saddr, in sctp_v6_xmit()
267 &fl6->daddr, tclass, ip6_dst_hoplimit(dst), in sctp_v6_xmit()
280 struct flowi6 *fl6 = &_fl.u.ip6; in sctp_v6_get_dst() local
291 fl6->daddr = daddr->v6.sin6_addr; in sctp_v6_get_dst()
292 fl6->fl6_dport = daddr->v6.sin6_port; in sctp_v6_get_dst()
293 fl6->flowi6_proto = IPPROTO_SCTP; in sctp_v6_get_dst()
295 fl6->flowi6_oif = daddr->v6.sin6_scope_id; in sctp_v6_get_dst()
297 fl6->flowi6_oif = asoc->base.sk->sk_bound_dev_if; in sctp_v6_get_dst()
299 fl6->flowlabel = htonl(t->flowlabel & SCTP_FLOWLABEL_VAL_MASK); in sctp_v6_get_dst()
301 if (np->sndflow && (fl6->flowlabel & IPV6_FLOWLABEL_MASK)) { in sctp_v6_get_dst()
304 flowlabel = fl6_sock_lookup(sk, fl6->flowlabel); in sctp_v6_get_dst()
310 pr_debug("%s: dst=%pI6 ", __func__, &fl6->daddr); in sctp_v6_get_dst()
313 fl6->fl6_sport = htons(asoc->base.bind_addr.port); in sctp_v6_get_dst()
316 fl6->saddr = saddr->v6.sin6_addr; in sctp_v6_get_dst()
317 if (!fl6->fl6_sport) in sctp_v6_get_dst()
318 fl6->fl6_sport = saddr->v6.sin6_port; in sctp_v6_get_dst()
320 pr_debug("src=%pI6 - ", &fl6->saddr); in sctp_v6_get_dst()
324 final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final); in sctp_v6_get_dst()
327 dst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in sctp_v6_get_dst()
343 sctp_v6_to_addr(&dst_saddr, &fl6->saddr, htons(bp->port)); in sctp_v6_get_dst()
382 fl6->saddr = laddr->a.v6.sin6_addr; in sctp_v6_get_dst()
383 fl6->fl6_sport = laddr->a.v6.sin6_port; in sctp_v6_get_dst()
384 final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final); in sctp_v6_get_dst()
385 bdst = ip6_dst_lookup_flow(sock_net(sk), sk, fl6, final_p); in sctp_v6_get_dst()
446 struct flowi6 *fl6 = &fl->u.ip6; in sctp_v6_get_saddr() local
453 saddr->v6.sin6_addr = fl6->saddr; in sctp_v6_get_saddr()