X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-ssh%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fssh%2Fosgi%2FNetconfSSHActivator.java;h=23c92e86488b06d31ae9d15bd4af91eaea06c987;hb=1915e780a3e1e1746c0c5071a7bda8aad57d9d36;hp=b871d19db8f062d0dbca93cc18ce6c3c6e09ba2d;hpb=96171122685765f15a6faf0cc6f919221224870c;p=controller.git diff --git a/opendaylight/netconf/netconf-ssh/src/main/java/org/opendaylight/controller/netconf/ssh/osgi/NetconfSSHActivator.java b/opendaylight/netconf/netconf-ssh/src/main/java/org/opendaylight/controller/netconf/ssh/osgi/NetconfSSHActivator.java index b871d19db8..23c92e8648 100644 --- a/opendaylight/netconf/netconf-ssh/src/main/java/org/opendaylight/controller/netconf/ssh/osgi/NetconfSSHActivator.java +++ b/opendaylight/netconf/netconf-ssh/src/main/java/org/opendaylight/controller/netconf/ssh/osgi/NetconfSSHActivator.java @@ -23,6 +23,7 @@ import org.apache.commons.io.FilenameUtils; import org.apache.sshd.common.util.ThreadUtils; import org.apache.sshd.server.keyprovider.PEMGeneratorHostKeyProvider; import org.opendaylight.controller.netconf.ssh.SshProxyServer; +import org.opendaylight.controller.netconf.ssh.SshProxyServerConfigurationBuilder; import org.opendaylight.controller.netconf.util.osgi.NetconfConfigUtil; import org.opendaylight.controller.netconf.util.osgi.NetconfConfigUtil.InfixProp; import org.osgi.framework.BundleActivator; @@ -31,11 +32,12 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class NetconfSSHActivator implements BundleActivator { - private static final Logger logger = LoggerFactory.getLogger(NetconfSSHActivator.class); + private static final Logger LOG = LoggerFactory.getLogger(NetconfSSHActivator.class); private static final java.lang.String ALGORITHM = "RSA"; private static final int KEY_SIZE = 4096; public static final int POOL_SIZE = 8; + private static final int DEFAULT_IDLE_TIMEOUT = Integer.MAX_VALUE; private ScheduledExecutorService minaTimerExecutor; private NioEventLoopGroup clientGroup; @@ -84,12 +86,12 @@ public class NetconfSSHActivator implements BundleActivator { final Optional maybeSshSocketAddress = NetconfConfigUtil.extractNetconfServerAddress(bundleContext, InfixProp.ssh); if (maybeSshSocketAddress.isPresent() == false) { - logger.trace("SSH bridge not configured"); + LOG.trace("SSH bridge not configured"); return null; } final InetSocketAddress sshSocketAddress = maybeSshSocketAddress.get(); - logger.trace("Starting netconf SSH bridge at {}", sshSocketAddress); + LOG.trace("Starting netconf SSH bridge at {}", sshSocketAddress); final LocalAddress localAddress = NetconfConfigUtil.getNetconfLocalAddress(); @@ -100,7 +102,14 @@ public class NetconfSSHActivator implements BundleActivator { NetconfConfigUtil.getPrivateKeyKey()); final SshProxyServer sshProxyServer = new SshProxyServer(minaTimerExecutor, clientGroup, nioExecutor); - sshProxyServer.bind(sshSocketAddress, localAddress, authProviderTracker, new PEMGeneratorHostKeyProvider(path, ALGORITHM, KEY_SIZE)); + sshProxyServer.bind( + new SshProxyServerConfigurationBuilder() + .setBindingAddress(sshSocketAddress) + .setLocalAddress(localAddress) + .setAuthenticator(authProviderTracker) + .setKeyPairProvider(new PEMGeneratorHostKeyProvider(path, ALGORITHM, KEY_SIZE)) + .setIdleTimeout(DEFAULT_IDLE_TIMEOUT) + .createSshProxyServerConfiguration()); return sshProxyServer; }