diff options
Diffstat (limited to 'net/bluetooth')
-rw-r--r-- | net/bluetooth/sco.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/bluetooth/sco.c b/net/bluetooth/sco.c index ed581b41e034..96bd388d93a4 100644 --- a/net/bluetooth/sco.c +++ b/net/bluetooth/sco.c | |||
@@ -176,6 +176,12 @@ static int sco_connect(struct sock *sk) | |||
176 | else | 176 | else |
177 | type = SCO_LINK; | 177 | type = SCO_LINK; |
178 | 178 | ||
179 | if (sco_pi(sk)->setting == BT_VOICE_TRANSPARENT && | ||
180 | (!lmp_transp_capable(hdev) || !lmp_esco_capable(hdev))) { | ||
181 | err = -EOPNOTSUPP; | ||
182 | goto done; | ||
183 | } | ||
184 | |||
179 | hcon = hci_connect_sco(hdev, type, dst, sco_pi(sk)->setting); | 185 | hcon = hci_connect_sco(hdev, type, dst, sco_pi(sk)->setting); |
180 | if (IS_ERR(hcon)) { | 186 | if (IS_ERR(hcon)) { |
181 | err = PTR_ERR(hcon); | 187 | err = PTR_ERR(hcon); |