├── .circleci └── config.yml ├── .clang-format ├── .gitignore ├── .gitmodules ├── CMakeLists.txt ├── LICENSE ├── README.md ├── examples ├── CMakeLists.txt └── src │ ├── agent.cpp │ ├── jni.cpp │ └── main.cpp ├── include ├── classfile_constants.h ├── darwin │ ├── jawt_md.h │ └── jni_md.h ├── fake-jni │ ├── array.h │ ├── fake-jni.h │ ├── internal │ │ ├── jni │ │ │ └── native.h │ │ ├── jvmti │ │ │ └── jvmti.h │ │ ├── meta │ │ │ ├── field.h │ │ │ ├── meta.h │ │ │ ├── method.h │ │ │ └── types.h │ │ └── util.h │ ├── jvm.h │ ├── string.h │ ├── throwable.h │ └── weak.h ├── freebsd │ ├── jawt_md.h │ └── jni_md.h ├── jawt.h ├── jdwpTransport.h ├── jni.h ├── jvmti.h ├── jvmticmlr.h ├── linux │ ├── jawt_md.h │ └── jni_md.h ├── solaris │ ├── jawt_md.h │ └── jni_md.h └── win32 │ ├── bridge │ ├── AccessBridgeCallbacks.h │ ├── AccessBridgeCalls.c │ ├── AccessBridgeCalls.h │ └── AccessBridgePackages.h │ ├── jawt_md.h │ └── jni_md.h ├── src ├── fake-jni.cpp ├── internal │ └── library.cpp ├── jni │ ├── invoke │ │ ├── invoke.cpp │ │ ├── misc.cpp │ │ └── thread.cpp │ ├── jni_env.cpp │ └── native │ │ ├── array.cpp │ │ ├── buffer.cpp │ │ ├── exception.cpp │ │ ├── field.cpp │ │ ├── method.cpp │ │ ├── misc.cpp │ │ ├── native.cpp │ │ ├── native_vararg.cpp │ │ ├── object.cpp │ │ ├── ref.cpp │ │ ├── reflect.cpp │ │ └── string.cpp ├── jvm │ ├── array.cpp │ ├── class.cpp │ ├── field.cpp │ ├── jvm.cpp │ ├── method.cpp │ ├── object.cpp │ ├── string.cpp │ ├── throwable.cpp │ └── weak.cpp └── jvmti │ ├── interface │ ├── class.cpp │ ├── field.cpp │ ├── jvmti.cpp │ ├── jvmti_vararg.cpp │ ├── method.cpp │ ├── misc.cpp │ ├── monitor.cpp │ └── thread.cpp │ └── jvmti_env.cpp └── test ├── CMakeLists.txt ├── main.cpp └── smoke_test.cpp /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/.clang-format -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/.gitmodules -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/README.md -------------------------------------------------------------------------------- /examples/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/examples/CMakeLists.txt -------------------------------------------------------------------------------- /examples/src/agent.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/examples/src/agent.cpp -------------------------------------------------------------------------------- /examples/src/jni.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/examples/src/jni.cpp -------------------------------------------------------------------------------- /examples/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/examples/src/main.cpp -------------------------------------------------------------------------------- /include/classfile_constants.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/classfile_constants.h -------------------------------------------------------------------------------- /include/darwin/jawt_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/darwin/jawt_md.h -------------------------------------------------------------------------------- /include/darwin/jni_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/darwin/jni_md.h -------------------------------------------------------------------------------- /include/fake-jni/array.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/array.h -------------------------------------------------------------------------------- /include/fake-jni/fake-jni.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/fake-jni.h -------------------------------------------------------------------------------- /include/fake-jni/internal/jni/native.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/jni/native.h -------------------------------------------------------------------------------- /include/fake-jni/internal/jvmti/jvmti.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/jvmti/jvmti.h -------------------------------------------------------------------------------- /include/fake-jni/internal/meta/field.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/meta/field.h -------------------------------------------------------------------------------- /include/fake-jni/internal/meta/meta.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/meta/meta.h -------------------------------------------------------------------------------- /include/fake-jni/internal/meta/method.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/meta/method.h -------------------------------------------------------------------------------- /include/fake-jni/internal/meta/types.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/meta/types.h -------------------------------------------------------------------------------- /include/fake-jni/internal/util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/internal/util.h -------------------------------------------------------------------------------- /include/fake-jni/jvm.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/jvm.h -------------------------------------------------------------------------------- /include/fake-jni/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/string.h -------------------------------------------------------------------------------- /include/fake-jni/throwable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/throwable.h -------------------------------------------------------------------------------- /include/fake-jni/weak.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/fake-jni/weak.h -------------------------------------------------------------------------------- /include/freebsd/jawt_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/freebsd/jawt_md.h -------------------------------------------------------------------------------- /include/freebsd/jni_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/freebsd/jni_md.h -------------------------------------------------------------------------------- /include/jawt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/jawt.h -------------------------------------------------------------------------------- /include/jdwpTransport.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/jdwpTransport.h -------------------------------------------------------------------------------- /include/jni.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/jni.h -------------------------------------------------------------------------------- /include/jvmti.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/jvmti.h -------------------------------------------------------------------------------- /include/jvmticmlr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/jvmticmlr.h -------------------------------------------------------------------------------- /include/linux/jawt_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/linux/jawt_md.h -------------------------------------------------------------------------------- /include/linux/jni_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/linux/jni_md.h -------------------------------------------------------------------------------- /include/solaris/jawt_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/solaris/jawt_md.h -------------------------------------------------------------------------------- /include/solaris/jni_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/solaris/jni_md.h -------------------------------------------------------------------------------- /include/win32/bridge/AccessBridgeCallbacks.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/bridge/AccessBridgeCallbacks.h -------------------------------------------------------------------------------- /include/win32/bridge/AccessBridgeCalls.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/bridge/AccessBridgeCalls.c -------------------------------------------------------------------------------- /include/win32/bridge/AccessBridgeCalls.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/bridge/AccessBridgeCalls.h -------------------------------------------------------------------------------- /include/win32/bridge/AccessBridgePackages.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/bridge/AccessBridgePackages.h -------------------------------------------------------------------------------- /include/win32/jawt_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/jawt_md.h -------------------------------------------------------------------------------- /include/win32/jni_md.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/include/win32/jni_md.h -------------------------------------------------------------------------------- /src/fake-jni.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/fake-jni.cpp -------------------------------------------------------------------------------- /src/internal/library.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/internal/library.cpp -------------------------------------------------------------------------------- /src/jni/invoke/invoke.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/invoke/invoke.cpp -------------------------------------------------------------------------------- /src/jni/invoke/misc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/invoke/misc.cpp -------------------------------------------------------------------------------- /src/jni/invoke/thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/invoke/thread.cpp -------------------------------------------------------------------------------- /src/jni/jni_env.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/jni_env.cpp -------------------------------------------------------------------------------- /src/jni/native/array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/array.cpp -------------------------------------------------------------------------------- /src/jni/native/buffer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/buffer.cpp -------------------------------------------------------------------------------- /src/jni/native/exception.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/exception.cpp -------------------------------------------------------------------------------- /src/jni/native/field.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/field.cpp -------------------------------------------------------------------------------- /src/jni/native/method.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/method.cpp -------------------------------------------------------------------------------- /src/jni/native/misc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/misc.cpp -------------------------------------------------------------------------------- /src/jni/native/native.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/native.cpp -------------------------------------------------------------------------------- /src/jni/native/native_vararg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/native_vararg.cpp -------------------------------------------------------------------------------- /src/jni/native/object.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/object.cpp -------------------------------------------------------------------------------- /src/jni/native/ref.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/ref.cpp -------------------------------------------------------------------------------- /src/jni/native/reflect.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/reflect.cpp -------------------------------------------------------------------------------- /src/jni/native/string.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jni/native/string.cpp -------------------------------------------------------------------------------- /src/jvm/array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/array.cpp -------------------------------------------------------------------------------- /src/jvm/class.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/class.cpp -------------------------------------------------------------------------------- /src/jvm/field.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/field.cpp -------------------------------------------------------------------------------- /src/jvm/jvm.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/jvm.cpp -------------------------------------------------------------------------------- /src/jvm/method.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/method.cpp -------------------------------------------------------------------------------- /src/jvm/object.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/object.cpp -------------------------------------------------------------------------------- /src/jvm/string.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/string.cpp -------------------------------------------------------------------------------- /src/jvm/throwable.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/throwable.cpp -------------------------------------------------------------------------------- /src/jvm/weak.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvm/weak.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/class.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/class.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/field.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/field.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/jvmti.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/jvmti.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/jvmti_vararg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/jvmti_vararg.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/method.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/method.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/misc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/misc.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/monitor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/monitor.cpp -------------------------------------------------------------------------------- /src/jvmti/interface/thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/interface/thread.cpp -------------------------------------------------------------------------------- /src/jvmti/jvmti_env.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/src/jvmti/jvmti_env.cpp -------------------------------------------------------------------------------- /test/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/test/CMakeLists.txt -------------------------------------------------------------------------------- /test/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/test/main.cpp -------------------------------------------------------------------------------- /test/smoke_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dukeify/fake-jni/HEAD/test/smoke_test.cpp --------------------------------------------------------------------------------