Author: violetagg Date: Fri Nov 14 14:48:25 2014 New Revision: 1639653 URL: http://svn.apache.org/r1639653 Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57208 Fixed NPE in JNDIRealm when "getUserBySearch" is performed, and no results are found. Based on a patch made by Jason McIntosh.
Modified: tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java Modified: tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java?rev=1639653&r1=1639652&r2=1639653&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java (original) +++ tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java Fri Nov 14 14:48:25 2014 @@ -1276,11 +1276,17 @@ public class JNDIRealm extends RealmBase // Use pattern or search for user entry if (userPatternFormatArray != null && curUserPattern >= 0) { user = getUserByPattern(context, username, credentials, attrIds, curUserPattern); + if (containerLog.isDebugEnabled()) { + containerLog.debug("Found user by pattern [" + user + "]"); + } } else { user = getUserBySearch(context, username, attrIds); + if (containerLog.isDebugEnabled()) { + containerLog.debug("Found user by search [" + user + "]"); + } } - if (userPassword == null && credentials != null) { + if (userPassword == null && credentials != null && user != null) { // The password is available. Insert it since it may be required for // role searches. return new User(user.getUserName(), user.getDN(), credentials, --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org