aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/net/natInetAddress.cc
diff options
context:
space:
mode:
authorWarren Levy <warrenl@cygnus.com>2000-11-03 07:43:06 +0000
committerWarren Levy <warrenl@gcc.gnu.org>2000-11-03 07:43:06 +0000
commit6678181b3c0196dc782aec1bbf16182cd92c0257 (patch)
tree4592ce97a133d04d307e48d5b9937d20b94bfa47 /libjava/java/net/natInetAddress.cc
parent11d6fb5451edf66542a7052bb8973e42ddfb7dbf (diff)
downloadgcc-6678181b3c0196dc782aec1bbf16182cd92c0257.zip
gcc-6678181b3c0196dc782aec1bbf16182cd92c0257.tar.gz
gcc-6678181b3c0196dc782aec1bbf16182cd92c0257.tar.bz2
InetAddress.java (addr): Renamed from 'address'.
* java/net/InetAddress.java (addr): Renamed from 'address'. (address): New field to match Serialized Form doc. (hostName): Renamed from 'hostname' to match Serialized Form doc. (family): New serialization field. (serialVersionUID): New field. (readObject): New method. (writeObject): New method. (getFamily): New native method. (InetAddress): Set family. * java/net/natInetAddress.cc (getFamily): New method. (addr): Renamed from 'address'. (hostName): Renamed from 'hostname' to match Serialized Form doc. * java/net/natPlainDatagramSocketImpl.cc (addr): Renamed from 'address'. * java/net/natPlainSocketImpl.cc (addr): Renamed from 'address'. Serialization mod. From-SVN: r37222
Diffstat (limited to 'libjava/java/net/natInetAddress.cc')
-rw-r--r--libjava/java/net/natInetAddress.cc43
1 files changed, 32 insertions, 11 deletions
diff --git a/libjava/java/net/natInetAddress.cc b/libjava/java/net/natInetAddress.cc
index d8db576..68a0b41 100644
--- a/libjava/java/net/natInetAddress.cc
+++ b/libjava/java/net/natInetAddress.cc
@@ -66,6 +66,12 @@ java::net::InetAddress::aton (jstring)
return NULL;
}
+jint
+java::net::InetAddress::getFamily (jbyteArray bytes)
+{
+ return 0;
+}
+
JArray<java::net::InetAddress*> *
java::net::InetAddress::lookup (jstring, java::net::InetAddress *, jboolean)
{
@@ -127,6 +133,20 @@ java::net::InetAddress::aton (jstring host)
return result;
}
+jint
+java::net::InetAddress::getFamily (jbyteArray bytes)
+{
+ int len = bytes->length;
+ if (len == 4)
+ return AF_INET;
+#ifdef HAVE_INET6
+ else if (len == 16)
+ return AF_INET6;
+#endif /* HAVE_INET6 */
+ else
+ JvFail ("unrecognized size");
+}
+
JArray<java::net::InetAddress*> *
java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
@@ -196,7 +216,7 @@ java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
}
else
{
- jbyteArray bytes = iaddr->address;
+ jbyteArray bytes = iaddr->addr;
char *chars = (char*) elements (bytes);
int len = bytes->length;
int type;
@@ -204,13 +224,13 @@ java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
if (len == 4)
{
val = chars;
- type = AF_INET;
+ type = iaddr->family = AF_INET;
}
#ifdef HAVE_INET6
else if (len == 16)
{
val = (char *) &chars;
- type = AF_INET6;
+ type = iaddr->family = AF_INET6;
}
#endif /* HAVE_INET6 */
else
@@ -255,16 +275,16 @@ java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
java::lang::SecurityException *ex = checkConnect (host);
if (ex != NULL)
{
- if (iaddr == NULL || iaddr->address == NULL)
+ if (iaddr == NULL || iaddr->addr == NULL)
throw ex;
hptr = NULL;
}
}
if (hptr == NULL)
{
- if (iaddr != NULL && iaddr->address != NULL)
+ if (iaddr != NULL && iaddr->addr != NULL)
{
- iaddr->hostname = iaddr->getHostAddress();
+ iaddr->hostName = iaddr->getHostAddress();
return NULL;
}
else
@@ -296,13 +316,14 @@ java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
{
if (iaddrs[i] == NULL)
iaddrs[i] = new java::net::InetAddress (NULL, NULL);
- if (iaddrs[i]->hostname == NULL)
- iaddrs[i]->hostname = host;
- if (iaddrs[i]->address == NULL)
+ if (iaddrs[i]->hostName == NULL)
+ iaddrs[i]->hostName = host;
+ if (iaddrs[i]->addr == NULL)
{
char *bytes = hptr->h_addr_list[i];
- iaddrs[i]->address = JvNewByteArray (hptr->h_length);
- memcpy (elements (iaddrs[i]->address), bytes, hptr->h_length);
+ iaddrs[i]->addr = JvNewByteArray (hptr->h_length);
+ iaddrs[i]->family = getFamily (iaddrs[i]->addr);
+ memcpy (elements (iaddrs[i]->addr), bytes, hptr->h_length);
}
}
return result;