2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-01 18:04:07 +08:00

NFC: digital: NFC-A SEL_RES must be one byte

Section 4.8.2 (SEL_RES Response) of NFC Forum's NFC Digital Protocol
Technical Specification dated 2010-11-17 clearly states that the size
of a SEL_RES Response is one byte.  Enforce this restriction in the
code.

Signed-off-by: Mark Greer <mgreer@animalcreek.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Mark Greer 2017-06-15 10:46:15 -07:00 committed by Samuel Ortiz
parent dcfca27faf
commit 7f9f171336

View File

@ -27,6 +27,7 @@
#define DIGITAL_SDD_RES_CT 0x88 #define DIGITAL_SDD_RES_CT 0x88
#define DIGITAL_SDD_RES_LEN 5 #define DIGITAL_SDD_RES_LEN 5
#define DIGITAL_SEL_RES_LEN 1
#define DIGITAL_SEL_RES_NFCID1_COMPLETE(sel_res) (!((sel_res) & 0x04)) #define DIGITAL_SEL_RES_NFCID1_COMPLETE(sel_res) (!((sel_res) & 0x04))
#define DIGITAL_SEL_RES_IS_T2T(sel_res) (!((sel_res) & 0x60)) #define DIGITAL_SEL_RES_IS_T2T(sel_res) (!((sel_res) & 0x60))
@ -299,7 +300,7 @@ static void digital_in_recv_sel_res(struct nfc_digital_dev *ddev, void *arg,
} }
} }
if (!resp->len) { if (resp->len != DIGITAL_SEL_RES_LEN) {
rc = -EIO; rc = -EIO;
goto exit; goto exit;
} }