You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2001/09/10 19:52:45 UTC

cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm MemoryRealm.java

remm        01/09/10 10:52:45

  Modified:    catalina/src/share/org/apache/catalina/realm
                        MemoryRealm.java
  Log:
  - Fix for bug 3524 (NPE in memory realm).
  
  Revision  Changes    Path
  1.10      +15 -10    jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java
  
  Index: MemoryRealm.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- MemoryRealm.java	2001/09/07 20:45:12	1.9
  +++ MemoryRealm.java	2001/09/10 17:52:45	1.10
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v 1.9 2001/09/07 20:45:12 ccain Exp $
  - * $Revision: 1.9 $
  - * $Date: 2001/09/07 20:45:12 $
  + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/realm/MemoryRealm.java,v 1.10 2001/09/10 17:52:45 remm Exp $
  + * $Revision: 1.10 $
  + * $Date: 2001/09/10 17:52:45 $
    *
    * ====================================================================
    *
  @@ -95,7 +95,7 @@
    * synchronization is performed around accesses to the principals collection.
    *
    * @author Craig R. McClanahan
  - * @version $Revision: 1.9 $ $Date: 2001/09/07 20:45:12 $
  + * @version $Revision: 1.10 $ $Date: 2001/09/10 17:52:45 $
    */
   
   public final class MemoryRealm
  @@ -206,13 +206,18 @@
               (GenericPrincipal) principals.get(username);
   
           boolean validated = false;
  -        if (hasMessageDigest()) {
  -            // Hex hashes should be compared care-insensitive
  -            validated = (digest(credentials).equalsIgnoreCase(principal.getPassword()));
  -        } else
  -            validated = (digest(credentials).equals(principal.getPassword()));
  +        if (principal != null) {
  +            if (hasMessageDigest()) {
  +                // Hex hashes should be compared care-insensitive
  +                validated = (digest(credentials)
  +                             .equalsIgnoreCase(principal.getPassword()));
  +            } else {
  +                validated = 
  +                    (digest(credentials).equals(principal.getPassword()));
  +            }
  +        }
   
  -        if ((principal != null) && validated) {
  +        if (validated) {
               if (debug >= 2)
                   log(sm.getString("memoryRealm.authenticateSuccess", username));
               return (principal);