[Jboss-cvs] JBossAS SVN: r56225 - branches/JBoss_4_0_3SP1-JBAS-3530/security/src/main/org/jboss/security/auth/spi

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Aug 24 14:07:43 EDT 2006


Author: anil.saldhana at jboss.com
Date: 2006-08-24 14:07:42 -0400 (Thu, 24 Aug 2006)
New Revision: 56225

Modified:
   branches/JBoss_4_0_3SP1-JBAS-3530/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java
Log:
JBAS-3530: remove the leak of LdapContext via a finally block

Modified: branches/JBoss_4_0_3SP1-JBAS-3530/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java
===================================================================
--- branches/JBoss_4_0_3SP1-JBAS-3530/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java	2006-08-24 17:56:20 UTC (rev 56224)
+++ branches/JBoss_4_0_3SP1-JBAS-3530/security/src/main/org/jboss/security/auth/spi/LdapExtLoginModule.java	2006-08-24 18:07:42 UTC (rev 56225)
@@ -314,17 +314,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