import PULS_20160108
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / net / ipv6 / inet6_connection_sock.c
index e4311cbc8b4ecbf70ea1fb2e2f2415342be382cc..65a46058c85448b00901e26e9f49d286c7f96558 100644 (file)
@@ -81,9 +81,10 @@ struct dst_entry *inet6_csk_route_req(struct sock *sk,
        final_p = fl6_update_dst(fl6, np->opt, &final);
        fl6->saddr = treq->loc_addr;
        fl6->flowi6_oif = treq->iif;
-       fl6->flowi6_mark = sk->sk_mark;
+       fl6->flowi6_mark = inet_rsk(req)->ir_mark;
        fl6->fl6_dport = inet_rsk(req)->rmt_port;
        fl6->fl6_sport = inet_rsk(req)->loc_port;
+       fl6->flowi6_uid = sock_i_uid(sk);
        security_req_classify_flow(req, flowi6_to_flowi(fl6));
 
        dst = ip6_dst_lookup_flow(sk, fl6, final_p, false);
@@ -211,6 +212,7 @@ static struct dst_entry *inet6_csk_route_socket(struct sock *sk,
        fl6->flowi6_mark = sk->sk_mark;
        fl6->fl6_sport = inet->inet_sport;
        fl6->fl6_dport = inet->inet_dport;
+       fl6->flowi6_uid = sock_i_uid(sk);
        security_sk_classify_flow(sk, flowi6_to_flowi(fl6));
 
        final_p = fl6_update_dst(fl6, np->opt, &final);