|
@@ -149,6 +149,10 @@ struct nfc_llcp_sdp_tlv *nfc_llcp_build_sdreq_tlv(u8 tid, char *uri,
|
|
|
|
|
|
pr_debug("uri: %s, len: %zu\n", uri, uri_len);
|
|
pr_debug("uri: %s, len: %zu\n", uri, uri_len);
|
|
|
|
|
|
|
|
+ /* sdreq->tlv_len is u8, takes uri_len, + 3 for header, + 1 for NULL */
|
|
|
|
+ if (WARN_ON_ONCE(uri_len > U8_MAX - 4))
|
|
|
|
+ return NULL;
|
|
|
|
+
|
|
sdreq = kzalloc(sizeof(struct nfc_llcp_sdp_tlv), GFP_KERNEL);
|
|
sdreq = kzalloc(sizeof(struct nfc_llcp_sdp_tlv), GFP_KERNEL);
|
|
if (sdreq == NULL)
|
|
if (sdreq == NULL)
|
|
return NULL;
|
|
return NULL;
|