]> git.karo-electronics.de Git - linux-beck.git/commitdiff
NFC: llcp: Fix usage of llcp_add_tlv()
authorThierry Escande <thierry.escande@collabora.com>
Wed, 29 Jun 2016 08:48:22 +0000 (10:48 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Wed, 6 Jul 2016 08:02:06 +0000 (10:02 +0200)
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>
net/nfc/llcp_commands.c

index 3425532c39f7839d9ce6d87167d6b9222d6cd5e2..4112d009b032c25e5eb409170d76b8d2486cdffb 100644 (file)
@@ -438,12 +438,9 @@ int nfc_llcp_send_connect(struct nfc_llcp_sock *sock)
                goto error_tlv;
        }
 
-       if (service_name_tlv != NULL)
-               skb = llcp_add_tlv(skb, service_name_tlv,
-                                  service_name_tlv_length);
-
-       skb = llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
-       skb = llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
+       llcp_add_tlv(skb, service_name_tlv, service_name_tlv_length);
+       llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
+       llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
 
        skb_queue_tail(&local->tx_queue, skb);
 
@@ -493,8 +490,8 @@ int nfc_llcp_send_cc(struct nfc_llcp_sock *sock)
                goto error_tlv;
        }
 
-       skb = llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
-       skb = llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
+       llcp_add_tlv(skb, miux_tlv, miux_tlv_length);
+       llcp_add_tlv(skb, rw_tlv, rw_tlv_length);
 
        skb_queue_tail(&local->tx_queue, skb);