From: Chris Manton Date: Thu, 30 Sep 2021 00:49:25 +0000 (-0700) Subject: osi: Prevent memory allocations with MSB set X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=e435404a7d2afa6b4cb9a59319667bf72af4df1f;p=android-x86%2Fsystem-bt.git osi: Prevent memory allocations with MSB set Limit allocations on 32bit to 2 GB Limit allocations on 64bit to 8 Exabyte Bug: 197868577 Tag: #refactor Test: gd/cert/run Ignore-AOSP-First: Security Change-Id: I1c347084d7617b1e364a3241f1b37b398a2a6c6a --- diff --git a/osi/src/allocator.cc b/osi/src/allocator.cc index 1c0449e14..e2c356dd3 100644 --- a/osi/src/allocator.cc +++ b/osi/src/allocator.cc @@ -56,6 +56,7 @@ char* osi_strndup(const char* str, size_t len) { } void* osi_malloc(size_t size) { + CHECK(static_cast(size) >= 0); size_t real_size = allocation_tracker_resize_for_canary(size); void* ptr = malloc(real_size); CHECK(ptr); @@ -63,6 +64,7 @@ void* osi_malloc(size_t size) { } void* osi_calloc(size_t size) { + CHECK(static_cast(size) >= 0); size_t real_size = allocation_tracker_resize_for_canary(size); void* ptr = calloc(1, real_size); CHECK(ptr);