| | |
| | | import static org.opends.messages.ProtocolMessages.*; |
| | | import static org.opends.server.util.StaticUtils.*; |
| | | |
| | | import java.io.Closeable; |
| | | import java.io.IOException; |
| | | import java.net.InetAddress; |
| | | import java.net.UnknownHostException; |
| | |
| | | */ |
| | | private OpendsRmiServerSocketFactory rmiSsf; |
| | | |
| | | /** The socket factory owned by the RMI connector, separate from the registry's. */ |
| | | private Closeable connectorSocketFactory; |
| | | |
| | | /** |
| | | * The RMI protocol version used by this connector. |
| | | */ |
| | |
| | | SSLSocketFactory ssf = ctx.getSocketFactory(); |
| | | |
| | | // set the Server socket factory in the JMX map |
| | | rmiServerSockeyFactory = new DirectoryRMIServerSocketFactory( |
| | | DirectoryRMIServerSocketFactory factory = new DirectoryRMIServerSocketFactory( |
| | | ssf, false, jmxConnectionHandler.getListenAddress()); |
| | | connectorSocketFactory = factory; |
| | | rmiServerSockeyFactory = factory; |
| | | env.put( |
| | | "jmx.remote.rmi.server.socket.factory", |
| | | rmiServerSockeyFactory); |
| | |
| | | { |
| | | logger.trace("UNSECURE CONNECTION"); |
| | | } |
| | | rmiServerSockeyFactory = new OpendsRmiServerSocketFactory( |
| | | OpendsRmiServerSocketFactory factory = new OpendsRmiServerSocketFactory( |
| | | jmxConnectionHandler.getListenAddress()); |
| | | connectorSocketFactory = factory; |
| | | rmiServerSockeyFactory = factory; |
| | | } |
| | | |
| | | // specify the rmi JMX authenticator to be used |
| | |
| | | jmxRmiConnectorNoClientCertificate = null; |
| | | jmxRmiConnectorClientCertificate = null; |
| | | |
| | | // RMI keeps anonymous-port listeners open even after the last object is unexported. |
| | | // Close our socket explicitly, also when stop() failed or the registry is being kept. |
| | | close(connectorSocketFactory); |
| | | connectorSocketFactory = null; |
| | | |
| | | // Unregister connectors and stop them. |
| | | try |
| | | { |