|
@@ -442,8 +442,7 @@ int selinux_netlbl_socket_connect(struct sock *sk, struct sockaddr *addr)
|
|
sksec->nlbl_state != NLBL_CONNLABELED)
|
|
sksec->nlbl_state != NLBL_CONNLABELED)
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
- local_bh_disable();
|
|
|
|
- bh_lock_sock_nested(sk);
|
|
|
|
|
|
+ lock_sock(sk);
|
|
|
|
|
|
/* connected sockets are allowed to disconnect when the address family
|
|
/* connected sockets are allowed to disconnect when the address family
|
|
* is set to AF_UNSPEC, if that is what is happening we want to reset
|
|
* is set to AF_UNSPEC, if that is what is happening we want to reset
|
|
@@ -464,7 +463,6 @@ int selinux_netlbl_socket_connect(struct sock *sk, struct sockaddr *addr)
|
|
sksec->nlbl_state = NLBL_CONNLABELED;
|
|
sksec->nlbl_state = NLBL_CONNLABELED;
|
|
|
|
|
|
socket_connect_return:
|
|
socket_connect_return:
|
|
- bh_unlock_sock(sk);
|
|
|
|
- local_bh_enable();
|
|
|
|
|
|
+ release_sock(sk);
|
|
return rc;
|
|
return rc;
|
|
}
|
|
}
|