summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Koch <konqueror@gmx.de>2004-02-26 17:17:19 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2004-02-26 17:17:19 +0000
commit1287fd01cd145e59e673a289975aeda34415d75a (patch)
treee4f225d9ecb26e0658693a69299b14b6f20dca2d
parent2d5cc608927d438e3642ef857ee087e6499511e7 (diff)
downloadgcc-1287fd01cd145e59e673a289975aeda34415d75a.tar.gz
2004-02-26 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java (send): Check if target address is resolved. From-SVN: r78508
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/gnu/java/nio/DatagramChannelImpl.java9
2 files changed, 12 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 6042fb96d39..faa9f8d9664 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,10 @@
2004-02-26 Michael Koch <konqueror@gmx.de>
+ * gnu/java/nio/DatagramChannelImpl.java
+ (send): Check if target address is resolved.
+
+2004-02-26 Michael Koch <konqueror@gmx.de>
+
* Makefile.am: Generate and install headers for inner classes in
java.nio.channels.Pipe and gnu.java.nio.PipeImpl.
* Makefile.in: Regenerated.
diff --git a/libjava/gnu/java/nio/DatagramChannelImpl.java b/libjava/gnu/java/nio/DatagramChannelImpl.java
index baeac19deb6..68535e62769 100644
--- a/libjava/gnu/java/nio/DatagramChannelImpl.java
+++ b/libjava/gnu/java/nio/DatagramChannelImpl.java
@@ -1,5 +1,5 @@
/* DatagramChannelImpl.java --
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,10 +38,11 @@ exception statement from your version. */
package gnu.java.nio;
+import gnu.java.net.PlainDatagramSocketImpl;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
-import gnu.java.net.PlainDatagramSocketImpl;
+import java.net.InetSocketAddress;
import java.net.SocketAddress;
import java.net.SocketTimeoutException;
import java.nio.ByteBuffer;
@@ -256,6 +257,10 @@ public final class DatagramChannelImpl extends DatagramChannel
if (!isOpen())
throw new ClosedChannelException();
+ if (target instanceof InetSocketAddress
+ && ((InetSocketAddress) target).isUnresolved())
+ throw new IOException("Target address not resolved");
+
byte[] buffer;
int offset = 0;
int len = src.remaining();