Incorrect :path header field in HTTP/2 or SPDY proxy

RESOLVED FIXED in mozilla37

Status

()

RESOLVED FIXED
4 years ago
3 years ago

People

(Reporter: tatsuhiro.t, Assigned: mcmanus)

Tracking

Trunk
mozilla37
x86_64
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [spdy])

MozReview Requests

()

Submitter Diff Changes Open Issues Last Updated
Loading...
Error loading review requests:

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

4 years ago
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36

Steps to reproduce:

1. Setup HTTP/2 or SPDY proxy.  nghttpx+squid3 or node-spdyproxy will work.
2. Instruct Firefox to use HTTP/2 or SPDY proxy
3. Access the web site (plain http URL, not encrypted site)



Actual results:

Page correctly displays but in protocol level, :path pseudo header is incorrect.
It includes absolute URI like http://nghttp2.org/api.html


Expected results:

:path should be the path and query parts of the target URI, so when accessing http://nghttp2.org/api.html, :path should be /api.html, rather than full absolute URI.

From HTTP/2 draft-16 spec 8.1.2.3.  Request Pseudo-Header Fields:
"""
   o  The ":path" pseudo-header field includes the path and query parts
      of the target URI (the "path-absolute" production from [RFC3986]
      and optionally a '?' character followed by the "query" production,
      see [RFC3986], Section 3.3 and [RFC3986], Section 3.4).  A request
      in asterisk form includes the value '*' for the ":path" pseudo-
      header field.
"""

Chrome M39 sends correct :path in this case.

Updated

4 years ago
Component: Untriaged → Networking: HTTP
Product: Firefox → Core
(Assignee)

Comment 1

4 years ago
thanks - you're right.

The path is being derived from the h1 proxying rules which use an absolute uri in that situation
(Assignee)

Updated

4 years ago
Whiteboard: [spdy]
(Assignee)

Comment 3

4 years ago
Created attachment 8535653 [details]
MozReview Request: bz://1107881/mcmanus
Attachment #8535653 - Flags: review?(hurley)
(Assignee)

Comment 4

4 years ago
/r/1429 - bug 1107881 - h2/spdy :path when proxying shouldn't be abs uri r=hurley

Pull down this commit:

hg pull review -r d1ebc894bc6df75efa4b86bc20575d4afcc20a62
https://reviewboard.mozilla.org/r/1429/#review915

::: netwerk/protocol/http/nsHttpChannel.cpp
(Diff revision 1)
>      else {

nit: move the else up by the }
Attachment #8535653 - Flags: review?(hurley) → review+
https://hg.mozilla.org/mozilla-central/rev/0191461d0332
Assignee: nobody → mcmanus
Status: UNCONFIRMED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla37
(Assignee)

Comment 9

3 years ago
Comment on attachment 8535653 [details]
MozReview Request: bz://1107881/mcmanus
Attachment #8535653 - Attachment is obsolete: true
Attachment #8618813 - Flags: review+
(Assignee)

Comment 10

3 years ago
Created attachment 8618813 [details]
MozReview Request: bug 1107881 - h2/spdy :path when proxying shouldn't be abs uri r=hurley
You need to log in before you can comment on or make changes to this bug.