src/java.base/share/classes/sun/nio/ch/DatagramChannelImpl.java
changeset 55081 dd321e3596c0
parent 54754 193a8f1a4f3b
child 55375 96c7427456f9
child 58678 9cf78a70fa4f
--- a/src/java.base/share/classes/sun/nio/ch/DatagramChannelImpl.java	Wed May 29 08:21:33 2019 -0400
+++ b/src/java.base/share/classes/sun/nio/ch/DatagramChannelImpl.java	Wed May 29 13:58:05 2019 +0100
@@ -222,6 +222,8 @@
         Objects.requireNonNull(name);
         if (!supportedOptions().contains(name))
             throw new UnsupportedOperationException("'" + name + "' not supported");
+        if (!name.type().isInstance(value))
+            throw new IllegalArgumentException("Invalid value '" + value + "'");
 
         synchronized (stateLock) {
             ensureOpen();
@@ -236,8 +238,6 @@
             }
 
             if (name == StandardSocketOptions.IP_MULTICAST_IF) {
-                if (value == null)
-                    throw new IllegalArgumentException("Cannot set IP_MULTICAST_IF to 'null'");
                 NetworkInterface interf = (NetworkInterface)value;
                 if (family == StandardProtocolFamily.INET6) {
                     int index = interf.getIndex();