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

Commit 9ceb5ff5 authored by Mike Lockwood's avatar Mike Lockwood Committed by Android (Google) Code Review
Browse files

Merge "Remove some #ifdef HAVE_ANDROID_OS that were needed for the simulator build"

parents ec266dae c2be743a
Loading
Loading
Loading
Loading
+0 −115
Original line number Diff line number Diff line
@@ -21,126 +21,11 @@
namespace android {
#endif

#if defined(HAVE_ANDROID_OS)

/* obtain structures and constants from the kernel header */

#include <sys/ioctl.h>
#include <linux/binder.h>

#else

/* Some parts of the simulator need fake versions of this 
 * stuff in order to compile.  Really this should go away
 * entirely...
 */

#define BINDER_CURRENT_PROTOCOL_VERSION 7

#define BINDER_TYPE_BINDER 1
#define BINDER_TYPE_WEAK_BINDER 2
#define BINDER_TYPE_HANDLE 3
#define BINDER_TYPE_WEAK_HANDLE 4
#define BINDER_TYPE_FD 5

struct flat_binder_object {
    unsigned long type;
    unsigned long flags;
    union {
        void *binder;
        signed long handle;
    };
    void *cookie;
};

struct binder_write_read {
    signed long write_size;
    signed long write_consumed;
    unsigned long write_buffer;
    signed long read_size;
    signed long read_consumed;
    unsigned long read_buffer;
};

struct binder_transaction_data {
    union {
        size_t handle;
        void *ptr;
    } target;
    void *cookie;
    unsigned int code;
    
    unsigned int flags;
    pid_t sender_pid;
    uid_t sender_euid;
    size_t data_size;
    size_t offsets_size;
    
    union {
        struct {
            const void *buffer;
            const void *offsets;
        } ptr;
        uint8_t buf[8];
    } data;
};

enum transaction_flags {
    TF_ONE_WAY = 0x01,
    TF_ROOT_OBJECT = 0x04,
    TF_STATUS_CODE = 0x08,
    TF_ACCEPT_FDS = 0x10,
};


enum {
    FLAT_BINDER_FLAG_PRIORITY_MASK = 0xff,
    FLAT_BINDER_FLAG_ACCEPTS_FDS = 0x100,
};

enum BinderDriverReturnProtocol {
    BR_ERROR,
    BR_OK,
    BR_TRANSACTION,
    BR_REPLY,
    BR_ACQUIRE_RESULT,
    BR_DEAD_REPLY,
    BR_TRANSACTION_COMPLETE,
    BR_INCREFS,
    BR_ACQUIRE,
    BR_RELEASE,
    BR_DECREFS,
    BR_ATTEMPT_ACQUIRE,
    BR_NOOP,
    BR_SPAWN_LOOPER,
    BR_FINISHED,
    BR_DEAD_BINDER,
    BR_CLEAR_DEATH_NOTIFICATION_DONE,
    BR_FAILED_REPLY,
};

enum BinderDriverCommandProtocol {
    BC_TRANSACTION,
    BC_REPLY,
    BC_ACQUIRE_RESULT,
    BC_FREE_BUFFER,
    BC_INCREFS,
    BC_ACQUIRE,
    BC_RELEASE,
    BC_DECREFS,
    BC_INCREFS_DONE,
    BC_ACQUIRE_DONE,
    BC_ATTEMPT_ACQUIRE,
    BC_REGISTER_LOOPER,
    BC_ENTER_LOOPER,
    BC_EXIT_LOOPER,
    BC_REQUEST_DEATH_NOTIFICATION,
    BC_CLEAR_DEATH_NOTIFICATION,
    BC_DEAD_BINDER_DONE,
};

#endif

#ifdef __cplusplus
}   // namespace android
#endif
+0 −12
Original line number Diff line number Diff line
@@ -154,11 +154,7 @@ bool ProcessState::becomeContextManager(context_check_func checkFunc, void* user
        mBinderContextUserData = userData;

        int dummy = 0;
#if defined(HAVE_ANDROID_OS)
        status_t result = ioctl(mDriverFD, BINDER_SET_CONTEXT_MGR, &dummy);
#else
        status_t result = INVALID_OPERATION;
#endif
        if (result == 0) {
            mManagesContexts = true;
        } else if (result == -1) {
@@ -304,12 +300,7 @@ static int open_driver()
    if (fd >= 0) {
        fcntl(fd, F_SETFD, FD_CLOEXEC);
        int vers;
#if defined(HAVE_ANDROID_OS)
        status_t result = ioctl(fd, BINDER_VERSION, &vers);
#else
        status_t result = -1;
        errno = EPERM;
#endif
        if (result == -1) {
            LOGE("Binder ioctl to obtain version failed: %s", strerror(errno));
            close(fd);
@@ -320,14 +311,11 @@ static int open_driver()
            close(fd);
            fd = -1;
        }
#if defined(HAVE_ANDROID_OS)
        size_t maxThreads = 15;
        result = ioctl(fd, BINDER_SET_MAX_THREADS, &maxThreads);
        if (result == -1) {
            LOGE("Binder ioctl to set max threads failed: %s", strerror(errno));
        }
#endif
        
    } else {
        LOGW("Opening '/dev/binder' failed: %s\n", strerror(errno));
    }