NFC: Fix LLCP TLV building routine
authorSamuel Ortiz <sameo@linux.intel.com>
Tue, 10 Apr 2012 17:43:15 +0000 (19:43 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 12 Apr 2012 19:10:41 +0000 (15:10 -0400)
The if logic could lead to zero length TLVs.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/nfc/llcp/commands.c

index 4aa52b8..34ee684 100644 (file)
@@ -102,7 +102,7 @@ u8 *nfc_llcp_build_tlv(u8 type, u8 *value, u8 value_length, u8 *tlv_length)
        length = llcp_tlv_length[type];
        if (length == 0 && value_length == 0)
                return NULL;
-       else
+       else if (length == 0)
                length = value_length;
 
        *tlv_length = 2 + length;