浏览代码

NFC: llcp: Fix possible memory leak while sending I frames

If sending was not completed due to low memory condition msg_data
was not free before returning from function.

Signed-off-by: Szymon Janc <szymon.janc@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Szymon Janc 12 年之前
父节点
当前提交
43d53c29dd
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      net/nfc/llcp_commands.c

+ 3 - 1
net/nfc/llcp_commands.c

@@ -684,8 +684,10 @@ int nfc_llcp_send_i_frame(struct nfc_llcp_sock *sock,
 
 		pdu = llcp_allocate_pdu(sock, LLCP_PDU_I,
 					frag_len + LLCP_SEQUENCE_SIZE);
-		if (pdu == NULL)
+		if (pdu == NULL) {
+			kfree(msg_data);
 			return -ENOMEM;
+		}
 
 		skb_put(pdu, LLCP_SEQUENCE_SIZE);