Author: markt
Date: Thu Aug  4 13:24:20 2016
New Revision: 1755180

URL: http://svn.apache.org/viewvc?rev=1755180&view=rev
Log:
Refactoring towards a fix for BZ 59823
Move the authenticate() implementation to the base class so JASPIC
processing can be included

Modified:
    tomcat/trunk/java/org/apache/catalina/authenticator/AuthenticatorBase.java
    tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java
    tomcat/trunk/java/org/apache/catalina/authenticator/DigestAuthenticator.java
    tomcat/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
    
tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
    tomcat/trunk/java/org/apache/catalina/authenticator/SSLAuthenticator.java
    tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/AuthenticatorBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/AuthenticatorBase.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/authenticator/AuthenticatorBase.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/authenticator/AuthenticatorBase.java 
Thu Aug  4 13:24:20 2016
@@ -641,9 +641,34 @@ public abstract class AuthenticatorBase
         }
     }
 
+
+    @Override
+    public boolean authenticate(Request request, HttpServletResponse response) 
throws IOException {
+        return doAuthenticate(request, response);
+    }
+
+
     // ------------------------------------------------------ Protected Methods
 
     /**
+     * Provided for sub-classes to implement their specific authentication
+     * mechanism.
+     *
+     * @param request The request that triggered the authentication
+     * @param resonse The response associated with the request
+     *
+     * @return {@code true} if the the user was authenticated, otherwise {@code
+     *         false}, in which case an authentication challenge will have been
+     *         written to the response
+     *
+     * @throws IOException If an I/O problem occurred during the authentication
+     *                     process
+     */
+    protected abstract boolean doAuthenticate(Request request, 
HttpServletResponse resonse)
+            throws IOException;
+
+
+    /**
      * Look for the X509 certificate chain in the Request under the key
      * <code>javax.servlet.request.X509Certificate</code>. If not found, 
trigger
      * extracting the certificate chain from the Coyote request.

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -48,19 +48,8 @@ public class BasicAuthenticator extends
 
     // --------------------------------------------------------- Public Methods
 
-    /**
-     * Authenticate the user making this request, based on the specified
-     * login configuration.  Return <code>true</code> if any specified
-     * constraint has been satisfied, or <code>false</code> if we have
-     * created a response challenge already.
-     *
-     * @param request Request we are processing
-     * @param response Response we are creating
-     *
-     * @exception IOException if an input/output error occurs
-     */
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
             throws IOException {
 
         if (checkForCachedAuthentication(request, response, true)) {

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/DigestAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/DigestAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/authenticator/DigestAuthenticator.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/authenticator/DigestAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -194,7 +194,7 @@ public class DigestAuthenticator extends
      * @exception IOException if an input/output error occurs
      */
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
             throws IOException {
 
         // NOTE: We don't try to reauthenticate using any existing SSO session,

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -130,7 +130,7 @@ public class FormAuthenticator
      * @exception IOException if an input/output error occurs
      */
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
             throws IOException {
 
         if (checkForCachedAuthentication(request, response, true)) {

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -74,7 +74,7 @@ public final class NonLoginAuthenticator
      * @exception IOException if an input/output error occurs
      */
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
         throws IOException {
 
         // Don't try and use SSO to authenticate since there is no auth

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/SSLAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SSLAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/authenticator/SSLAuthenticator.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/authenticator/SSLAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -46,7 +46,7 @@ public class SSLAuthenticator extends Au
      * @exception IOException if an input/output error occurs
      */
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
             throws IOException {
 
         // NOTE: We don't try to reauthenticate using any existing SSO session,

Modified: 
tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1755180&r1=1755179&r2=1755180&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java 
Thu Aug  4 13:24:20 2016
@@ -134,7 +134,7 @@ public class SpnegoAuthenticator extends
 
 
     @Override
-    public boolean authenticate(Request request, HttpServletResponse response)
+    protected boolean doAuthenticate(Request request, HttpServletResponse 
response)
             throws IOException {
 
         if (checkForCachedAuthentication(request, response, true)) {



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to