< prev index next >

src/java.base/unix/native/libnio/ch/Net.c

Print this page

        

*** 201,219 **** #else return JNI_FALSE; #endif } JNIEXPORT jint JNICALL Java_sun_nio_ch_Net_socket0(JNIEnv *env, jclass cl, jboolean preferIPv6, jboolean stream, jboolean reuse, jboolean ignored) { int fd; int type = (stream ? SOCK_STREAM : SOCK_DGRAM); int domain = (ipv6_available() && preferIPv6) ? AF_INET6 : AF_INET; ! fd = socket(domain, type, 0); if (fd < 0) { return handleSocketError(env, errno); } /* --- 201,227 ---- #else return JNI_FALSE; #endif } + static int socket0(int domain, int type, int protocol) { + if (domain == AF_INET) { + errno = EAFNOSUPPORT; + return -1; + } + return socket(domain, type, protocol); + } + JNIEXPORT jint JNICALL Java_sun_nio_ch_Net_socket0(JNIEnv *env, jclass cl, jboolean preferIPv6, jboolean stream, jboolean reuse, jboolean ignored) { int fd; int type = (stream ? SOCK_STREAM : SOCK_DGRAM); int domain = (ipv6_available() && preferIPv6) ? AF_INET6 : AF_INET; ! fd = socket0(domain, type, 0); if (fd < 0) { return handleSocketError(env, errno); } /*
< prev index next >