aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGustavo F. Padovan <padovan@profusion.mobi>2010-05-01 16:15:36 -0300
committerMarcel Holtmann <marcel@holtmann.org>2010-05-10 09:28:46 +0200
commit7dffe4210233a2860c3f41477c40b3252edf2b7d (patch)
treef86182be172eca9677d319bcd03e71b03b202a4a
parentBluetooth: Fix memory leak of S-frames into L2CAP (diff)
downloadlinux-dev-7dffe4210233a2860c3f41477c40b3252edf2b7d.tar.xz
linux-dev-7dffe4210233a2860c3f41477c40b3252edf2b7d.zip
Bluetooth: Fix expected_tx_seq calculation on L2CAP
All operation related to the txWindow should be modulo 64. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi> Reviewed-by: João Paulo Rechi Vita <jprvita@profusion.mobi> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-rw-r--r--net/bluetooth/l2cap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/l2cap.c b/net/bluetooth/l2cap.c
index 46f22640a337..401011a53c73 100644
--- a/net/bluetooth/l2cap.c
+++ b/net/bluetooth/l2cap.c
@@ -3611,7 +3611,7 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk
if (pi->expected_tx_seq == tx_seq)
pi->expected_tx_seq = (pi->expected_tx_seq + 1) % 64;
else
- pi->expected_tx_seq = tx_seq + 1;
+ pi->expected_tx_seq = (tx_seq + 1) % 64;
l2cap_sar_reassembly_sdu(sk, skb, control);