aboutsummaryrefslogtreecommitdiffstats
path: root/net/bluetooth/l2cap_sock.c
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2014-02-14 00:40:51 -0500
committerMarcel Holtmann <marcel@holtmann.org>2014-02-14 16:39:12 -0500
commit9b7655eafeeec9e74e97e9056e820ede8d18093e (patch)
tree72715dd3b99bf925a29204c5d9ae998390d4d32d /net/bluetooth/l2cap_sock.c
parent4292f1f3370193fd3f2e4f849211fd9596ce832f (diff)
Bluetooth: Enable LE L2CAP CoC support by default
Now that the LE L2CAP Connection Oriented Channel support has undergone a decent amount of testing we can make it officially supported. This patch removes the enable_lecoc module parameter which was previously needed to enable support for LE L2CAP CoC. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/l2cap_sock.c')
-rw-r--r--net/bluetooth/l2cap_sock.c29
1 files changed, 0 insertions, 29 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c
index 27d3d6d48b6e..b247f9d27fed 100644
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
@@ -36,8 +36,6 @@
36 36
37#include "smp.h" 37#include "smp.h"
38 38
39bool enable_lecoc;
40
41static struct bt_sock_list l2cap_sk_list = { 39static struct bt_sock_list l2cap_sk_list = {
42 .lock = __RW_LOCK_UNLOCKED(l2cap_sk_list.lock) 40 .lock = __RW_LOCK_UNLOCKED(l2cap_sk_list.lock)
43}; 41};
@@ -111,8 +109,6 @@ static int l2cap_sock_bind(struct socket *sock, struct sockaddr *addr, int alen)
111 } 109 }
112 110
113 if (bdaddr_type_is_le(la.l2_bdaddr_type)) { 111 if (bdaddr_type_is_le(la.l2_bdaddr_type)) {
114 if (!enable_lecoc && la.l2_psm)
115 return -EINVAL;
116 /* We only allow ATT user space socket */ 112 /* We only allow ATT user space socket */
117 if (la.l2_cid && 113 if (la.l2_cid &&
118 la.l2_cid != __constant_cpu_to_le16(L2CAP_CID_ATT)) 114 la.l2_cid != __constant_cpu_to_le16(L2CAP_CID_ATT))
@@ -229,8 +225,6 @@ static int l2cap_sock_connect(struct socket *sock, struct sockaddr *addr,
229 return -EINVAL; 225 return -EINVAL;
230 226
231 if (bdaddr_type_is_le(la.l2_bdaddr_type)) { 227 if (bdaddr_type_is_le(la.l2_bdaddr_type)) {
232 if (!enable_lecoc && la.l2_psm)
233 return -EINVAL;
234 /* We only allow ATT user space socket */ 228 /* We only allow ATT user space socket */
235 if (la.l2_cid && 229 if (la.l2_cid &&
236 la.l2_cid != __constant_cpu_to_le16(L2CAP_CID_ATT)) 230 la.l2_cid != __constant_cpu_to_le16(L2CAP_CID_ATT))
@@ -578,11 +572,6 @@ static int l2cap_sock_getsockopt(struct socket *sock, int level, int optname,
578 break; 572 break;
579 573
580 case BT_SNDMTU: 574 case BT_SNDMTU:
581 if (!enable_lecoc) {
582 err = -EPROTONOSUPPORT;
583 break;
584 }
585
586 if (!bdaddr_type_is_le(chan->src_type)) { 575 if (!bdaddr_type_is_le(chan->src_type)) {
587 err = -EINVAL; 576 err = -EINVAL;
588 break; 577 break;
@@ -598,11 +587,6 @@ static int l2cap_sock_getsockopt(struct socket *sock, int level, int optname,
598 break; 587 break;
599 588
600 case BT_RCVMTU: 589 case BT_RCVMTU:
601 if (!enable_lecoc) {
602 err = -EPROTONOSUPPORT;
603 break;
604 }
605
606 if (!bdaddr_type_is_le(chan->src_type)) { 590 if (!bdaddr_type_is_le(chan->src_type)) {
607 err = -EINVAL; 591 err = -EINVAL;
608 break; 592 break;
@@ -919,11 +903,6 @@ static int l2cap_sock_setsockopt(struct socket *sock, int level, int optname,
919 break; 903 break;
920 904
921 case BT_SNDMTU: 905 case BT_SNDMTU:
922 if (!enable_lecoc) {
923 err = -EPROTONOSUPPORT;
924 break;
925 }
926
927 if (!bdaddr_type_is_le(chan->src_type)) { 906 if (!bdaddr_type_is_le(chan->src_type)) {
928 err = -EINVAL; 907 err = -EINVAL;
929 break; 908 break;
@@ -936,11 +915,6 @@ static int l2cap_sock_setsockopt(struct socket *sock, int level, int optname,
936 break; 915 break;
937 916
938 case BT_RCVMTU: 917 case BT_RCVMTU:
939 if (!enable_lecoc) {
940 err = -EPROTONOSUPPORT;
941 break;
942 }
943
944 if (!bdaddr_type_is_le(chan->src_type)) { 918 if (!bdaddr_type_is_le(chan->src_type)) {
945 err = -EINVAL; 919 err = -EINVAL;
946 break; 920 break;
@@ -1643,6 +1617,3 @@ void l2cap_cleanup_sockets(void)
1643 bt_sock_unregister(BTPROTO_L2CAP); 1617 bt_sock_unregister(BTPROTO_L2CAP);
1644 proto_unregister(&l2cap_proto); 1618 proto_unregister(&l2cap_proto);
1645} 1619}
1646
1647module_param(enable_lecoc, bool, 0644);
1648MODULE_PARM_DESC(enable_lecoc, "Enable support for LE CoC");