< prev index next >

src/java.base/share/classes/java/net/MulticastSocket.java

Print this page

        

*** 91,115 **** private boolean interfaceSet; /** * Create a multicast socket. * ! * <p>If there is a security manager, ! * its {@code checkListen} method is first called ! * with 0 as its argument to ensure the operation is allowed. ! * This could result in a SecurityException. * <p> * When the socket is created the ! * {@link DatagramSocket#setReuseAddress(boolean)} method is ! * called to enable the SO_REUSEADDR socket option. When ! * {@link StandardSocketOptions#SO_REUSEPORT SO_REUSEPORT} is ! * supported then ! * {@link DatagramSocketImpl#setOption(SocketOption, Object)} ! * is called to enable the socket option. * ! * @exception IOException if an I/O exception occurs ! * while creating the MulticastSocket * @exception SecurityException if a security manager exists and its * {@code checkListen} method doesn't allow the operation. * @see SecurityManager#checkListen * @see java.net.DatagramSocket#setReuseAddress(boolean) * @see java.net.DatagramSocketImpl#setOption(SocketOption, Object) --- 91,111 ---- private boolean interfaceSet; /** * Create a multicast socket. * ! * <p> ! * If there is a security manager, its {@code checkListen} method is first ! * called with 0 as its argument to ensure the operation is allowed. This ! * could result in a SecurityException. * <p> * When the socket is created the ! * {@link DatagramSocket#setReuseAddress(boolean)} method is called to ! * enable the SO_REUSEADDR socket option. * ! * @exception IOException if an I/O exception occurs while creating the ! * MulticastSocket * @exception SecurityException if a security manager exists and its * {@code checkListen} method doesn't allow the operation. * @see SecurityManager#checkListen * @see java.net.DatagramSocket#setReuseAddress(boolean) * @see java.net.DatagramSocketImpl#setOption(SocketOption, Object)
*** 172,195 **** super((SocketAddress) null); // Enable SO_REUSEADDR before binding setReuseAddress(true); - // Enable SO_REUSEPORT if supported before binding - if (supportedOptions().contains(StandardSocketOptions.SO_REUSEPORT)) { - this.setOption(StandardSocketOptions.SO_REUSEPORT, true); - } - if (bindaddr != null) { try { bind(bindaddr); } finally { ! if (!isBound()) close(); } } } /** * The lock on the socket's TTL. This is for set/getTTL and * send(packet,ttl). */ --- 168,187 ---- super((SocketAddress) null); // Enable SO_REUSEADDR before binding setReuseAddress(true); if (bindaddr != null) { try { bind(bindaddr); } finally { ! if (!isBound()) { close(); } } } + } /** * The lock on the socket's TTL. This is for set/getTTL and * send(packet,ttl). */
< prev index next >