Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e8582d65 authored by Adam Lesinski's avatar Adam Lesinski Committed by Android Git Automerger
Browse files

am 9bd7afc0: Prevent integer overflow when allocating native_handle_t

* commit '9bd7afc0':
  Prevent integer overflow when allocating native_handle_t
parents 5a69c1db 9bd7afc0
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -25,14 +25,22 @@
#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;
        h->numInts = numInts;
    }
    return h;
}