23 * questions.
24 */
25
26 #include "jni.h"
27 #include "jni_util.h"
28 #include "jvm.h"
29 #include "jlong.h"
30 #include <errno.h>
31 #include <sys/types.h>
32
33 #define RESTARTABLE(_cmd, _result) do { \
34 do { \
35 _result = _cmd; \
36 } while((_result == -1) && (errno == EINTR)); \
37 } while(0)
38
39 /* Defines SO_REUSEPORT */
40 #ifndef SO_REUSEPORT
41 #ifdef __linux__
42 #define SO_REUSEPORT 15
43 #elif defined(__solaris__)
44 #define SO_REUSEPORT 0x100e
45 #elif defined(AIX) || defined(MACOSX)
46 #define SO_REUSEPORT 0x0200
47 #else
48 #define SO_REUSEPORT 0
49 #endif
50 #endif
51
52 /* NIO utility procedures */
53
54
55 /* Defined in IOUtil.c */
56
57 jint fdval(JNIEnv *env, jobject fdo);
58 void setfdval(JNIEnv *env, jobject fdo, jint value);
59
60 jint convertReturnVal(JNIEnv *env, jint n, jboolean reading);
61 jlong convertLongReturnVal(JNIEnv *env, jlong n, jboolean reading);
62
63
64 /* Defined in Net.c */
|
23 * questions.
24 */
25
26 #include "jni.h"
27 #include "jni_util.h"
28 #include "jvm.h"
29 #include "jlong.h"
30 #include <errno.h>
31 #include <sys/types.h>
32
33 #define RESTARTABLE(_cmd, _result) do { \
34 do { \
35 _result = _cmd; \
36 } while((_result == -1) && (errno == EINTR)); \
37 } while(0)
38
39 /* Defines SO_REUSEPORT */
40 #ifndef SO_REUSEPORT
41 #ifdef __linux__
42 #define SO_REUSEPORT 15
43 #elif defined(AIX) || defined(MACOSX)
44 #define SO_REUSEPORT 0x0200
45 #else
46 #define SO_REUSEPORT 0
47 #endif
48 #endif
49
50 /* NIO utility procedures */
51
52
53 /* Defined in IOUtil.c */
54
55 jint fdval(JNIEnv *env, jobject fdo);
56 void setfdval(JNIEnv *env, jobject fdo, jint value);
57
58 jint convertReturnVal(JNIEnv *env, jint n, jboolean reading);
59 jlong convertLongReturnVal(JNIEnv *env, jlong n, jboolean reading);
60
61
62 /* Defined in Net.c */
|