Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
JDK 17 jdk.management.agent.jmod - Management Agent Module
JDK 17 jdk.management.agent.jmod is the JMOD file for JDK 17 Management Agent module.
JDK 17 Management Agent module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\jdk.management.agent.jmod.
JDK 17 Management Agent module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Management Agent module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\jdk.management.agent.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/management/jmxremote/LocalRMIServerSocketFactory.java
/*
* Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package sun.management.jmxremote;
import java.io.IOException;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketException;
import java.rmi.server.RMIServerSocketFactory;
import java.util.Enumeration;
/**
* This RMI server socket factory creates server sockets that
* will only accept connection requests from clients running
* on the host where the RMI remote objects have been exported.
*/
public final class LocalRMIServerSocketFactory implements RMIServerSocketFactory {
/**
* Creates a server socket that only accepts connection requests from
* clients running on the host where the RMI remote objects have been
* exported.
*/
public ServerSocket createServerSocket(int port) throws IOException {
return new ServerSocket(port) {
@Override
public Socket accept() throws IOException {
final Socket socket = super.accept();
final InetAddress remoteAddr = socket.getInetAddress();
final String msg = "The server sockets created using the " +
"LocalRMIServerSocketFactory only accept connections " +
"from clients running on the host where the RMI " +
"remote objects have been exported.";
if (remoteAddr == null) {
// Though unlikeky, the socket could be already
// closed... Send a more detailed message in
// this case. Also avoid throwing NullPointerExceptiion
//
String details = "";
if (socket.isClosed()) {
details = " Socket is closed.";
} else if (!socket.isConnected()) {
details = " Socket is not connected";
}
try {
socket.close();
} catch (Exception ok) {
// ok - this is just cleanup before throwing detailed
// exception.
}
throw new IOException(msg +
" Couldn't determine client address." +
details);
} else if (remoteAddr.isLoopbackAddress()) {
// local address: accept the connection.
return socket;
}
// Retrieve all the network interfaces on this host.
Enumeration<NetworkInterface> nis;
try {
nis = NetworkInterface.getNetworkInterfaces();
} catch (SocketException e) {
try {
socket.close();
} catch (IOException ioe) {
// Ignore...
}
throw new IOException(msg, e);
}
// Walk through the network interfaces to see
// if any of them matches the client's address.
// If true, then the client's address is local.
while (nis.hasMoreElements()) {
NetworkInterface ni = nis.nextElement();
Enumeration<InetAddress> addrs = ni.getInetAddresses();
while (addrs.hasMoreElements()) {
InetAddress localAddr = addrs.nextElement();
if (localAddr.equals(remoteAddr)) {
return socket;
}
}
}
// The client's address is remote so refuse the connection.
try {
socket.close();
} catch (IOException ioe) {
// Ignore...
}
throw new IOException(msg);
}
};
}
/**
* Two LocalRMIServerSocketFactory objects
* are equal if they are of the same type.
*/
@Override
public boolean equals(Object obj) {
return (obj instanceof LocalRMIServerSocketFactory);
}
/**
* Returns a hash code value for this LocalRMIServerSocketFactory.
*/
@Override
public int hashCode() {
return getClass().hashCode();
}
}
⏎ sun/management/jmxremote/LocalRMIServerSocketFactory.java
Or download all of them as a single archive file:
File name: jdk.management.agent-17.0.5-src.zip File size: 41948 bytes Release date: 2022-09-13 Download
⇒ JDK 17 jdk.management.jfr.jmod - Management JFR Module
2023-07-29, ∼5702🔥, 0💬
Popular Posts:
How to run "jarsigner" command from JDK tools.jar file? "jarsigner" command allows you to digitally ...
The Web Services Description Language for Java Toolkit (WSDL4J), Release 1.6.2, allows the creation,...
What Is poi-ooxml-5.2.3.jar? poi-ooxml-5.2.3.jar is one of the JAR files for Apache POI 5.2.3, which...
JAX-RPC is an API for building Web services and clients that used remote procedure calls (RPC) and X...
JDK 11 jdk.dynalink.jmod is the JMOD file for JDK 11 Dynamic Linking module. JDK 11 Dynamic Linking ...