Lines Matching refs:fl4
299 static void sctp_v4_dst_saddr(union sctp_addr *saddr, struct flowi4 *fl4, in sctp_v4_dst_saddr() argument
304 saddr->v4.sin_addr.s_addr = fl4->saddr; in sctp_v4_dst_saddr()
428 struct flowi4 *fl4 = &fl->u.ip4; in sctp_v4_get_dst() local
435 memset(fl4, 0x0, sizeof(struct flowi4)); in sctp_v4_get_dst()
436 fl4->daddr = daddr->v4.sin_addr.s_addr; in sctp_v4_get_dst()
437 fl4->fl4_dport = daddr->v4.sin_port; in sctp_v4_get_dst()
438 fl4->flowi4_proto = IPPROTO_SCTP; in sctp_v4_get_dst()
440 fl4->flowi4_tos = RT_CONN_FLAGS(asoc->base.sk); in sctp_v4_get_dst()
441 fl4->flowi4_oif = asoc->base.sk->sk_bound_dev_if; in sctp_v4_get_dst()
442 fl4->fl4_sport = htons(asoc->base.bind_addr.port); in sctp_v4_get_dst()
445 fl4->saddr = saddr->v4.sin_addr.s_addr; in sctp_v4_get_dst()
446 fl4->fl4_sport = saddr->v4.sin_port; in sctp_v4_get_dst()
449 pr_debug("%s: dst:%pI4, src:%pI4 - ", __func__, &fl4->daddr, in sctp_v4_get_dst()
450 &fl4->saddr); in sctp_v4_get_dst()
452 rt = ip_route_output_key(sock_net(sk), fl4); in sctp_v4_get_dst()
468 sctp_v4_dst_saddr(&dst_saddr, fl4, htons(bp->port)); in sctp_v4_get_dst()
500 fl4->fl4_sport = laddr->a.v4.sin_port; in sctp_v4_get_dst()
501 flowi4_update_output(fl4, in sctp_v4_get_dst()
507 rt = ip_route_output_key(sock_net(sk), fl4); in sctp_v4_get_dst()
519 if (!odev || odev->ifindex != fl4->flowi4_oif) { in sctp_v4_get_dst()
537 &fl4->daddr, &fl4->saddr); in sctp_v4_get_dst()