--- a/jdk/src/solaris/native/sun/nio/ch/Net.c Thu Oct 07 10:35:36 2010 +0100
+++ b/jdk/src/solaris/native/sun/nio/ch/Net.c Thu Oct 07 14:36:17 2010 +0100
@@ -298,7 +298,8 @@
struct linger linger;
u_char carg;
void *arg;
- int arglen, n;
+ socklen_t arglen;
+ int n;
/* Option value is an int except for a few specific cases */
@@ -317,7 +318,7 @@
}
if (mayNeedConversion) {
- n = NET_GetSockOpt(fdval(env, fdo), level, opt, arg, &arglen);
+ n = NET_GetSockOpt(fdval(env, fdo), level, opt, arg, (int*)&arglen);
} else {
n = getsockopt(fdval(env, fdo), level, opt, arg, &arglen);
}
@@ -527,7 +528,7 @@
Java_sun_nio_ch_Net_getInterface4(JNIEnv* env, jobject this, jobject fdo)
{
struct in_addr in;
- int arglen = sizeof(struct in_addr);
+ socklen_t arglen = sizeof(struct in_addr);
int n;
n = getsockopt(fdval(env, fdo), IPPROTO_IP, IP_MULTICAST_IF, (void*)&in, &arglen);
@@ -556,7 +557,7 @@
Java_sun_nio_ch_Net_getInterface6(JNIEnv* env, jobject this, jobject fdo)
{
int index;
- int arglen = sizeof(index);
+ socklen_t arglen = sizeof(index);
int n;
n = getsockopt(fdval(env, fdo), IPPROTO_IPV6, IPV6_MULTICAST_IF, (void*)&index, &arglen);