From cf617adc391612b9c236781c810a3e2fa1dc3122 Mon Sep 17 00:00:00 2001 From: David McKnight Date: Wed, 10 Oct 2007 21:13:45 +0000 Subject: [PATCH] [205986] attempt SSL before non-SSL for daemon connect --- .../eclipse/dstore/core/client/ClientConnection.java | 3 ++- .../dstore/DStoreConnectorService.java | 12 +++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/client/ClientConnection.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/client/ClientConnection.java index 7dd7702fdff..4ee2acf8669 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/client/ClientConnection.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/client/ClientConnection.java @@ -12,7 +12,7 @@ * Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley. * * Contributors: - * {Name} (company) - description of contribution. + * David McKnight (IBM) - [205986] daemon handshake needs a timeout *******************************************************************************/ package org.eclipse.dstore.core.client; @@ -739,6 +739,7 @@ public class ClientConnection SSLSocket lSocket = (SSLSocket) factory.createSocket(_host, daemonPort); _launchSocket = lSocket; + lSocket.setSoTimeout(10000); lSocket.startHandshake(); SSLSession session = lSocket.getSession(); diff --git a/rse/plugins/org.eclipse.rse.connectorservice.dstore/src/org/eclipse/rse/connectorservice/dstore/DStoreConnectorService.java b/rse/plugins/org.eclipse.rse.connectorservice.dstore/src/org/eclipse/rse/connectorservice/dstore/DStoreConnectorService.java index 834362d23fc..e197f62fbd9 100644 --- a/rse/plugins/org.eclipse.rse.connectorservice.dstore/src/org/eclipse/rse/connectorservice/dstore/DStoreConnectorService.java +++ b/rse/plugins/org.eclipse.rse.connectorservice.dstore/src/org/eclipse/rse/connectorservice/dstore/DStoreConnectorService.java @@ -17,6 +17,7 @@ * Martin Oberhuber (Wind River) - [186128][refactoring] Move IProgressMonitor last in public base classes * David McKnight (IBM) - [202822] need to enable spiriting on the server side * David McKnight (IBM) - [199565] taking out synchronize for internalConnect + * David McKnight (IBM) - [205986] attempt SSL before non-SSL for daemon connect ********************************************************************************/ package org.eclipse.rse.connectorservice.dstore; @@ -625,15 +626,16 @@ public class DStoreConnectorService extends StandardConnectorService implements daemonPort = Integer.parseInt(daemonPortStr); }*/ - // DKM - changed to use protected member so that others can override - //launchStatus = clientConnection.launchServer(info.getUserid(), info.getPassword(), daemonPort); - boolean usedSSL = false; + // 205986] FIRST TRY SSL, THEN NON-SECURE! + boolean usedSSL = true; + setSSLProperties(true); + launchStatus = launchServer(clientConnection, info, daemonPort, monitor); if (!launchStatus.isConnected() && !clientConnection.isKnownStatus(launchStatus.getMessage())) { - if (setSSLProperties(true)) + if (setSSLProperties(false)) { - usedSSL = true; + usedSSL = false; launchStatus = launchServer(clientConnection, info, daemonPort, monitor); } }