costin      02/02/06 10:26:50

  Modified:    jk/java/org/apache/ajp Ajp13.java RequestHandler.java
  Log:
  Added support for the ajp13 secret. It shouldn't affect anything in the
  normal use-case - it just recognizes the new request attributes if it's
  sent by apache.
  
  In addition, any attributes with a single string value ( like most
  attributes are ) that is not known will be ignored, for better
  backward compatibility.
  
  Note that we don't do anything about the secret except recognizing it.
  
  A config option in the connector will use it.
  
  Revision  Changes    Path
  1.23      +9 -0      jakarta-tomcat-connectors/jk/java/org/apache/ajp/Ajp13.java
  
  Index: Ajp13.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/ajp/Ajp13.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- Ajp13.java        19 Jan 2002 03:23:17 -0000      1.22
  +++ Ajp13.java        6 Feb 2002 18:26:50 -0000       1.23
  @@ -142,6 +142,7 @@
       // If no password is set, use only Ajp13 messaging
       boolean backwardCompat=true;
       boolean logged=false;
  +    String secret=null;
       
       public Ajp13() {
        super();
  @@ -207,6 +208,14 @@
           logged=b;
       }
   
  +    public void setSecret( String s ) {
  +        secret=s;
  +    }
  +
  +    public String getSecret() {
  +        return secret;
  +    }
  +    
       // -------------------- Handlers registry --------------------
   
       static final int MAX_HANDLERS=32;
  
  
  
  1.11      +16 -1     
jakarta-tomcat-connectors/jk/java/org/apache/ajp/RequestHandler.java
  
  Index: RequestHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/ajp/RequestHandler.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- RequestHandler.java       31 Jan 2002 17:18:51 -0000      1.10
  +++ RequestHandler.java       6 Feb 2002 18:26:50 -0000       1.11
  @@ -124,6 +124,7 @@
       public static final byte SC_A_SSL_CIPHER    = 8;
       public static final byte SC_A_SSL_SESSION   = 9;
       public static final byte SC_A_SSL_KEYSIZE   = 11;
  +    public static final byte SC_A_SECRET        = 12;
   
       // Used for attributes which are not in the list above
       public static final byte SC_A_REQ_ATTRIBUTE = 10; 
  @@ -375,6 +376,17 @@
                                 msg.getString());
                   break;
                
  +         case SC_A_SECRET   :
  +                // If a request has a secret attribute, set it on
  +                // channel - it'll be visible to the caller ( Interceptor,
  +                // Connector ) and it can check it against its settings before
  +                // trusting us.
  +                String secret=msg.getString();
  +                if(secret!=null) {
  +                    ch.setSecret( secret );
  +                }
  +                break;
  +             
            case SC_A_SSL_SESSION  :
                isSSL = true;
                req.setAttribute("javax.servlet.request.ssl_session",
  @@ -391,7 +403,10 @@
                                 Integer.toString(msg.getInt()));
                return 200;
            default:
  -             return 500; // Error
  +                // Ignore. Assume a single-string value - we shouldn't
  +                // allow anything else.
  +                msg.getString();
  +                break;
            }
           }
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to