Commit 0d593526 authored by Chad Brubaker's avatar Chad Brubaker
Browse files

Properly check for Blob max length

sizeof(mBlob.value) is incorrect because writeBlob pads up to the next
AES_BLOCK_SIZE

Bug:22802399
Change-Id: I377edca2c7ea2cf4455f22f5f927fdad79893729
parent b124c9e8
......@@ -412,12 +412,12 @@ class Blob {
public:
Blob(const uint8_t* value, size_t valueLength, const uint8_t* info, uint8_t infoLength,
BlobType type) {
if (valueLength > sizeof(mBlob.value)) {
valueLength = sizeof(mBlob.value);
if (valueLength > VALUE_SIZE) {
valueLength = VALUE_SIZE;
ALOGW("Provided blob length too large");
}
if (infoLength + valueLength > sizeof(mBlob.value)) {
infoLength = sizeof(mBlob.value) - valueLength;
if (infoLength + valueLength > VALUE_SIZE) {
infoLength = VALUE_SIZE - valueLength;
ALOGW("Provided info length too large");
}
mBlob.length = valueLength;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment