Merge tag 'selinux-pr-20230626' of git://git.kernel.org/pub/scm/linux/kernel/git...
[platform/kernel/linux-rpi.git] / net / mptcp / subflow.c
index d9c8b21..8ff5c9f 100644 (file)
@@ -1668,6 +1668,10 @@ int mptcp_subflow_create_socket(struct sock *sk, unsigned short family,
 
        lock_sock_nested(sf->sk, SINGLE_DEPTH_NESTING);
 
+       err = security_mptcp_add_subflow(sk, sf->sk);
+       if (err)
+               goto release_ssk;
+
        /* the newly created socket has to be in the same cgroup as its parent */
        mptcp_attach_cgroup(sk, sf->sk);
 
@@ -1680,6 +1684,8 @@ int mptcp_subflow_create_socket(struct sock *sk, unsigned short family,
        get_net_track(net, &sf->sk->ns_tracker, GFP_KERNEL);
        sock_inuse_add(net, 1);
        err = tcp_set_ulp(sf->sk, "mptcp");
+
+release_ssk:
        release_sock(sf->sk);
 
        if (err) {