From 18aa9a3753943e4a90351487521dbae76f0c58f1 Mon Sep 17 00:00:00 2001
From: brinn <brinn>
Date: Thu, 24 Jan 2013 10:08:13 +0000
Subject: [PATCH] Fix interpretation of LDAP timeout.

SVN: 28180
---
 .../ldap/LDAPDirectoryConfiguration.java             | 12 ++++++++++--
 .../cisd/authentication/ldap/LDAPPrincipalQuery.java |  4 ++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPDirectoryConfiguration.java b/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPDirectoryConfiguration.java
index 45730730a99..c3aa1933144 100644
--- a/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPDirectoryConfiguration.java
+++ b/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPDirectoryConfiguration.java
@@ -328,13 +328,21 @@ public final class LDAPDirectoryConfiguration
     }
 
     /**
-     * The read timeout (in ms).
-     * Default value: <code>-1</code> (which means: wait forever)
+     * The read timeout (in s).
+     * Default value: <code>10s</code>
      */
     public String getTimeoutStr()
     {
         return Long.toString(timeout / 1000);
     }
+    
+    /**
+     * Returns the timeout (in ms)
+     */
+    public long getTimeout()
+    {
+        return timeout;
+    }
 
     /**
      * Set the read timeout as String in a format understood by
diff --git a/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPPrincipalQuery.java b/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPPrincipalQuery.java
index 636e071d35c..5bb0a37a35a 100644
--- a/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPPrincipalQuery.java
+++ b/authentication/source/java/ch/systemsx/cisd/authentication/ldap/LDAPPrincipalQuery.java
@@ -399,8 +399,8 @@ public final class LDAPPrincipalQuery implements ISelfTestable
         env.put(Context.REFERRAL, config.getReferral());
         env.put(Context.SECURITY_PRINCIPAL, dn);
         env.put(Context.SECURITY_CREDENTIALS, password);
-        env.put(LDAP_CONTEXT_READ_TIMEOUT, config.getTimeoutStr());
-        env.put(LDAP_CONTEXT_CONNECT_TIMEOUT, config.getTimeoutStr());
+        env.put(LDAP_CONTEXT_READ_TIMEOUT, Long.toString(config.getTimeout()));
+        env.put(LDAP_CONTEXT_CONNECT_TIMEOUT, Long.toString(config.getTimeout()));
         if (operationLog.isDebugEnabled())
         {
             operationLog.debug(String.format("Try to login to %s with dn=%s",
-- 
GitLab