ResStringPool: Prevenet boot loop from se fix
Changes the logs adding in a previous security fix to warnings so
devices with malformed APKs currently on them will not undergo DOS when
they are upgraded to P.
Bug: 79724567
Test: run cts -m CtsAppSecurityHostTestCases \
-t android.appsecurity.cts.CorruptApkTests
Change-Id: Ied54e4bb14abdaf79da562022c7ea6075187c1f8
(cherry picked from commit f05f47b2c1)
This commit is contained in:
@@ -457,7 +457,7 @@ status_t ResStringPool::setTo(const void* data, size_t size, bool copyData)
|
||||
|
||||
// The chunk must be at least the size of the string pool header.
|
||||
if (size < sizeof(ResStringPool_header)) {
|
||||
LOG_ALWAYS_FATAL("Bad string block: data size %zu is too small to be a string block", size);
|
||||
ALOGW("Bad string block: data size %zu is too small to be a string block", size);
|
||||
return (mError=BAD_TYPE);
|
||||
}
|
||||
|
||||
@@ -467,7 +467,7 @@ status_t ResStringPool::setTo(const void* data, size_t size, bool copyData)
|
||||
if (validate_chunk(reinterpret_cast<const ResChunk_header*>(data), sizeof(ResStringPool_header),
|
||||
reinterpret_cast<const uint8_t*>(data) + size,
|
||||
"ResStringPool_header") != NO_ERROR) {
|
||||
LOG_ALWAYS_FATAL("Bad string block: malformed block dimensions");
|
||||
ALOGW("Bad string block: malformed block dimensions");
|
||||
return (mError=BAD_TYPE);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user