[Jboss-cvs] JBossAS SVN: r55439 - branches/Branch_4_0/security/src/main/org/jboss/security/auth/spi

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Aug 9 09:12:07 EDT 2006


Author: scott.stark at jboss.org
Date: 2006-08-09 09:12:05 -0400 (Wed, 09 Aug 2006)
New Revision: 55439

Modified:
   branches/Branch_4_0/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java
Log:
JBAS-3448, make sure the ldap ctx created is closed when failures occur

Modified: branches/Branch_4_0/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java
===================================================================
--- branches/Branch_4_0/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java	2006-08-09 13:01:49 UTC (rev 55438)
+++ branches/Branch_4_0/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java	2006-08-09 13:12:05 UTC (rev 55439)
@@ -328,17 +328,25 @@
          searchScope = SearchControls.SUBTREE_SCOPE;
 
       // Get the admin context for searching
-      InitialLdapContext ctx = constructInitialLdapContext(bindDN, bindCredential);
-      // Validate the user by binding against the userDN
-      String userDN = bindDNAuthentication(ctx, username, credential, baseDN, baseFilter);
+      InitialLdapContext ctx = null;
+      try
+      {
+         ctx = constructInitialLdapContext(bindDN, bindCredential);
+         // Validate the user by binding against the userDN
+         String userDN = bindDNAuthentication(ctx, username, credential, baseDN, baseFilter);
 
-      // Query for roles matching the role filter
-      SearchControls constraints = new SearchControls();
-      constraints.setSearchScope(searchScope);
-      constraints.setReturningAttributes(new String[0]);
-      constraints.setTimeLimit(searchTimeLimit);
-      rolesSearch(ctx, constraints, username, userDN, recursion, 0);
-      ctx.close();
+         // Query for roles matching the role filter
+         SearchControls constraints = new SearchControls();
+         constraints.setSearchScope(searchScope);
+         constraints.setReturningAttributes(new String[0]);
+         constraints.setTimeLimit(searchTimeLimit);
+         rolesSearch(ctx, constraints, username, userDN, recursion, 0);
+      }
+      finally
+      {
+         if( ctx != null )
+            ctx.close();
+      }
       return true;
    }
 




More information about the jboss-cvs-commits mailing list