• Home
  • Raw
  • Download

Lines Matching refs:fl6

155 	struct flowi6 fl6;  in tcp_v6_connect()  local
167 memset(&fl6, 0, sizeof(fl6)); in tcp_v6_connect()
170 fl6.flowlabel = usin->sin6_flowinfo&IPV6_FLOWINFO_MASK; in tcp_v6_connect()
171 IP6_ECN_flow_init(fl6.flowlabel); in tcp_v6_connect()
172 if (fl6.flowlabel&IPV6_FLOWLABEL_MASK) { in tcp_v6_connect()
174 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in tcp_v6_connect()
223 np->flow_label = fl6.flowlabel; in tcp_v6_connect()
269 fl6.flowi6_proto = IPPROTO_TCP; in tcp_v6_connect()
270 fl6.daddr = sk->sk_v6_daddr; in tcp_v6_connect()
271 fl6.saddr = saddr ? *saddr : np->saddr; in tcp_v6_connect()
272 fl6.flowlabel = ip6_make_flowinfo(np->tclass, np->flow_label); in tcp_v6_connect()
273 fl6.flowi6_oif = sk->sk_bound_dev_if; in tcp_v6_connect()
274 fl6.flowi6_mark = sk->sk_mark; in tcp_v6_connect()
275 fl6.fl6_dport = usin->sin6_port; in tcp_v6_connect()
276 fl6.fl6_sport = inet->inet_sport; in tcp_v6_connect()
277 fl6.flowi6_uid = sk->sk_uid; in tcp_v6_connect()
280 final_p = fl6_update_dst(&fl6, opt, &final); in tcp_v6_connect()
282 security_sk_classify_flow(sk, flowi6_to_flowi_common(&fl6)); in tcp_v6_connect()
284 dst = ip6_dst_lookup_flow(sock_net(sk), sk, &fl6, final_p); in tcp_v6_connect()
291 saddr = &fl6.saddr; in tcp_v6_connect()
528 struct flowi6 *fl6 = &fl->u.ip6; in tcp_v6_send_synack() local
534 if (!dst && (dst = inet6_csk_route_req(sk, fl6, req, in tcp_v6_send_synack()
544 fl6->daddr = ireq->ir_v6_rmt_addr; in tcp_v6_send_synack()
546 fl6->flowlabel = ip6_flowlabel(ipv6_hdr(ireq->pktopts)); in tcp_v6_send_synack()
561 err = ip6_xmit(sk, skb, fl6, skb->mark ? : sk->sk_mark, opt, in tcp_v6_send_synack()
899 struct flowi6 fl6; in tcp_v6_send_response() local
966 memset(&fl6, 0, sizeof(fl6)); in tcp_v6_send_response()
967 fl6.daddr = ipv6_hdr(skb)->saddr; in tcp_v6_send_response()
968 fl6.saddr = ipv6_hdr(skb)->daddr; in tcp_v6_send_response()
969 fl6.flowlabel = label; in tcp_v6_send_response()
974 __tcp_v6_send_check(buff, &fl6.saddr, &fl6.daddr); in tcp_v6_send_response()
976 fl6.flowi6_proto = IPPROTO_TCP; in tcp_v6_send_response()
977 if (rt6_need_strict(&fl6.daddr) && !oif) in tcp_v6_send_response()
978 fl6.flowi6_oif = tcp_v6_iif(skb); in tcp_v6_send_response()
983 fl6.flowi6_oif = oif; in tcp_v6_send_response()
997 fl6.flowi6_mark = IP6_REPLY_MARK(net, skb->mark) ?: mark; in tcp_v6_send_response()
998 fl6.fl6_dport = t1->dest; in tcp_v6_send_response()
999 fl6.fl6_sport = t1->source; in tcp_v6_send_response()
1000 fl6.flowi6_uid = sock_net_uid(net, sk && sk_fullsock(sk) ? sk : NULL); in tcp_v6_send_response()
1001 security_skb_classify_flow(skb, flowi6_to_flowi_common(&fl6)); in tcp_v6_send_response()
1008 dst = ip6_dst_lookup_flow(net, sk, &fl6, NULL); /*sk's xfrm_policy can be referred*/ in tcp_v6_send_response()
1010 dst = ip6_dst_lookup_flow(net, ctl_sk, &fl6, NULL); in tcp_v6_send_response()
1013 ip6_xmit(ctl_sk, buff, &fl6, fl6.flowi6_mark, NULL, in tcp_v6_send_response()
1255 struct flowi6 fl6; in tcp_v6_syn_recv_sock() local
1318 dst = inet6_csk_route_req(sk, &fl6, req, IPPROTO_TCP); in tcp_v6_syn_recv_sock()