You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2002/10/31 16:30:43 UTC

DO NOT REPLY [Bug 14131] New: - Status-Line without Reason-Phrase might add extra line feed.

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14131>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14131

Status-Line without Reason-Phrase might add extra line feed.

           Summary: Status-Line without Reason-Phrase might add extra line
                    feed.
           Product: Apache httpd-1.3
           Version: 1.3.26
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: mod_proxy
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: puckman@taglab.com


On a ProxyPass if mod_proxy receives a response without a Reason-Phrase,
formatted like:
"HTTP/1.1 200 "
(The trailing space is important)

It will in this scenario return a header with an extra LF after the Status-Line
but before any headers.

My test scenario is a server running on port 1234 ProxyPassing everything to
port 80 where I have a mod_jk hooked up to a Coyote JK 2 to Tomcat 4.1.12.
(Coyote JK 2 is the one sending these kind of responses).

$ curl -s -i http://rhubarb:1234/index.jsp |  head
HTTP/1.1 200

Date: Thu, 31 Oct 2002 15:19:27 GMT
Server: Apache/1.3.26 (Unix) mod_jk/1.1.0 DAV/1.0.3 mod_ssl/2.8.10 OpenSSL/0.9.6g
Set-Cookie: JSESSIONID=5B80F58959DE39289E73C13CB992EAB2; Path=/
Content-Type: text/html; charset=utf-8
X-Cache: MISS from rhubarb.mydomain.org
Transfer-Encoding: chunked

And for you hex junkies:
This is listening on the loopback interface on port 80. Notice the space after 200.

T 192.168.100.105:80 -> 192.168.100.105:33582 [AP]
  48 54 54 50 2f 31 2e 31    20 32 30 30 20 0d 0a 44    HTTP/1.1 200 ..D
  61 74 65 3a 20 54 68 75    2c 20 33 31 20 4f 63 74    ate: Thu, 31 Oct
  20 32 30 30 32 20 31 35    3a 32 34 3a 31 34 20 47     2002 15:24:14 G
  4d 54 0d 0a 53 65 72 76    65 72 3a 20 41 70 61 63    MT..Server: Apac
  68 65 2f 31 2e 33 2e 32    36 20 28 55 6e 69 78 29    he/1.3.26 (Unix)
  20 6d 6f 64 5f 6a 6b 2f    31 2e 31 2e 30 20 44 41     mod_jk/1.1.0 DA
  56 2f 31 2e 30 2e 33 20    6d 6f 64 5f 73 73 6c 2f    V/1.0.3 mod_ssl/
  32 2e 38 2e 31 30 20 4f    70 65 6e 53 53 4c 2f 30    2.8.10 OpenSSL/0
  2e 39 2e 36 67 0d 0a 53    65 74 2d 43 6f 6f 6b 69    .9.6g..Set-Cooki
  65 3a 20 4a 53 45 53 53    49 4f 4e 49 44 3d 42 31    e: JSESSIONID=B1
  46 32 38 31 44 39 31 35    35 36 45 34 38 42 35 30    F281D91556E48B50
  37 46 42 34 37 30 41 36    30 43 32 31 39 33 3b 20    7FB470A60C2193;
  50 61 74 68 3d 2f 0d 0a    43 6f 6e 6e 65 63 74 69    Path=/..Connecti
  6f 6e 3a 20 63 6c 6f 73    65 0d 0a 54 72 61 6e 73    on: close..Trans
...


And this is the result from port 1234. Notice the extra 0a, where did it come from?

T 127.0.0.1:1234 -> 127.0.0.1:33583 [AP]
  48 54 54 50 2f 31 2e 31    20 32 30 30 20 0a 0d 0a    HTTP/1.1 200 ...
  44 61 74 65 3a 20 54 68    75 2c 20 33 31 20 4f 63    Date: Thu, 31 Oc
  74 20 32 30 30 32 20 31    35 3a 32 35 3a 34 39 20    t 2002 15:25:49
  47 4d 54 0d 0a 53 65 72    76 65 72 3a 20 41 70 61    GMT..Server: Apa
  63 68 65 2f 31 2e 33 2e    32 36 20 28 55 6e 69 78    che/1.3.26 (Unix
  29 20 6d 6f 64 5f 6a 6b    2f 31 2e 31 2e 30 20 44    ) mod_jk/1.1.0 D
  41 56 2f 31 2e 30 2e 33    20 6d 6f 64 5f 73 73 6c    AV/1.0.3 mod_ssl
  2f 32 2e 38 2e 31 30 20    4f 70 65 6e 53 53 4c 2f    /2.8.10 OpenSSL/
  30 2e 39 2e 36 67 0d 0a    53 65 74 2d 43 6f 6f 6b    0.9.6g..Set-Cook
  69 65 3a 20 4a 53 45 53    53 49 4f 4e 49 44 3d 33    ie: JSESSIONID=3

Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org