Rizin
unix-like reverse engineering framework and cli tools
jni.h File Reference
#include <stdarg.h>

Go to the source code of this file.

Classes

union  jvalue
 
struct  JNINativeMethod
 
struct  JNINativeInterface
 
struct  _JNIEnv
 
struct  JNIInvokeInterface
 
struct  _JavaVM
 
struct  JavaVMAttachArgs
 
struct  JavaVMOption
 
struct  JavaVMInitArgs
 

Macros

#define JNIIMPORT
 
#define JNIEXPORT   __attribute__((visibility("default")))
 
#define JNICALL
 
#define JNI_FALSE   0
 
#define JNI_TRUE   1
 
#define JNI_VERSION_1_1   0x00010001
 
#define JNI_VERSION_1_2   0x00010002
 
#define JNI_VERSION_1_4   0x00010004
 
#define JNI_VERSION_1_6   0x00010006
 
#define JNI_OK   (0) /* no error */
 
#define JNI_ERR   (-1) /* generic error */
 
#define JNI_EDETACHED   (-2) /* thread detached from the VM */
 
#define JNI_EVERSION   (-3) /* JNI version error */
 
#define JNI_COMMIT   1 /* copy content, do not free buffer */
 
#define JNI_ABORT   2 /* free buffer w/o copying back */
 

Typedefs

typedef unsigned char jboolean
 
typedef signed char jbyte
 
typedef unsigned short jchar
 
typedef short jshort
 
typedef int jint
 
typedef long long jlong
 
typedef float jfloat
 
typedef double jdouble
 
typedef jint jsize
 
typedef void * jobject
 
typedef jobject jclass
 
typedef jobject jstring
 
typedef jobject jarray
 
typedef jarray jobjectArray
 
typedef jarray jbooleanArray
 
typedef jarray jbyteArray
 
typedef jarray jcharArray
 
typedef jarray jshortArray
 
typedef jarray jintArray
 
typedef jarray jlongArray
 
typedef jarray jfloatArray
 
typedef jarray jdoubleArray
 
typedef jobject jthrowable
 
typedef jobject jweak
 
typedef struct _jfieldID * jfieldID
 
typedef struct _jmethodID * jmethodID
 
typedef union jvalue jvalue
 
typedef enum jobjectRefType jobjectRefType
 
typedef const struct JNINativeInterfaceC_JNIEnv
 
typedef const struct JNINativeInterfaceJNIEnv
 
typedef const struct JNIInvokeInterfaceJavaVM
 
typedef struct JavaVMAttachArgs JavaVMAttachArgs
 
typedef struct JavaVMOption JavaVMOption
 
typedef struct JavaVMInitArgs JavaVMInitArgs
 

Enumerations

enum  jobjectRefType { JNIInvalidRefType = 0 , JNILocalRefType = 1 , JNIGlobalRefType = 2 , JNIWeakGlobalRefType = 3 }
 

Functions

JNIEXPORT jint JNICALL JNI_OnLoad (JavaVM *vm, void *reserved)
 
JNIEXPORT void JNICALL JNI_OnUnload (JavaVM *vm, void *reserved)
 

Macro Definition Documentation

◆ JNI_ABORT

#define JNI_ABORT   2 /* free buffer w/o copying back */

Definition at line 1013 of file jni.h.

◆ JNI_COMMIT

#define JNI_COMMIT   1 /* copy content, do not free buffer */

Definition at line 1012 of file jni.h.

◆ JNI_EDETACHED

#define JNI_EDETACHED   (-2) /* thread detached from the VM */

Definition at line 1009 of file jni.h.

◆ JNI_ERR

#define JNI_ERR   (-1) /* generic error */

Definition at line 1008 of file jni.h.

◆ JNI_EVERSION

#define JNI_EVERSION   (-3) /* JNI version error */

Definition at line 1010 of file jni.h.

◆ JNI_FALSE

#define JNI_FALSE   0

Definition at line 999 of file jni.h.

◆ JNI_OK

#define JNI_OK   (0) /* no error */

Definition at line 1007 of file jni.h.

◆ JNI_TRUE

#define JNI_TRUE   1

Definition at line 1000 of file jni.h.

◆ JNI_VERSION_1_1

#define JNI_VERSION_1_1   0x00010001

Definition at line 1002 of file jni.h.

◆ JNI_VERSION_1_2

#define JNI_VERSION_1_2   0x00010002

Definition at line 1003 of file jni.h.

◆ JNI_VERSION_1_4

#define JNI_VERSION_1_4   0x00010004

Definition at line 1004 of file jni.h.

◆ JNI_VERSION_1_6

#define JNI_VERSION_1_6   0x00010006

Definition at line 1005 of file jni.h.

◆ JNICALL

#define JNICALL

Definition at line 983 of file jni.h.

◆ JNIEXPORT

#define JNIEXPORT   __attribute__((visibility("default")))

Definition at line 982 of file jni.h.

◆ JNIIMPORT

#define JNIIMPORT

Definition at line 981 of file jni.h.

Typedef Documentation

◆ C_JNIEnv

Definition at line 156 of file jni.h.

◆ jarray

typedef jobject jarray

Definition at line 106 of file jni.h.

◆ JavaVM

typedef const struct JNIInvokeInterface* JavaVM

Definition at line 163 of file jni.h.

◆ JavaVMAttachArgs

Definition at line 163 of file jni.h.

◆ JavaVMInitArgs

◆ JavaVMOption

typedef struct JavaVMOption JavaVMOption

◆ jboolean

typedef unsigned char jboolean

Definition at line 50 of file jni.h.

◆ jbooleanArray

Definition at line 108 of file jni.h.

◆ jbyte

typedef signed char jbyte

Definition at line 51 of file jni.h.

◆ jbyteArray

typedef jarray jbyteArray

Definition at line 109 of file jni.h.

◆ jchar

typedef unsigned short jchar

Definition at line 52 of file jni.h.

◆ jcharArray

typedef jarray jcharArray

Definition at line 110 of file jni.h.

◆ jclass

typedef jobject jclass

Definition at line 104 of file jni.h.

◆ jdouble

typedef double jdouble

Definition at line 57 of file jni.h.

◆ jdoubleArray

Definition at line 115 of file jni.h.

◆ jfieldID

typedef struct _jfieldID* jfieldID

Definition at line 122 of file jni.h.

◆ jfloat

typedef float jfloat

Definition at line 56 of file jni.h.

◆ jfloatArray

Definition at line 114 of file jni.h.

◆ jint

typedef int jint

Definition at line 54 of file jni.h.

◆ jintArray

typedef jarray jintArray

Definition at line 112 of file jni.h.

◆ jlong

typedef long long jlong

Definition at line 55 of file jni.h.

◆ jlongArray

typedef jarray jlongArray

Definition at line 113 of file jni.h.

◆ jmethodID

typedef struct _jmethodID* jmethodID

Definition at line 125 of file jni.h.

◆ JNIEnv

typedef const struct JNINativeInterface* JNIEnv

Definition at line 162 of file jni.h.

◆ jobject

typedef void* jobject

Definition at line 103 of file jni.h.

◆ jobjectArray

Definition at line 107 of file jni.h.

◆ jobjectRefType

◆ jshort

typedef short jshort

Definition at line 53 of file jni.h.

◆ jshortArray

Definition at line 111 of file jni.h.

◆ jsize

typedef jint jsize

Definition at line 61 of file jni.h.

◆ jstring

typedef jobject jstring

Definition at line 105 of file jni.h.

◆ jthrowable

Definition at line 116 of file jni.h.

◆ jvalue

typedef union jvalue jvalue

◆ jweak

typedef jobject jweak

Definition at line 117 of file jni.h.

Enumeration Type Documentation

◆ jobjectRefType

Enumerator
JNIInvalidRefType 
JNILocalRefType 
JNIGlobalRefType 
JNIWeakGlobalRefType 

Definition at line 141 of file jni.h.

141  {
142  JNIInvalidRefType = 0,
143  JNILocalRefType = 1,
144  JNIGlobalRefType = 2,
jobjectRefType
Definition: jni.h:141
@ JNIWeakGlobalRefType
Definition: jni.h:145
@ JNIInvalidRefType
Definition: jni.h:142
@ JNIGlobalRefType
Definition: jni.h:144
@ JNILocalRefType
Definition: jni.h:143

Function Documentation

◆ JNI_OnLoad()

JNIEXPORT jint JNICALL JNI_OnLoad ( JavaVM vm,
void *  reserved 
)

◆ JNI_OnUnload()

JNIEXPORT void JNICALL JNI_OnUnload ( JavaVM vm,
void *  reserved 
)