Level SOL_L2CAP with optname L2CAP_OPTIONS is supported only for BR/EDR Since bdaddr_type is set to BDADDR_BREDR by default, there is no sense to check also CID. This fix le connect which now fails when trying to connect ATT CID on LE transport. --- tools/l2test.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/l2test.c b/tools/l2test.c index c70bac0..ffad7c4 100644 --- a/tools/l2test.c +++ b/tools/l2test.c @@ -271,7 +271,7 @@ static int getopts(int sk, struct l2cap_options *opts, bool connected) memset(opts, 0, sizeof(*opts)); - if (bdaddr_type == BDADDR_BREDR || cid) { + if (bdaddr_type == BDADDR_BREDR) { optlen = sizeof(*opts); return getsockopt(sk, SOL_L2CAP, L2CAP_OPTIONS, opts, &optlen); } @@ -287,7 +287,7 @@ static int getopts(int sk, struct l2cap_options *opts, bool connected) static int setopts(int sk, struct l2cap_options *opts) { - if (bdaddr_type == BDADDR_BREDR || cid) + if (bdaddr_type == BDADDR_BREDR) return setsockopt(sk, SOL_L2CAP, L2CAP_OPTIONS, opts, sizeof(*opts)); -- 1.8.4 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html