billbarker 02/02/25 19:26:55 Modified: src/share/org/apache/tomcat/core Request.java Log: Fix NPE when using AccessLog without having a ROOT context defined. Now we won't attempt to authenticate if we haven't (successfully) done a ContextMap (in line with the servlet spec). Fix for bug #6604 Reported by: John Swapceinski [EMAIL PROTECTED] Revision Changes Path 1.113 +14 -11 jakarta-tomcat/src/share/org/apache/tomcat/core/Request.java Index: Request.java =================================================================== RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/Request.java,v retrieving revision 1.112 retrieving revision 1.113 diff -u -r1.112 -r1.113 --- Request.java 10 Sep 2001 06:43:01 -0000 1.112 +++ Request.java 26 Feb 2002 03:26:55 -0000 1.113 @@ -562,20 +562,23 @@ public String getRemoteUser() { if( notAuthenticated ) { - notAuthenticated=false; + Context ctx = getContext(); + if( ctx != null ) { + notAuthenticated=false; - // Call all authentication callbacks. If any of them is able to - // identify the user it will set the principal in req. - int status=0; - BaseInterceptor reqI[]= getContext().getContainer(). - getInterceptors(Container.H_authenticate); - for( int i=0; i< reqI.length; i++ ) { - status=reqI[i].authenticate( this, response ); - if ( status != BaseInterceptor.DECLINED ) { - break; + // Call all authentication callbacks. If any of them is able to + // identify the user it will set the principal in req. + int status=0; + BaseInterceptor reqI[]= ctx.getContainer(). + getInterceptors(Container.H_authenticate); + for( int i=0; i< reqI.length; i++ ) { + status=reqI[i].authenticate( this, response ); + if ( status != BaseInterceptor.DECLINED ) { + break; + } } + //context.log("Auth " + remoteUser ); } - //context.log("Auth " + remoteUser ); } return remoteUser; }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>