You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2003/08/05 14:26:54 UTC

cvs commit: jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11 Http11Processor.java

remm        2003/08/05 05:26:54

  Modified:    http11/src/java/org/apache/coyote/http11
                        Http11Processor.java
  Log:
  - Fix bug 9351: parsing IPv6 hostnames (in IP form, obviously).
  - Submitted by Masashi Yamaguchi. Thanks !
  
  Revision  Changes    Path
  1.73      +9 -3      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.72
  retrieving revision 1.73
  diff -u -r1.72 -r1.73
  --- Http11Processor.java	29 Jul 2003 18:53:20 -0000	1.72
  +++ Http11Processor.java	5 Aug 2003 12:26:54 -0000	1.73
  @@ -1081,12 +1081,18 @@
               hostNameC = new char[valueL];
           }
   
  +        boolean ipv6 = (valueB[valueS] == '[');
  +        boolean bracketClosed = false;
           for (int i = 0; i < valueL; i++) {
               char b = (char) valueB[i + valueS];
               hostNameC[i] = b;
  -            if (b == ':') {
  -                colonPos = i;
  -                break;
  +            if (b == ']') {
  +                bracketClosed = true;
  +            } else if (b == ':') {
  +                if (!ipv6 || bracketClosed) {
  +                    colonPos = i;
  +                    break;
  +                }
               }
           }
   
  
  
  

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