Bluetooth: Split error handling for SCO listen sockets
Split the checks for sk->sk_state and sk->sk_type for SCO listen sockets. This makes the code more readable. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
This commit is contained in:
Родитель
6b3af7334b
Коммит
7d5d775a55
|
@ -539,11 +539,16 @@ static int sco_sock_listen(struct socket *sock, int backlog)
|
||||||
|
|
||||||
lock_sock(sk);
|
lock_sock(sk);
|
||||||
|
|
||||||
if (sk->sk_state != BT_BOUND || sock->type != SOCK_SEQPACKET) {
|
if (sk->sk_state != BT_BOUND) {
|
||||||
err = -EBADFD;
|
err = -EBADFD;
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (sk->sk_type != SOCK_SEQPACKET) {
|
||||||
|
err = -EINVAL;
|
||||||
|
goto done;
|
||||||
|
}
|
||||||
|
|
||||||
sk->sk_max_ack_backlog = backlog;
|
sk->sk_max_ack_backlog = backlog;
|
||||||
sk->sk_ack_backlog = 0;
|
sk->sk_ack_backlog = 0;
|
||||||
sk->sk_state = BT_LISTEN;
|
sk->sk_state = BT_LISTEN;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче