BnCrypto: fix use-before-init in CREATE_PLUGIN

Bug: 144767096
Test: poc_ICrypto_283
Merged-In: Id67dc9e793ee886e4cc49370d800c7f3580df313
Merged-In: I81ff7cde5e1693f05c90380e879f74d0c4bce5f1
Change-Id: If268553440b8a0cbbe011b5396974fd864a7d083
gugelfrei
Robert Shih 4 years ago
parent 58af3de44d
commit 4bbfb6d881

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

Loading…
Cancel
Save