@ -57,7 +57,7 @@
# define VERSION "2.15"
static int en able_ertm = 0 ;
static int dis able_ertm = 0 ;
static u32 l2cap_feat_mask = L2CAP_FEAT_FIXED_CHAN ;
static u8 l2cap_fixed_chan [ 8 ] = { 0x02 , } ;
@ -464,7 +464,7 @@ static void l2cap_do_start(struct sock *sk)
static inline int l2cap_mode_supported ( __u8 mode , __u32 feat_mask )
{
u32 local_feat_mask = l2cap_feat_mask ;
if ( en able_ertm)
if ( ! dis able_ertm)
local_feat_mask | = L2CAP_FEAT_ERTM | L2CAP_FEAT_STREAMING ;
switch ( mode ) {
@ -903,7 +903,7 @@ static void l2cap_sock_init(struct sock *sk, struct sock *parent)
} else {
pi - > imtu = L2CAP_DEFAULT_MTU ;
pi - > omtu = 0 ;
if ( en able_ertm & & sk - > sk_type = = SOCK_STREAM ) {
if ( ! dis able_ertm & & sk - > sk_type = = SOCK_STREAM ) {
pi - > mode = L2CAP_MODE_ERTM ;
pi - > conf_state | = L2CAP_CONF_STATE2_DEVICE ;
} else {
@ -1160,7 +1160,7 @@ static int l2cap_sock_connect(struct socket *sock, struct sockaddr *addr, int al
break ;
case L2CAP_MODE_ERTM :
case L2CAP_MODE_STREAMING :
if ( en able_ertm)
if ( ! dis able_ertm)
break ;
/* fall through */
default :
@ -1226,7 +1226,7 @@ static int l2cap_sock_listen(struct socket *sock, int backlog)
break ;
case L2CAP_MODE_ERTM :
case L2CAP_MODE_STREAMING :
if ( en able_ertm)
if ( ! dis able_ertm)
break ;
/* fall through */
default :
@ -1986,7 +1986,7 @@ static int l2cap_sock_setsockopt_old(struct socket *sock, int optname, char __us
break ;
case L2CAP_MODE_ERTM :
case L2CAP_MODE_STREAMING :
if ( en able_ertm)
if ( ! dis able_ertm)
break ;
/* fall through */
default :
@ -3302,7 +3302,7 @@ static inline int l2cap_information_req(struct l2cap_conn *conn, struct l2cap_cm
struct l2cap_info_rsp * rsp = ( struct l2cap_info_rsp * ) buf ;
rsp - > type = cpu_to_le16 ( L2CAP_IT_FEAT_MASK ) ;
rsp - > result = cpu_to_le16 ( L2CAP_IR_SUCCESS ) ;
if ( en able_ertm)
if ( ! dis able_ertm)
feat_mask | = L2CAP_FEAT_ERTM | L2CAP_FEAT_STREAMING
| L2CAP_FEAT_FCS ;
put_unaligned_le32 ( feat_mask , rsp - > data ) ;
@ -4850,8 +4850,8 @@ EXPORT_SYMBOL(l2cap_load);
module_init ( l2cap_init ) ;
module_exit ( l2cap_exit ) ;
module_param ( en able_ertm, bool , 0644 ) ;
MODULE_PARM_DESC ( en able_ertm, " En able enhanced retransmission mode" ) ;
module_param ( dis able_ertm, bool , 0644 ) ;
MODULE_PARM_DESC ( dis able_ertm, " Dis able enhanced retransmission mode" ) ;
MODULE_AUTHOR ( " Marcel Holtmann <marcel@holtmann.org> " ) ;
MODULE_DESCRIPTION ( " Bluetooth L2CAP ver " VERSION ) ;