remm        2005/07/29 03:23:56

  Modified:    jk/java/org/apache/coyote/ajp AjpAprProcessor.java
                        LocalStrings.properties AjpMessage.java
               http11/src/java/org/apache/coyote/http11
                        LocalStrings.properties Http11Processor.java
                        Http11AprProcessor.java
               util/java/org/apache/tomcat/util/net AprEndpoint.java
  Log:
  - Internationalization for the processor classes.
  - Code cleanups.
  - No functional changes.
  
  Revision  Changes    Path
  1.14      +18 -24    
jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/AjpAprProcessor.java
  
  Index: AjpAprProcessor.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/AjpAprProcessor.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- AjpAprProcessor.java      28 Jul 2005 13:48:47 -0000      1.13
  +++ AjpAprProcessor.java      29 Jul 2005 10:23:55 -0000      1.14
  @@ -42,7 +42,6 @@
   import org.apache.tomcat.util.http.HttpMessages;
   import org.apache.tomcat.util.http.MimeHeaders;
   import org.apache.tomcat.util.net.AprEndpoint;
  -import org.apache.tomcat.util.net.SSLSupport;
   import org.apache.tomcat.util.res.StringManager;
   import org.apache.tomcat.util.threads.ThreadWithAttributes;
   
  @@ -67,7 +66,6 @@
       protected static org.apache.commons.logging.Log log
           = 
org.apache.commons.logging.LogFactory.getLog(AjpAprProcessor.class);
   
  -
       /**
        * The string manager for this package.
        */
  @@ -439,7 +437,7 @@
                   error = true;
                   break;
               } catch (Throwable t) {
  -                log.debug("Error parsing HTTP request", t);
  +                log.debug(sm.getString("ajpprocessor.header.error"), t);
                   // 400 - Bad Request
                   response.setStatus(400);
                   error = true;
  @@ -452,7 +450,7 @@
                   prepareRequest();
                   thrA.setParam(endpoint, request.requestURI());
               } catch (Throwable t) {
  -                log.debug("Error preparing request", t);
  +                log.debug(sm.getString("ajpprocessor.request.prepare"), t);
                   // 400 - Internal Server Error
                   response.setStatus(400);
                   error = true;
  @@ -467,7 +465,7 @@
                   } catch (InterruptedIOException e) {
                       error = true;
                   } catch (Throwable t) {
  -                    log.error("Error processing request", t);
  +                    log.error(sm.getString("ajpprocessor.request.process"), 
t);
                       // 500 - Internal Server Error
                       response.setStatus(500);
                       error = true;
  @@ -616,11 +614,11 @@
                   jsseCerts =  new X509Certificate[1];
                   jsseCerts[0] = cert;
               } catch(java.security.cert.CertificateException e) {
  -                log.error("Certificate convertion failed" , e );
  +                log.error(sm.getString("ajpprocessor.certs.fail"), e);
                   return;
               }
               
  -            request.setAttribute("javax.servlet.request.X509Certificate", 
jsseCerts);
  +            request.setAttribute(AprEndpoint.CERTIFICATE_KEY, jsseCerts);
               
           } else if (actionCode == ActionCode.ACTION_REQ_HOST_ADDR_ATTRIBUTE) {
   
  @@ -630,7 +628,7 @@
                       long sa = Address.get(Socket.APR_REMOTE, socket);
                       remoteAddr = Address.getip(sa);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
               request.remoteAddr().setString(remoteAddr);
  @@ -643,7 +641,7 @@
                       long sa = Address.get(Socket.APR_LOCAL, socket);
                       localName = Address.getnameinfo(sa, 0);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
               request.localName().setString(localName);
  @@ -656,7 +654,7 @@
                       long sa = Address.get(Socket.APR_REMOTE, socket);
                       remoteHost = Address.getnameinfo(sa, 0);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
               request.remoteHost().setString(remoteHost);
  @@ -673,7 +671,7 @@
                           localPort = addr.port;
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
   
  @@ -688,7 +686,7 @@
                       Sockaddr addr = Address.getInfo(sa);
                       remotePort = addr.port;
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
               request.setRemotePort(remotePort);
  @@ -705,7 +703,7 @@
                           localPort = addr.port;
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("ajpprocessor.socket.info"), e);
                   }
               }
               request.setLocalPort(localPort);
  @@ -794,7 +792,7 @@
               if(0xA000 == isc) {
                   requestHeaderMessage.getInt(); // To advance the read 
position
                   hName = Constants.headerTransArray[hId - 1];
  -                vMB = headers.addValue( hName );
  +                vMB = headers.addValue(hName);
               } else {
                   // reset hId -- if the header currently being read
                   // happens to be 7 or 8 bytes long, the code below
  @@ -838,8 +836,6 @@
                   requestHeaderMessage.getBytes(tmpMB);
                   String v = tmpMB.toString();
                   request.setAttribute(n, v);
  -                if (log.isTraceEnabled())
  -                    log.trace("jk Attribute set " + n + "=" + v);
                   break;
               
               case Constants.SC_A_CONTEXT :
  @@ -887,20 +883,20 @@
               case Constants.SC_A_SSL_CIPHER :
                   request.scheme().setString("https");
                   requestHeaderMessage.getBytes(tmpMB);
  -                request.setAttribute(SSLSupport.CIPHER_SUITE_KEY,
  -                                 tmpMB.toString());
  +                request.setAttribute(AprEndpoint.CIPHER_SUITE_KEY,
  +                                     tmpMB.toString());
                   break;
                   
               case Constants.SC_A_SSL_SESSION :
                   request.scheme().setString("https");
                   requestHeaderMessage.getBytes(tmpMB);
  -                request.setAttribute(SSLSupport.SESSION_ID_KEY, 
  -                                  tmpMB.toString());
  +                request.setAttribute(AprEndpoint.SESSION_ID_KEY, 
  +                                     tmpMB.toString());
                   break;
                   
               case Constants.SC_A_SSL_KEY_SIZE :
  -                request.setAttribute(SSLSupport.KEY_SIZE_KEY,
  -                        new Integer(requestHeaderMessage.getInt()));
  +                request.setAttribute(AprEndpoint.KEY_SIZE_KEY,
  +                                     new 
Integer(requestHeaderMessage.getInt()));
                   break;
   
               // FIXME: no usage for secret attribute here
  @@ -1222,8 +1218,6 @@
               endOfStream = true; // we've read everything there is
           }
           if (endOfStream) {
  -            if( log.isDebugEnabled() ) 
  -                log.debug("refillReadBuffer: end of stream " );
               return false;
           }
   
  
  
  
  1.3       +7 -1      
jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/LocalStrings.properties
  
  Index: LocalStrings.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/LocalStrings.properties,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- LocalStrings.properties   23 Jun 2005 16:35:27 -0000      1.2
  +++ LocalStrings.properties   29 Jul 2005 10:23:55 -0000      1.3
  @@ -22,3 +22,9 @@
   ajpprotocol.endpoint.resumeerror=Error resuming endpoint
   ajpprotocol.failedread=Socket read failed
   ajpprotocol.failedwrite=Socket write failed
  +
  +ajpprocessor.header.error=Header message parsing failed
  +ajpprocessor.request.prepare=Error preparing request
  +ajpprocessor.request.process=Error processing request
  +ajpprocessor.certs.fail=Certificate convertion failed
  +ajpprocessor.socket.info=Exception getting socket information
  
  
  
  1.3       +93 -85    
jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/AjpMessage.java
  
  Index: AjpMessage.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/java/org/apache/coyote/ajp/AjpMessage.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AjpMessage.java   23 Jun 2005 17:22:13 -0000      1.2
  +++ AjpMessage.java   29 Jul 2005 10:23:55 -0000      1.3
  @@ -36,13 +36,21 @@
    * @author Costin Manolache
    */
   public class AjpMessage {
  +    
       private static org.apache.commons.logging.Log log=
           org.apache.commons.logging.LogFactory.getLog( AjpMessage.class );
   
  -    // that's the original buffer size in ajp13 - otherwise we'll get 
interoperability problems.
  -    private byte buf[]=new byte[8*1024]; 
  -    // The current read or write position in the buffer
  +    
  +    /**
  +     * Fixed size buffer.
  +     */
  +    private byte buf[] = new byte[8*1024];
  +    
  +    /**
  +     * The current read or write position in the buffer.
  +     */
       private int pos;
  +    
       /**
        * This actually means different things depending on whether the
        * packet is read or write.  For read, it's the length of the
  @@ -50,7 +58,6 @@
        * the packet as a whole (counting the header).  Oh, well.
        */
       private int len; 
  -
       
       /**
        * Prepare this packet for accumulating a message from the container to
  @@ -68,13 +75,13 @@
        * the header.  
        */
       public void end() {
  -        len=pos;
  -        int dLen=len-4;
  +        len = pos;
  +        int dLen = len - 4;
   
  -        buf[0] = (byte)0x41;
  -        buf[1] = (byte)0x42;
  -        buf[2]=  (byte)((dLen>>>8 ) & 0xFF );
  -        buf[3] = (byte)(dLen & 0xFF);
  +        buf[0] = (byte) 0x41;
  +        buf[1] = (byte) 0x42;
  +        buf[2] = (byte) ((dLen>>>8) & 0xFF);
  +        buf[3] = (byte) (dLen & 0xFF);
       }
   
       public byte[] getBuffer() {
  @@ -92,19 +99,19 @@
        *
        * @param val The integer to write.
        */
  -    public void appendInt( int val ) {
  -        buf[pos++]   = (byte) ((val >>>  8) & 0xFF);
  +    public void appendInt(int val) {
  +        buf[pos++] = (byte) ((val >>> 8) & 0xFF);
           buf[pos++] = (byte) (val & 0xFF);
       }
   
  -    public void appendByte( int val ) {
  -        buf[pos++] = (byte)val;
  +    public void appendByte(int val) {
  +        buf[pos++] = (byte) val;
       }
        
  -    public void appendLongInt( int val ) {
  -        buf[pos++]   = (byte) ((val >>>  24) & 0xFF);
  -        buf[pos++] = (byte) ((val >>>  16) & 0xFF);
  -        buf[pos++] = (byte) ((val >>>   8) & 0xFF);
  +    public void appendLongInt(int val) {
  +        buf[pos++] = (byte) ((val >>> 24) & 0xFF);
  +        buf[pos++] = (byte) ((val >>> 16) & 0xFF);
  +        buf[pos++] = (byte) ((val >>> 8) & 0xFF);
           buf[pos++] = (byte) (val & 0xFF);
       }
   
  @@ -116,9 +123,10 @@
        * code, where it saves a round of copying.  A null string is
        * encoded as a string with length 0.  
        */
  -    public void appendBytes(MessageBytes mb) throws IOException {
  -        if(mb==null || mb.isNull() ) {
  -            appendInt( 0);
  +    public void appendBytes(MessageBytes mb)
  +        throws IOException {
  +        if (mb == null || mb.isNull()) {
  +            appendInt(0);
               appendByte(0);
               return;
           }
  @@ -134,32 +142,34 @@
           }
       }
   
  -    public void appendByteChunk(ByteChunk bc) throws IOException {
  -        if(bc==null) {
  +    public void appendByteChunk(ByteChunk bc)
  +        throws IOException {
  +        if (bc == null) {
               log.error("appendByteChunk() null");
  -            appendInt( 0);
  +            appendInt(0);
               appendByte(0);
               return;
           }
   
           byte[] bytes = bc.getBytes();
  -        int start=bc.getStart();
  -        appendInt( bc.getLength() );
  +        int start = bc.getStart();
  +        appendInt(bc.getLength());
           cpBytes(bytes, start, bc.getLength());
           appendByte(0);
       }
   
  -    public void appendCharChunk(CharChunk cc) throws IOException {
  -        if(cc==null) {
  +    public void appendCharChunk(CharChunk cc)
  +        throws IOException {
  +        if(cc == null) {
               log.error("appendByteChunk() null");
  -            appendInt( 0);
  +            appendInt(0);
               appendByte(0);
               return;
           }
   
           int start = cc.getStart();
           int end = cc.getEnd();
  -        appendInt( cc.getLength() );
  +        appendInt(cc.getLength());
           char[] cbuf = cc.getBuffer();
           for (int i = start; i < end; i++) {
               char c = cbuf[i];
  @@ -177,10 +187,11 @@
           appendByte(0);
       }
   
  -    public void appendString(String str) throws IOException {
  -        if(str==null) {
  +    public void appendString(String str)
  +        throws IOException {
  +        if(str == null) {
               log.error("appendByteChunk() null");
  -            appendInt( 0);
  +            appendInt(0);
               appendByte(0);
               return;
           }
  @@ -215,27 +226,25 @@
        * @param off The offset into the array at which to start copying
        * @param numBytes The number of bytes to copy.  
        */
  -    public void appendBytes( byte b[], int off, int numBytes ) {
  -        appendInt( numBytes );
  -        cpBytes( b, off, numBytes );
  +    public void appendBytes(byte b[], int off, int numBytes) {
  +        appendInt(numBytes);
  +        cpBytes(b, off, numBytes);
           appendByte(0);
       }
       
  -    private void cpBytes( byte b[], int off, int numBytes ) {
  -        if( pos + numBytes >= buf.length ) {
  +    private void cpBytes(byte b[], int off, int numBytes) {
  +        if (pos + numBytes >= buf.length) {
               log.error("Buffer overflow: buffer.len=" + buf.length + " pos=" +
  -                      pos + " data=" + numBytes );
  +                      pos + " data=" + numBytes);
               dump("Overflow/coBytes");
  -            log.error( "Overflow ", new Throwable());
  +            log.error("Overflow ", new Throwable());
               return;
           }
  -        System.arraycopy( b, off, buf, pos, numBytes);
  +        System.arraycopy(b, off, buf, pos, numBytes);
           pos += numBytes;
           // buf[pos + numBytes] = 0; // Terminating \0
       }
       
  -
  -    
       // ============ Data Reading Methods ===================
   
       /**
  @@ -248,14 +257,14 @@
           int b1 = buf[pos++] & 0xFF;  // No swap, Java order
           int b2 = buf[pos++] & 0xFF;
   
  -        return  (b1<<8) + b2;
  +        return (b1<<8) + b2;
       }
   
       public int peekInt() {
           int b1 = buf[pos] & 0xFF;  // No swap, Java order
           int b2 = buf[pos+1] & 0xFF;
   
  -        return  (b1<<8) + b2;
  +        return (b1<<8) + b2;
       }
   
       public byte getByte() {
  @@ -270,11 +279,11 @@
   
       public void getBytes(MessageBytes mb) {
           int length = getInt();
  -        if( (length == 0xFFFF) || (length == -1) ) {
  +        if ((length == 0xFFFF) || (length == -1)) {
               mb.recycle();
               return;
           }
  -        mb.setBytes( buf, pos, length );
  +        mb.setBytes(buf, pos, length);
           pos += length;
           pos++; // Skip the terminating \0
       }
  @@ -288,17 +297,17 @@
        */
       public int getBytes(byte dest[]) {
           int length = getInt();
  -        if( length > buf.length ) {
  +        if (length > buf.length) {
               // XXX Should be if(pos + length > buff.legth)?
  -            log.error("getBytes() buffer overflow " + length + " " + 
buf.length );
  +            log.error("getBytes() buffer overflow " + length + " " + 
buf.length);
           }
        
  -        if( (length == 0xFFFF) || (length == -1) ) {
  +        if ((length == 0xFFFF) || (length == -1)) {
               log.info("Null string " + length);
               return 0;
           }
   
  -        System.arraycopy( buf, pos,  dest, 0, length );
  +        System.arraycopy(buf, pos,  dest, 0, length);
           pos += length;
           pos++; // Skip terminating \0  XXX I believe this is wrong but 
harmless
           return length;
  @@ -328,59 +337,58 @@
       public int processHeader() {
           pos = 0;
           int mark = getInt();
  -        len      = getInt();
  +        len = getInt();
            
  -        if( mark != 0x1234 && mark != 0x4142 ) {
  +        if ((mark != 0x1234) && (mark != 0x4142)) {
               // XXX Logging
               log.error("BAD packet signature " + mark);
  -            dump( "In: " );
  +            dump("In: ");
               return -1;
           }
   
  -        if( log.isDebugEnabled() ) 
  -            log.debug( "Received " + len + " " + buf[0] );
  +        if (log.isDebugEnabled()) 
  +            log.debug("Received " + len + " " + buf[0]);
           return len;
       }
       
  -    public void dump(String msg) {
  -        if( log.isDebugEnabled() ) 
  -            log.debug( msg + ": " + buf + " " + pos +"/" + (len + 4));
  -        int max=pos;
  -        if( len + 4 > pos )
  -            max=len+4;
  -        if( max >1000 ) max=1000;
  -        if( log.isDebugEnabled() ) 
  -            for( int j=0; j < max; j+=16 ) 
  -                log.debug( hexLine( buf, j, len ));
  -     
  -    }
  -
       /* -------------------- Utilities -------------------- */
  -    // XXX Move to util package
   
  -    public static String hexLine( byte buf[], int start, int len ) {
  -        StringBuffer sb=new StringBuffer();
  -        for( int i=start; i< start+16 ; i++ ) {
  -            if( i < len + 4)
  -                sb.append( hex( buf[i] ) + " ");
  +    public void dump(String msg) {
  +        if (log.isDebugEnabled()) 
  +            log.debug(msg + ": " + buf + " " + pos +"/" + (len + 4));
  +        int max = pos;
  +        if (len + 4 > pos)
  +            max = len+4;
  +        if (max > 1000)
  +            max = 1000;
  +        if (log.isDebugEnabled()) 
  +            for(int j = 0; j < max; j += 16) 
  +                log.debug(hexLine(buf, j, len));
  +    }
  +
  +    private static String hexLine(byte buf[], int start, int len) {
  +        StringBuffer sb = new StringBuffer();
  +        for (int i = start; i < start + 16 ; i++) {
  +            if (i < len + 4)
  +                sb.append(hex(buf[i]) + " ");
               else 
  -                sb.append( "   " );
  +                sb.append("   ");
           }
           sb.append(" | ");
  -        for( int i=start; i < start+16 && i < len + 4; i++ ) {
  -            if( ! Character.isISOControl( (char)buf[i] ))
  -                sb.append( new Character((char)buf[i]) );
  +        for (int i = start; i < start + 16 && i < len + 4; i++) {
  +            if (!Character.isISOControl((char)buf[i]))
  +                sb.append(new Character((char)buf[i]));
               else
  -                sb.append( "." );
  +                sb.append(".");
           }
           return sb.toString();
       }
   
  -    private  static String hex( int x ) {
  -        //       if( x < 0) x=256 + x;
  -        String h=Integer.toHexString( x );
  -        if( h.length() == 1 ) h = "0" + h;
  -        return h.substring( h.length() - 2 );
  +    private static String hex(int x) {
  +        String h = Integer.toHexString(x);
  +        if (h.length() == 1) 
  +            h = "0" + h;
  +        return h.substring(h.length() - 2);
       }
   
   }
  
  
  
  1.9       +13 -1     
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/LocalStrings.properties
  
  Index: LocalStrings.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/LocalStrings.properties,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- LocalStrings.properties   21 Mar 2004 22:37:50 -0000      1.8
  +++ LocalStrings.properties   29 Jul 2005 10:23:56 -0000      1.9
  @@ -30,6 +30,18 @@
   # Http11Processor
   #
   
  +http11processor.regexp.error=Error parsing regular expression {0}
  +http11processor.filter.unknown=Unknown filter {0}
  +http11processor.filter.error=Error intializing filter {0}
  +http11processor.header.parse=Error parsing HTTP request header
  +http11processor.request.prepare=Error preparing request
  +http11processor.request.process=Error processing request
  +http11processor.request.finish=Error finishing request
  +http11processor.response.finish=Error finishing response
  +http11processor.socket.info=Exception getting socket information
  +http11processor.socket.ssl=Exception getting SSL attributes
  +http11processor.socket.timeout=Error setting socket timeout
  +
   #
   # InternalInputBuffer
   #
  
  
  
  1.122     +24 -12    
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java
  
  Index: Http11Processor.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java,v
  retrieving revision 1.121
  retrieving revision 1.122
  diff -u -r1.121 -r1.122
  --- Http11Processor.java      25 Jul 2005 15:32:48 -0000      1.121
  +++ Http11Processor.java      29 Jul 2005 10:23:56 -0000      1.122
  @@ -35,6 +35,7 @@
   import org.apache.coyote.Request;
   import org.apache.coyote.RequestInfo;
   import org.apache.coyote.Response;
  +import org.apache.coyote.ajp.Constants;
   import org.apache.coyote.http11.filters.ChunkedInputFilter;
   import org.apache.coyote.http11.filters.ChunkedOutputFilter;
   import org.apache.coyote.http11.filters.GzipOutputFilter;
  @@ -52,6 +53,7 @@
   import org.apache.tomcat.util.http.MimeHeaders;
   import org.apache.tomcat.util.net.PoolTcpEndpoint;
   import org.apache.tomcat.util.net.SSLSupport;
  +import org.apache.tomcat.util.res.StringManager;
   import org.apache.tomcat.util.threads.ThreadPool;
   import org.apache.tomcat.util.threads.ThreadWithAttributes;
   
  @@ -70,6 +72,12 @@
       protected static org.apache.commons.logging.Log log
           = 
org.apache.commons.logging.LogFactory.getLog(Http11Processor.class);
   
  +    /**
  +     * The string manager for this package.
  +     */
  +    protected static StringManager sm =
  +        StringManager.getManager(Constants.Package);
  +
   
       // ----------------------------------------------------------- 
Constructors
   
  @@ -383,7 +391,7 @@
               noCompressionUserAgents =
                   addREArray(noCompressionUserAgents, nRule);
           } catch (PatternSyntaxException pse) {
  -            log.error("Error parsing regular expression: " + userAgent, pse);
  +            log.error(sm.getString("http11processor.regexp.error", 
userAgent), pse);
           }
       }
   
  @@ -480,10 +488,10 @@
               } else if (obj instanceof OutputFilter) {
                   outputBuffer.addFilter((OutputFilter) obj);
               } else {
  -                log.warn("Unknown filter: " + className);
  +                log.warn(sm.getString("http11processor.filter.unknown", 
className));
               }
           } catch (Exception e) {
  -            log.error("Error intializing filter: " + className, e);
  +            log.error(sm.getString("http11processor.filter.error", 
className), e);
           }
       }
   
  @@ -578,7 +586,7 @@
               Pattern nRule = Pattern.compile(userAgent);
               restrictedUserAgents = addREArray(restrictedUserAgents, nRule);
           } catch (PatternSyntaxException pse) {
  -            log.error("Error parsing regular expression: " + userAgent, pse);
  +            log.error(sm.getString("http11processor.regexp.error", 
userAgent), pse);
           }
       }
   
  @@ -802,7 +810,7 @@
               try {
                   socket.setSoTimeout(soTimeout);
               } catch (Throwable t) {
  -                log.debug("Error setting timeout", t);
  +                log.debug(sm.getString("http11processor.socket.timeout"), t);
                   error = true;
               }
           }
  @@ -828,7 +836,9 @@
                   error = true;
                   break;
               } catch (Throwable t) {
  -                log.debug("Error parsing HTTP request", t);
  +                if (log.isDebugEnabled()) {
  +                    log.debug(sm.getString("http11processor.header.parse"), 
t);
  +                }
                   // 400 - Bad Request
                   response.setStatus(400);
                   error = true;
  @@ -840,7 +850,9 @@
               try {
                   prepareRequest();
               } catch (Throwable t) {
  -                log.debug("Error preparing request", t);
  +                if (log.isDebugEnabled()) {
  +                    
log.debug(sm.getString("http11processor.request.prepare"), t);
  +                }
                   // 400 - Internal Server Error
                   response.setStatus(400);
                   error = true;
  @@ -868,7 +880,7 @@
                   } catch (InterruptedIOException e) {
                       error = true;
                   } catch (Throwable t) {
  -                    log.error("Error processing request", t);
  +                    
log.error(sm.getString("http11processor.request.process"), t);
                       // 500 - Internal Server Error
                       response.setStatus(500);
                       error = true;
  @@ -883,7 +895,7 @@
               } catch (IOException e) {
                   error = true;
               } catch (Throwable t) {
  -                log.error("Error finishing request", t);
  +                log.error(sm.getString("http11processor.request.finish"), t);
                   // 500 - Internal Server Error
                   response.setStatus(500);
                   error = true;
  @@ -895,7 +907,7 @@
               } catch (IOException e) {
                   error = true;
               } catch (Throwable t) {
  -                log.error("Error finishing response", t);
  +                log.error(sm.getString("http11processor.response.finish"), 
t);
                   error = true;
               }
   
  @@ -1038,7 +1050,7 @@
                               (SSLSupport.SESSION_ID_KEY, sslO);
                   }
               } catch (Exception e) {
  -                log.warn("Exception getting SSL attributes " ,e);
  +                log.warn(sm.getString("http11processor.socket.ssl"), e);
               }
   
           } else if (actionCode == ActionCode.ACTION_REQ_HOST_ADDR_ATTRIBUTE) {
  @@ -1110,7 +1122,7 @@
                               (SSLSupport.CERTIFICATE_KEY, sslO);
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting SSL Cert",e);
  +                    log.warn(sm.getString("http11processor.socket.ssl"), e);
                   }
               }
           } else if (actionCode == ActionCode.ACTION_REQ_SET_BODY_REPLAY) {
  
  
  
  1.28      +34 -22    
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11AprProcessor.java
  
  Index: Http11AprProcessor.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11AprProcessor.java,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- Http11AprProcessor.java   26 Jul 2005 16:39:14 -0000      1.27
  +++ Http11AprProcessor.java   29 Jul 2005 10:23:56 -0000      1.28
  @@ -34,6 +34,7 @@
   import org.apache.coyote.Request;
   import org.apache.coyote.RequestInfo;
   import org.apache.coyote.Response;
  +import org.apache.coyote.ajp.Constants;
   import org.apache.coyote.http11.filters.ChunkedInputFilter;
   import org.apache.coyote.http11.filters.ChunkedOutputFilter;
   import org.apache.coyote.http11.filters.GzipOutputFilter;
  @@ -55,6 +56,7 @@
   import org.apache.tomcat.util.http.FastHttpDateFormat;
   import org.apache.tomcat.util.http.MimeHeaders;
   import org.apache.tomcat.util.net.AprEndpoint;
  +import org.apache.tomcat.util.res.StringManager;
   import org.apache.tomcat.util.threads.ThreadWithAttributes;
   
   
  @@ -72,6 +74,12 @@
       protected static org.apache.commons.logging.Log log
           = 
org.apache.commons.logging.LogFactory.getLog(Http11AprProcessor.class);
   
  +    /**
  +     * The string manager for this package.
  +     */
  +    protected static StringManager sm =
  +        StringManager.getManager(Constants.Package);
  +
   
       // ----------------------------------------------------------- 
Constructors
   
  @@ -376,7 +384,7 @@
               noCompressionUserAgents =
                   addREArray(noCompressionUserAgents, nRule);
           } catch (PatternSyntaxException pse) {
  -            log.error("Error parsing regular expression: " + userAgent, pse);
  +            log.error(sm.getString("http11processor.regexp.error", 
userAgent), pse);
           }
       }
   
  @@ -473,10 +481,10 @@
               } else if (obj instanceof OutputFilter) {
                   outputBuffer.addFilter((OutputFilter) obj);
               } else {
  -                log.warn("Unknown filter: " + className);
  +                log.warn(sm.getString("http11processor.filter.unknown", 
className));
               }
           } catch (Exception e) {
  -            log.error("Error intializing filter: " + className, e);
  +            log.error(sm.getString("http11processor.filter.error", 
className), e);
           }
       }
   
  @@ -571,7 +579,7 @@
               Pattern nRule = Pattern.compile(userAgent);
               restrictedUserAgents = addREArray(restrictedUserAgents, nRule);
           } catch (PatternSyntaxException pse) {
  -            log.error("Error parsing regular expression: " + userAgent, pse);
  +            log.error(sm.getString("http11processor.regexp.error", 
userAgent), pse);
           }
       }
   
  @@ -790,7 +798,9 @@
                   error = true;
                   break;
               } catch (Throwable t) {
  -                log.debug("Error parsing HTTP request", t);
  +                if (log.isDebugEnabled()) {
  +                    log.debug(sm.getString("http11processor.header.parse"), 
t);
  +                }
                   // 400 - Bad Request
                   response.setStatus(400);
                   error = true;
  @@ -802,7 +812,9 @@
               try {
                   prepareRequest();
               } catch (Throwable t) {
  -                log.debug("Error preparing request", t);
  +                if (log.isDebugEnabled()) {
  +                    
log.debug(sm.getString("http11processor.request.prepare"), t);
  +                }
                   // 400 - Internal Server Error
                   response.setStatus(400);
                   error = true;
  @@ -830,7 +842,7 @@
                   } catch (InterruptedIOException e) {
                       error = true;
                   } catch (Throwable t) {
  -                    log.error("Error processing request", t);
  +                    
log.error(sm.getString("http11processor.request.process"), t);
                       // 500 - Internal Server Error
                       response.setStatus(500);
                       error = true;
  @@ -845,7 +857,7 @@
               } catch (IOException e) {
                   error = true;
               } catch (Throwable t) {
  -                log.error("Error finishing request", t);
  +                log.error(sm.getString("http11processor.request.finish"), t);
                   // 500 - Internal Server Error
                   response.setStatus(500);
                   error = true;
  @@ -857,7 +869,7 @@
               } catch (IOException e) {
                   error = true;
               } catch (Throwable t) {
  -                log.error("Error finishing response", t);
  +                log.error(sm.getString("http11processor.response.finish"), 
t);
                   error = true;
               }
   
  @@ -996,7 +1008,7 @@
                       long sa = Address.get(Socket.APR_REMOTE, socket);
                       remoteAddr = Address.getip(sa);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
               request.remoteAddr().setString(remoteAddr);
  @@ -1009,7 +1021,7 @@
                       long sa = Address.get(Socket.APR_LOCAL, socket);
                       localName = Address.getnameinfo(sa, 0);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
               request.localName().setString(localName);
  @@ -1022,7 +1034,7 @@
                       long sa = Address.get(Socket.APR_REMOTE, socket);
                       remoteHost = Address.getnameinfo(sa, 0);
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
               request.remoteHost().setString(remoteHost);
  @@ -1039,7 +1051,7 @@
                           localPort = addr.port;
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
   
  @@ -1054,7 +1066,7 @@
                       Sockaddr addr = Address.getInfo(sa);
                       remotePort = addr.port;
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
               request.setRemotePort(remotePort);
  @@ -1071,7 +1083,7 @@
                           localPort = addr.port;
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting socket information " ,e);
  +                    log.warn(sm.getString("http11processor.socket.info"), e);
                   }
               }
               request.setLocalPort(localPort);
  @@ -1084,7 +1096,7 @@
                       Object sslO = SSLSocket.getInfoS(socket, 
SSL.SSL_INFO_CIPHER);
                       if (sslO != null) {
                           request.setAttribute
  -                            ("javax.servlet.request.cipher_suite", sslO);
  +                            (AprEndpoint.CIPHER_SUITE_KEY, sslO);
                       }
                       // Client certificate chain if present
                       int certLength = SSLSocket.getInfoI(socket, 
SSL.SSL_INFO_CLIENT_CERT_CHAIN);
  @@ -1101,23 +1113,23 @@
                       }
                       if (certs != null) {
                           request.setAttribute
  -                            ("javax.servlet.request.X509Certificate", certs);
  +                            (AprEndpoint.CERTIFICATE_KEY, certs);
                       }
                       // User key size
                       sslO = new Integer(SSLSocket.getInfoI(socket, 
SSL.SSL_INFO_CIPHER_USEKEYSIZE));
                       if (sslO != null) {
                           request.setAttribute
  -                            ("javax.servlet.request.key_size", sslO);
  +                            (AprEndpoint.KEY_SIZE_KEY, sslO);
                       }
                       // SSL session ID
                       sslO = SSLSocket.getInfoS(socket, 
SSL.SSL_INFO_SESSION_ID);
                       if (sslO != null) {
                           request.setAttribute
  -                            ("javax.servlet.request.ssl_session", sslO);
  +                            (AprEndpoint.SESSION_ID_KEY, sslO);
                       }
                   }
               } catch (Exception e) {
  -                log.warn("Exception getting SSL attributes " ,e);
  +                log.warn(sm.getString("http11processor.socket.ssl"), e);
               }
   
           } else if (actionCode == ActionCode.ACTION_REQ_SSL_CERTIFICATE) {
  @@ -1148,10 +1160,10 @@
                       }
                       if (certs != null) {
                           request.setAttribute
  -                            ("javax.servlet.request.X509Certificate", certs);
  +                            (AprEndpoint.CERTIFICATE_KEY, certs);
                       }
                   } catch (Exception e) {
  -                    log.warn("Exception getting SSL Cert", e);
  +                    log.warn(sm.getString("http11processor.socket.ssl"), e);
                   }
               }
   
  
  
  
  1.70      +22 -0     
jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/net/AprEndpoint.java
  
  Index: AprEndpoint.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/util/java/org/apache/tomcat/util/net/AprEndpoint.java,v
  retrieving revision 1.69
  retrieving revision 1.70
  diff -u -r1.69 -r1.70
  --- AprEndpoint.java  27 Jul 2005 15:12:02 -0000      1.69
  +++ AprEndpoint.java  29 Jul 2005 10:23:56 -0000      1.70
  @@ -65,6 +65,28 @@
           StringManager.getManager("org.apache.tomcat.util.net.res");
   
   
  +    /**
  +     * The Request attribute key for the cipher suite.
  +     */
  +    public static final String CIPHER_SUITE_KEY = 
"javax.servlet.request.cipher_suite";
  +
  +    /**
  +     * The Request attribute key for the key size.
  +     */
  +    public static final String KEY_SIZE_KEY = 
"javax.servlet.request.key_size";
  +
  +    /**
  +     * The Request attribute key for the client certificate chain.
  +     */
  +    public static final String CERTIFICATE_KEY = 
"javax.servlet.request.X509Certificate";
  +
  +    /**
  +     * The Request attribute key for the session id.
  +     * This one is a Tomcat extension to the Servlet spec.
  +     */
  +    public static final String SESSION_ID_KEY = 
"javax.servlet.request.ssl_session";
  +
  +
       // ----------------------------------------------------------------- 
Fields
   
   
  
  
  

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

Reply via email to