src/solaris/native/java/net/NetworkInterface.c
Print this page
*** 1012,1022 ****
* proto is AF_INET/AF_INET6
*/
static int openSocket(JNIEnv *env, int proto){
int sock;
! if ((sock = JVM_Socket(proto, SOCK_DGRAM, 0)) < 0) {
/*
* If EPROTONOSUPPORT is returned it means we don't have
* support for this proto so don't throw an exception.
*/
if (errno != EPROTONOSUPPORT) {
--- 1012,1022 ----
* proto is AF_INET/AF_INET6
*/
static int openSocket(JNIEnv *env, int proto){
int sock;
! if ((sock = socket(proto, SOCK_DGRAM, 0)) < 0) {
/*
* If EPROTONOSUPPORT is returned it means we don't have
* support for this proto so don't throw an exception.
*/
if (errno != EPROTONOSUPPORT) {
*** 1038,1050 ****
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock;
struct ifreq if2;
! if ((sock = JVM_Socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = JVM_Socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
else{ // errno is not NOSUPPORT
--- 1038,1050 ----
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock;
struct ifreq if2;
! if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
else{ // errno is not NOSUPPORT
*** 1466,1478 ****
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock, alreadyV6 = 0;
struct lifreq if2;
! if ((sock = JVM_Socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = JVM_Socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
alreadyV6=1;
--- 1466,1478 ----
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock, alreadyV6 = 0;
struct lifreq if2;
! if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
alreadyV6=1;
*** 1496,1506 ****
if (! alreadyV6 ){
memset((char *) &if2, 0, sizeof(if2));
strcpy(if2.lifr_name, ifname);
if (ioctl(sock, SIOCGLIFNETMASK, (char *)&if2) < 0) {
close(sock);
! if ( (sock = JVM_Socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
}
--- 1496,1506 ----
if (! alreadyV6 ){
memset((char *) &if2, 0, sizeof(if2));
strcpy(if2.lifr_name, ifname);
if (ioctl(sock, SIOCGLIFNETMASK, (char *)&if2) < 0) {
close(sock);
! if ( (sock = socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
}
*** 1852,1864 ****
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock;
struct ifreq if2;
! if ((sock = JVM_Socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = JVM_Socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
else{ // errno is not NOSUPPORT
--- 1852,1864 ----
#ifdef AF_INET6
static int openSocketWithFallback(JNIEnv *env, const char *ifname){
int sock;
struct ifreq if2;
! if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
if (errno == EPROTONOSUPPORT){
! if ( (sock = socket(AF_INET6, SOCK_DGRAM, 0)) < 0 ){
NET_ThrowByNameWithLastError(env , JNU_JAVANETPKG "SocketException", "IPV6 Socket creation failed");
return -1;
}
}
else{ // errno is not NOSUPPORT