Merge "Fail explicitly on length overflow." into oc-dev am: ea8d38e77f am: cf91151364
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/core/+/11619803 Change-Id: Idb480f2a4dc1aa0d929e17e7e568a9c1b05c8489
This commit is contained in:
commit
84dcff4c6b
1 changed files with 4 additions and 0 deletions
|
|
@ -190,6 +190,10 @@ bool FileMap::create(const char* origFileName, int fd, off64_t offset, size_t le
|
||||||
adjust = offset % mPageSize;
|
adjust = offset % mPageSize;
|
||||||
adjOffset = offset - adjust;
|
adjOffset = offset - adjust;
|
||||||
adjLength = length + adjust;
|
adjLength = length + adjust;
|
||||||
|
if (__builtin_add_overflow(length, adjust, &adjLength)) {
|
||||||
|
ALOGE("adjusted length overflow: length %zu adjust %d", length, adjust);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
flags = MAP_SHARED;
|
flags = MAP_SHARED;
|
||||||
prot = PROT_READ;
|
prot = PROT_READ;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue