Loading
Bluetooth: RFCOMM: pull credit byte with skb_pull_data()
rfcomm_recv_data() treats the first payload byte as a credit field when the UIH frame carries PF and credit-based flow control is enabled. After the header has been stripped, the PF/CFC path consumes that byte with a direct skb->data dereference followed by skb_pull(). A malformed short frame can reach this path without a byte available. Use skb_pull_data() so the length check and pull happen together before the returned credit byte is consumed. Fixes: 1da177e4 ("Linux-2.6.12-rc2") Signed-off-by:Pengpeng Hou <pengpeng@iscas.ac.cn> Signed-off-by:
Luiz Augusto von Dentz <luiz.von.dentz@intel.com>