"len" can be negative here. It's harmless but pretty subtle and scary looking so lets add a check for it. Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index a1b7a02..438f39e 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -4069,6 +4069,9 @@ static inline int l2cap_config_rsp(struct l2cap_conn *conn, BT_DBG("scid 0x%4.4x flags 0x%2.2x result 0x%2.2x len %d", scid, flags, result, len); + if (len < 0) + return -EINVAL; + chan = l2cap_get_chan_by_scid(conn, scid); if (!chan) return 0; -- 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