1 /* !---- DO NOT EDIT: This file autogenerated by com\sun\gluegen\JavaEmitter.java on Mon Jul 31 16:27:00 PDT 2006 ----! */
2 
3 #include <jni.h>
4 
5 #include <assert.h>
6 
7  #include <dlfcn.h>
8  #include </usr/include/machine/types.h>
9 
10 /*   Java->C glue code:
11  *   Java package: com.sun.gluegen.runtime.MacOSXDynamicLinkerImpl
12  *    Java method: int dlclose(long __handle)
13  *     C function: int dlclose(void *  __handle);
14  */
15 JNIEXPORT jint JNICALL
Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlclose__J(JNIEnv * env,jclass _unused,jlong __handle)16 Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlclose__J(JNIEnv *env, jclass _unused, jlong __handle) {
17   int _res;
18   _res = dlclose((void *) (intptr_t) __handle);
19   return _res;
20 }
21 
22 
23 /*   Java->C glue code:
24  *   Java package: com.sun.gluegen.runtime.MacOSXDynamicLinkerImpl
25  *    Java method: java.lang.String dlerror()
26  *     C function: char *  dlerror(void);
27  */
28 JNIEXPORT jstring JNICALL
Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlerror__(JNIEnv * env,jclass _unused)29 Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlerror__(JNIEnv *env, jclass _unused) {
30   char *  _res;
31   _res = dlerror();
32   if (_res == NULL) return NULL;  return (*env)->NewStringUTF(env, _res);
33 }
34 
35 
36 /*   Java->C glue code:
37  *   Java package: com.sun.gluegen.runtime.MacOSXDynamicLinkerImpl
38  *    Java method: long dlopen(java.lang.String __path, int __mode)
39  *     C function: void *  dlopen(const char *  __path, int __mode);
40  */
41 JNIEXPORT jlong JNICALL
Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlopen__Ljava_lang_String_2I(JNIEnv * env,jclass _unused,jstring __path,jint __mode)42 Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlopen__Ljava_lang_String_2I(JNIEnv *env, jclass _unused, jstring __path, jint __mode) {
43   const char* _UTF8__path = NULL;
44   void *  _res;
45   if (__path != NULL) {
46     if (__path != NULL) {
47       _UTF8__path = (*env)->GetStringUTFChars(env, __path, (jboolean*)NULL);
48     if (_UTF8__path == NULL) {
49       (*env)->ThrowNew(env, (*env)->FindClass(env, "java/lang/OutOfMemoryError"),
50                        "Failed to get UTF-8 chars for argument \"__path\" in native dispatcher for \"dlopen\"");
51       return 0;
52     }
53     }
54   }
55   _res = dlopen((char *) _UTF8__path, (int) __mode);
56   if (__path != NULL) {
57     (*env)->ReleaseStringUTFChars(env, __path, _UTF8__path);
58   }
59   return (jlong) (intptr_t) _res;
60 }
61 
62 
63 /*   Java->C glue code:
64  *   Java package: com.sun.gluegen.runtime.MacOSXDynamicLinkerImpl
65  *    Java method: long dlsym(long __handle, java.lang.String __symbol)
66  *     C function: void *  dlsym(void *  __handle, const char *  __symbol);
67  */
68 JNIEXPORT jlong JNICALL
Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlsym__JLjava_lang_String_2(JNIEnv * env,jclass _unused,jlong __handle,jstring __symbol)69 Java_com_sun_gluegen_runtime_MacOSXDynamicLinkerImpl_dlsym__JLjava_lang_String_2(JNIEnv *env, jclass _unused, jlong __handle, jstring __symbol) {
70   const char* _UTF8__symbol = NULL;
71   void *  _res;
72   if (__symbol != NULL) {
73     if (__symbol != NULL) {
74       _UTF8__symbol = (*env)->GetStringUTFChars(env, __symbol, (jboolean*)NULL);
75     if (_UTF8__symbol == NULL) {
76       (*env)->ThrowNew(env, (*env)->FindClass(env, "java/lang/OutOfMemoryError"),
77                        "Failed to get UTF-8 chars for argument \"__symbol\" in native dispatcher for \"dlsym\"");
78       return 0;
79     }
80     }
81   }
82   _res = dlsym((void *) (intptr_t) __handle, (char *) _UTF8__symbol);
83   if (__symbol != NULL) {
84     (*env)->ReleaseStringUTFChars(env, __symbol, _UTF8__symbol);
85   }
86   return (jlong) (intptr_t) _res;
87 }
88 
89 
90