Lines Matching refs:fl6
203 struct flowi6 fl6; in dccp_v6_send_response() local
207 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_send_response()
208 fl6.flowi6_proto = IPPROTO_DCCP; in dccp_v6_send_response()
209 fl6.daddr = ireq->ir_v6_rmt_addr; in dccp_v6_send_response()
210 fl6.saddr = ireq->ir_v6_loc_addr; in dccp_v6_send_response()
211 fl6.flowlabel = 0; in dccp_v6_send_response()
212 fl6.flowi6_oif = ireq->ir_iif; in dccp_v6_send_response()
213 fl6.fl6_dport = ireq->ir_rmt_port; in dccp_v6_send_response()
214 fl6.fl6_sport = htons(ireq->ir_num); in dccp_v6_send_response()
215 security_req_classify_flow(req, flowi6_to_flowi_common(&fl6)); in dccp_v6_send_response()
219 final_p = fl6_update_dst(&fl6, rcu_dereference(np->opt), &final); in dccp_v6_send_response()
222 dst = ip6_dst_lookup_flow(sock_net(sk), sk, &fl6, final_p); in dccp_v6_send_response()
237 fl6.daddr = ireq->ir_v6_rmt_addr; in dccp_v6_send_response()
242 err = ip6_xmit(sk, skb, &fl6, READ_ONCE(sk->sk_mark), opt, in dccp_v6_send_response()
265 struct flowi6 fl6; in dccp_v6_ctl_send_reset() local
287 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_ctl_send_reset()
288 fl6.daddr = rxip6h->saddr; in dccp_v6_ctl_send_reset()
289 fl6.saddr = rxip6h->daddr; in dccp_v6_ctl_send_reset()
291 fl6.flowi6_proto = IPPROTO_DCCP; in dccp_v6_ctl_send_reset()
292 fl6.flowi6_oif = inet6_iif(rxskb); in dccp_v6_ctl_send_reset()
293 fl6.fl6_dport = dccp_hdr(skb)->dccph_dport; in dccp_v6_ctl_send_reset()
294 fl6.fl6_sport = dccp_hdr(skb)->dccph_sport; in dccp_v6_ctl_send_reset()
295 security_skb_classify_flow(rxskb, flowi6_to_flowi_common(&fl6)); in dccp_v6_ctl_send_reset()
298 dst = ip6_dst_lookup_flow(sock_net(ctl_sk), ctl_sk, &fl6, NULL); in dccp_v6_ctl_send_reset()
301 ip6_xmit(ctl_sk, skb, &fl6, 0, NULL, 0, 0); in dccp_v6_ctl_send_reset()
483 struct flowi6 fl6; in dccp_v6_request_recv_sock() local
485 dst = inet6_csk_route_req(sk, &fl6, req, IPPROTO_DCCP); in dccp_v6_request_recv_sock()
829 struct flowi6 fl6; in dccp_v6_connect() local
842 memset(&fl6, 0, sizeof(fl6)); in dccp_v6_connect()
845 fl6.flowlabel = usin->sin6_flowinfo & IPV6_FLOWINFO_MASK; in dccp_v6_connect()
846 IP6_ECN_flow_init(fl6.flowlabel); in dccp_v6_connect()
847 if (fl6.flowlabel & IPV6_FLOWLABEL_MASK) { in dccp_v6_connect()
849 flowlabel = fl6_sock_lookup(sk, fl6.flowlabel); in dccp_v6_connect()
885 np->flow_label = fl6.flowlabel; in dccp_v6_connect()
920 fl6.flowi6_proto = IPPROTO_DCCP; in dccp_v6_connect()
921 fl6.daddr = sk->sk_v6_daddr; in dccp_v6_connect()
922 fl6.saddr = saddr ? *saddr : np->saddr; in dccp_v6_connect()
923 fl6.flowi6_oif = sk->sk_bound_dev_if; in dccp_v6_connect()
924 fl6.fl6_dport = usin->sin6_port; in dccp_v6_connect()
925 fl6.fl6_sport = inet->inet_sport; in dccp_v6_connect()
926 security_sk_classify_flow(sk, flowi6_to_flowi_common(&fl6)); in dccp_v6_connect()
929 final_p = fl6_update_dst(&fl6, opt, &final); in dccp_v6_connect()
931 dst = ip6_dst_lookup_flow(sock_net(sk), sk, &fl6, final_p); in dccp_v6_connect()
938 saddr = &fl6.saddr; in dccp_v6_connect()