summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xextns/impl/NxpNfc.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/extns/impl/NxpNfc.cpp b/extns/impl/NxpNfc.cpp
index 955499f..3aab2a9 100755
--- a/extns/impl/NxpNfc.cpp
+++ b/extns/impl/NxpNfc.cpp
@@ -38,6 +38,10 @@ Return<void> NxpNfc::ioctl(uint64_t ioctlType,
nfc_nci_IoctlInOutData_t* pInOutData =
(nfc_nci_IoctlInOutData_t*)&inOutData[0];
+ if (inOutData.size() < sizeof (nfc_nci_IoctlInOutData_t)) {
+ ALOGE("%s invalid inOutData size, size = %d", __func__, (int)inOutData.size());
+ return Void();
+ }
/*data from proxy->stub is copied to local data which can be updated by
* underlying HAL implementation since its an inout argument*/
memcpy(&inpOutData, pInOutData, sizeof(nfc_nci_IoctlInOutData_t));