aboutsummaryrefslogtreecommitdiffstats
path: root/net/nfc
diff options
context:
space:
mode:
authorThierry Escande <thierry.escande@collabora.com>2016-06-29 04:48:22 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2016-07-06 04:02:06 -0400
commitde9e5aeb4f40e72fa3bb087d378c9bd4ecf65c7f (patch)
treede94e9274726f79bfe73129ae1c76cc1d246f1d5 /net/nfc
parent204bddcb508fe3bca5c97a9f528bafd7ba8fcec8 (diff)
NFC: llcp: Fix usage of llcp_add_tlv()
In functions using llcp_add_tlv(), a skb pointer could be set to NULL and then reuse afterward. With this patch, the skb pointer returned by llcp_add_tlv() is ignored since it can only be the passed skb pointer or NULL when the passed TLV is NULL. There is also no need to check for the TLV pointer as this is done by llcp_add_tlv(). Signed-off-by: Thierry Escande <thierry.escande@collabora.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'net/nfc')
-rw-r--r--net/nfc/llcp_commands.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/net/nfc/llcp_commands.c b/net/nfc/llcp_commands.c
index 3425532c39f7..4112d009b032 100644
--- a/net/nfc/llcp_commands.c
+++ b/net/nfc/llcp_commands.c
@@ -438,12 +438,9 @@ int nfc_llcp_send_connect(struct nfc_llcp_sock *sock)
438 goto error_tlv; 438 goto error_tlv;
439 } 439 }
440 440
441 if (service_name_tlv != NULL) 441 llcp_add_tlv(skb, service_name_tlv, service_name_tlv_length);
442 skb = llcp_add_tlv(skb, service_name_tlv, 442 llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
443 service_name_tlv_length); 443 llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
444
445 skb = llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
446 skb = llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
447 444
448 skb_queue_tail(&local->tx_queue, skb); 445 skb_queue_tail(&local->tx_queue, skb);
449 446
@@ -493,8 +490,8 @@ int nfc_llcp_send_cc(struct nfc_llcp_sock *sock)
493 goto error_tlv; 490 goto error_tlv;
494 } 491 }
495 492
496 skb = llcp_add_tlv(skb, miux_tlv, miux_tlv_length); 493 llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
497 skb = llcp_add_tlv(skb, rw_tlv, rw_tlv_length); 494 llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
498 495
499 skb_queue_tail(&local->tx_queue, skb); 496 skb_queue_tail(&local->tx_queue, skb);
500 497