From 03b7373eed08006bda8a5167e72df1aeb9eab964 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Thu, 19 Apr 2012 13:43:52 +0200 Subject: [PATCH] --- yaml --- r: 306891 b: refs/heads/master c: 7d5d775a55554183448b591a86b1d172ae993b94 h: refs/heads/master i: 306889: fca4fa4925c9e0143050e1723bf90f1a3e55a6d2 306887: c6cec591cfc3c2891b33e9538a01987cfec95676 v: v3 --- [refs] | 2 +- trunk/net/bluetooth/sco.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 4dfd4130cc37..cc720e0d172e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6b3af7334bd3c403647606adfb04f6e6bcf1597e +refs/heads/master: 7d5d775a55554183448b591a86b1d172ae993b94 diff --git a/trunk/net/bluetooth/sco.c b/trunk/net/bluetooth/sco.c index 7bd0947af2fa..a69aa345597e 100644 --- a/trunk/net/bluetooth/sco.c +++ b/trunk/net/bluetooth/sco.c @@ -539,11 +539,16 @@ static int sco_sock_listen(struct socket *sock, int backlog) lock_sock(sk); - if (sk->sk_state != BT_BOUND || sock->type != SOCK_SEQPACKET) { + if (sk->sk_state != BT_BOUND) { err = -EBADFD; goto done; } + if (sk->sk_type != SOCK_SEQPACKET) { + err = -EINVAL; + goto done; + } + sk->sk_max_ack_backlog = backlog; sk->sk_ack_backlog = 0; sk->sk_state = BT_LISTEN;