< prev index next >
src/java.base/share/classes/sun/nio/ch/Net.java
Print this page
*** 48,57 ****
--- 48,58 ----
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.util.Enumeration;
import sun.net.ext.ExtendedSocketOptions;
+ import sun.net.util.IPAddressUtil;
import sun.security.action.GetPropertyAction;
public class Net {
private Net() { }
*** 460,475 ****
static void bind(ProtocolFamily family, FileDescriptor fd,
InetAddress addr, int port) throws IOException
{
boolean preferIPv6 = isIPv6Available() &&
(family != StandardProtocolFamily.INET);
! bind0(fd, preferIPv6, exclusiveBind, addr, port);
}
private static native void bind0(FileDescriptor fd, boolean preferIPv6,
boolean useExclBind, InetAddress addr,
! int port)
throws IOException;
static native void listen(FileDescriptor fd, int backlog) throws IOException;
static int connect(FileDescriptor fd, InetAddress remote, int remotePort)
--- 461,478 ----
static void bind(ProtocolFamily family, FileDescriptor fd,
InetAddress addr, int port) throws IOException
{
boolean preferIPv6 = isIPv6Available() &&
(family != StandardProtocolFamily.INET);
! int scopeId = IPAddressUtil.bindingScopeId(addr);
! assert addr instanceof Inet4Address ? scopeId == -1 :true;
! bind0(fd, preferIPv6, exclusiveBind, addr, port, scopeId);
}
private static native void bind0(FileDescriptor fd, boolean preferIPv6,
boolean useExclBind, InetAddress addr,
! int port, int scopeId)
throws IOException;
static native void listen(FileDescriptor fd, int backlog) throws IOException;
static int connect(FileDescriptor fd, InetAddress remote, int remotePort)
< prev index next >