summaryrefslogtreecommitdiffstats
path: root/luni/src/main/java/java/util/logging/SocketHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'luni/src/main/java/java/util/logging/SocketHandler.java')
-rw-r--r--luni/src/main/java/java/util/logging/SocketHandler.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/luni/src/main/java/java/util/logging/SocketHandler.java b/luni/src/main/java/java/util/logging/SocketHandler.java
index 48bfc0e..5de847a 100644
--- a/luni/src/main/java/java/util/logging/SocketHandler.java
+++ b/luni/src/main/java/java/util/logging/SocketHandler.java
@@ -17,6 +17,7 @@
package java.util.logging;
+import libcore.net.NetworkSecurityPolicy;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.net.Socket;
@@ -106,14 +107,21 @@ public class SocketHandler extends StreamHandler {
throw new IllegalArgumentException("host == null || host.isEmpty()");
}
// check the validity of the port number
- int p = 0;
+ int p;
try {
p = Integer.parsePositiveInt(port);
+ // Must be >= 0 to get this far. 0 is invalid too.
+ if (p == 0) {
+ throw new IllegalArgumentException("Illegal port argument " + port);
+ }
} catch (NumberFormatException e) {
throw new IllegalArgumentException("Illegal port argument " + port);
}
// establish the network connection
try {
+ if (!NetworkSecurityPolicy.isCleartextTrafficPermitted()) {
+ throw new IOException("Cleartext traffic not permitted");
+ }
this.socket = new Socket(host, p);
} catch (IOException e) {
getErrorManager().error("Failed to establish the network connection", e,