Merge "ipc: HwBinders: Fix potential out of bound access"
diff --git a/ipc/HwBinders/agm_ipc_service/src/agm_server_wrapper.cpp b/ipc/HwBinders/agm_ipc_service/src/agm_server_wrapper.cpp
index 56189f7..aa640c4 100644
--- a/ipc/HwBinders/agm_ipc_service/src/agm_server_wrapper.cpp
+++ b/ipc/HwBinders/agm_ipc_service/src/agm_server_wrapper.cpp
@@ -883,6 +883,11 @@
void * payload_local = NULL;
int32_t ret = 0;
+ if (payload.size() < size) {
+ ALOGE("%s: Invalid payload.size[%d] less than size %d\n", __func__, payload.size(), size);
+ return -EINVAL;
+ }
+
payload_local = (void*) calloc(1, size);
if (payload_local == NULL) {
ALOGE("%s: Cannot allocate memory for payload_local\n", __func__);