libnx
binder.h
1 #pragma once
2 #include "../types.h"
3 
4 #define BINDER_FIRST_CALL_TRANSACTION 0x1
5 
6 typedef struct {
7  bool created;
8  bool initialized;
9  Handle sessionHandle;
10  s32 id;
11  Handle nativeHandle;
12  size_t ipcBufferSize;
13  bool hasTransactAuto;
14 } Binder;
15 
16 // binderExitSession will not close the sessionHandle since it's user-specified via binderCreateSession and may be used elsewhere.
17 void binderCreateSession(Binder *session, Handle sessionHandle, s32 ID);
18 Result binderInitSession(Binder *session, u32 unk0);
19 void binderExitSession(Binder *session);
20 
21 Result binderTransactParcel(
22  Binder *session, u32 code,
23  void* parcel_data, size_t parcel_data_size,
24  void* parcel_reply, size_t parcel_reply_size,
25  u32 flags);
26 
27 Result binderAdjustRefcount(Binder *session, s32 addval, s32 type);
28 Result binderGetNativeHandle(Binder *session, u32 unk0, Handle *handle_out);
29 
u32 Handle
Kernel object handle.
Definition: types.h:45
u32 Result
Function error code result type.
Definition: types.h:46
uint32_t u32
32-bit unsigned integer.
Definition: types.h:23
Definition: binder.h:6
int32_t s32
32-bit signed integer.
Definition: types.h:29