64
65 /**
66 * Copy IPv6 address as jbytearray to target
67 */
68 #define COPY_INET6_ADDRESS(env, source, target) \
69 (*env)->GetByteArrayRegion(env, source, 0, 16, target)
70
71 /**
72 * Enable or disable receipt of WSAECONNRESET errors.
73 */
74 static void setConnectionReset(SOCKET s, BOOL enable) {
75 DWORD bytesReturned = 0;
76 WSAIoctl(s, SIO_UDP_CONNRESET, &enable, sizeof(enable),
77 NULL, 0, &bytesReturned, NULL, NULL);
78 }
79
80
81 JNIEXPORT void JNICALL
82 Java_sun_nio_ch_Net_initIDs(JNIEnv *env, jclass clazz)
83 {
84 /* nothing to do */
85 }
86
87 JNIEXPORT jboolean JNICALL
88 Java_sun_nio_ch_Net_isIPv6Available0(JNIEnv* env, jclass cl)
89 {
90 /*
91 * Return true if Windows Vista or newer, and IPv6 is configured
92 */
93 OSVERSIONINFO ver;
94 ver.dwOSVersionInfoSize = sizeof(ver);
95 GetVersionEx(&ver);
96 if ((ver.dwPlatformId == VER_PLATFORM_WIN32_NT) &&
97 (ver.dwMajorVersion >= 6) && ipv6_available())
98 {
99 return JNI_TRUE;
100 }
101 return JNI_FALSE;
102 }
103
104 JNIEXPORT jint JNICALL
|
64
65 /**
66 * Copy IPv6 address as jbytearray to target
67 */
68 #define COPY_INET6_ADDRESS(env, source, target) \
69 (*env)->GetByteArrayRegion(env, source, 0, 16, target)
70
71 /**
72 * Enable or disable receipt of WSAECONNRESET errors.
73 */
74 static void setConnectionReset(SOCKET s, BOOL enable) {
75 DWORD bytesReturned = 0;
76 WSAIoctl(s, SIO_UDP_CONNRESET, &enable, sizeof(enable),
77 NULL, 0, &bytesReturned, NULL, NULL);
78 }
79
80
81 JNIEXPORT void JNICALL
82 Java_sun_nio_ch_Net_initIDs(JNIEnv *env, jclass clazz)
83 {
84 initInetAddressIDs(env);
85 }
86
87 JNIEXPORT jboolean JNICALL
88 Java_sun_nio_ch_Net_isIPv6Available0(JNIEnv* env, jclass cl)
89 {
90 /*
91 * Return true if Windows Vista or newer, and IPv6 is configured
92 */
93 OSVERSIONINFO ver;
94 ver.dwOSVersionInfoSize = sizeof(ver);
95 GetVersionEx(&ver);
96 if ((ver.dwPlatformId == VER_PLATFORM_WIN32_NT) &&
97 (ver.dwMajorVersion >= 6) && ipv6_available())
98 {
99 return JNI_TRUE;
100 }
101 return JNI_FALSE;
102 }
103
104 JNIEXPORT jint JNICALL
|