BnCrypto: fix use-before-init in CREATE_PLUGIN am: 4bbfb6d881 am: a9296786e3

Change-Id: I6518f72aab3fdfd0ec2e455708f3177a4966514e
gugelfrei
Automerger Merge Worker 4 years ago
commit 245e44d9cf

@ -264,8 +264,12 @@ status_t BnCrypto::onTransact(
{ {
CHECK_INTERFACE(ICrypto, data, reply); CHECK_INTERFACE(ICrypto, data, reply);
uint8_t uuid[16]; uint8_t uuid[16] = {0};
data.read(uuid, sizeof(uuid)); if (data.read(uuid, sizeof(uuid)) != NO_ERROR) {
android_errorWriteLog(0x534e4554, "144767096");
reply->writeInt32(BAD_VALUE);
return OK;
}
size_t opaqueSize = data.readInt32(); size_t opaqueSize = data.readInt32();
void *opaqueData = NULL; void *opaqueData = NULL;
@ -280,7 +284,11 @@ status_t BnCrypto::onTransact(
return NO_MEMORY; return NO_MEMORY;
} }
data.read(opaqueData, opaqueSize); if (data.read(opaqueData, opaqueSize) != NO_ERROR) {
android_errorWriteLog(0x534e4554, "144767096");
reply->writeInt32(BAD_VALUE);
return OK;
}
reply->writeInt32(createPlugin(uuid, opaqueData, opaqueSize)); reply->writeInt32(createPlugin(uuid, opaqueData, opaqueSize));
free(opaqueData); free(opaqueData);

Loading…
Cancel
Save