* commit '4e8306419073c93f07c7ac69955d990ffa315d96': Prevent integer overflow when allocating native_handle_t
This commit is contained in:
commit
87b02f23c0
1 changed files with 8 additions and 2 deletions
|
|
@ -25,11 +25,17 @@
|
|||
#include <cutils/log.h>
|
||||
#include <cutils/native_handle.h>
|
||||
|
||||
static const int kMaxNativeFds = 1024;
|
||||
static const int kMaxNativeInts = 1024;
|
||||
|
||||
native_handle_t* native_handle_create(int numFds, int numInts)
|
||||
{
|
||||
native_handle_t* h = malloc(
|
||||
sizeof(native_handle_t) + sizeof(int)*(numFds+numInts));
|
||||
if (numFds < 0 || numInts < 0 || numFds > kMaxNativeFds || numInts > kMaxNativeInts) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
size_t mallocSize = sizeof(native_handle_t) + (sizeof(int) * (numFds + numInts));
|
||||
native_handle_t* h = malloc(mallocSize);
|
||||
if (h) {
|
||||
h->version = sizeof(native_handle_t);
|
||||
h->numFds = numFds;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue