diff options
-rw-r--r-- | drivers/nfc/st21nfca/st21nfca_dep.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/nfc/st21nfca/st21nfca_dep.c b/drivers/nfc/st21nfca/st21nfca_dep.c index b6de27b5011d..6c09a66d9a1d 100644 --- a/drivers/nfc/st21nfca/st21nfca_dep.c +++ b/drivers/nfc/st21nfca/st21nfca_dep.c | |||
@@ -211,6 +211,11 @@ static int st21nfca_tm_recv_atr_req(struct nfc_hci_dev *hdev, | |||
211 | 211 | ||
212 | atr_req = (struct st21nfca_atr_req *)skb->data; | 212 | atr_req = (struct st21nfca_atr_req *)skb->data; |
213 | 213 | ||
214 | if (atr_req->length < sizeof(struct st21nfca_atr_req)) { | ||
215 | r = -EPROTO; | ||
216 | goto exit; | ||
217 | } | ||
218 | |||
214 | r = st21nfca_tm_send_atr_res(hdev, atr_req); | 219 | r = st21nfca_tm_send_atr_res(hdev, atr_req); |
215 | if (r) | 220 | if (r) |
216 | goto exit; | 221 | goto exit; |