remm        2004/01/10 12:39:50

  Modified:    catalina/src/share/org/apache/coyote/tomcat5
                        CoyoteAdapter.java CoyoteConnector.java
                        mbeans-descriptors.xml
  Log:
  - Add an "allowTrace" flag on the connector. Trace is disabled by default.
  
  Revision  Changes    Path
  1.16      +12 -4     
jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/CoyoteAdapter.java
  
  Index: CoyoteAdapter.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/CoyoteAdapter.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- CoyoteAdapter.java        14 Dec 2003 22:13:12 -0000      1.15
  +++ CoyoteAdapter.java        10 Jan 2004 20:39:50 -0000      1.16
  @@ -246,6 +246,14 @@
               request.setSecure(connector.getSecure());
           }
   
  +        // Filter trace method
  +        if (!connector.getAllowTrace() 
  +            && req.method().equalsIgnoreCase("TRACE")) {
  +            res.setStatus(403);
  +            res.setMessage("TRACE method is not allowed");
  +            return false;
  +        }
  +
           // FIXME: the code below doesnt belongs to here, 
           // this is only have sense 
           // in Http11, not in ajp13..
  
  
  
  1.35      +29 -1     
jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/CoyoteConnector.java
  
  Index: CoyoteConnector.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/CoyoteConnector.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- CoyoteConnector.java      10 Dec 2003 22:26:28 -0000      1.34
  +++ CoyoteConnector.java      10 Jan 2004 20:39:50 -0000      1.35
  @@ -134,6 +134,12 @@
   
   
       /**
  +     * Do we allow TRACE ?
  +     */
  +    private boolean allowTrace = false;
  +
  +
  +    /**
        * The input buffer size we should create on input streams.
        */
       private int bufferSize = 2048;
  @@ -589,6 +595,28 @@
   
       }
   
  +
  +    /**
  +     * True if the TRACE method is allowed.  Default value is "false".
  +     */
  +    public boolean getAllowTrace() {
  +
  +        return (this.allowTrace);
  +
  +    }
  +
  +
  +    /**
  +     * Set the allowTrace flag, to disable or enable the TRACE HTTP method.
  +     *
  +     * @param allowTrace The new allowTrace flag
  +     */
  +    public void setAllowTrace(boolean allowTrace) {
  +
  +        this.allowTrace = allowTrace;
  +        setProperty("allowTrace", String.valueOf(allowTrace));
  +
  +    }
   
       /**
        * Is this connector available for processing requests?
  
  
  
  1.12      +4 -0      
jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/mbeans-descriptors.xml
  
  Index: mbeans-descriptors.xml
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/coyote/tomcat5/mbeans-descriptors.xml,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- mbeans-descriptors.xml    12 Dec 2003 02:52:07 -0000      1.11
  +++ mbeans-descriptors.xml    10 Jan 2004 20:39:50 -0000      1.12
  @@ -20,6 +20,10 @@
             description="The certificate encoding algorithm to be used"
                    type="java.lang.String"/>
   
  +    <attribute   name="allowTrace"
  +          description="Allow disabling TRACE method"
  +                 type="boolean"/>
  +
       <attribute   name="bufferSize"
             description="The input buffer size we should create on input streams"
                    type="int"/>
  
  
  

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

Reply via email to