netty / netty-incubator-codec-http3

Experimental HTTP3 codec on top of QUIC
Apache License 2.0
170 stars 35 forks source link

Do not require :authority pseudo header #212

Closed yawkat closed 9 months ago

yawkat commented 1 year ago

Motivation:

According to the HTTP/3 spec, "this pseudo-header field MUST be omitted when translating from an HTTP/1.1 request that has a request target in a method-specific form". Before this change, Http3HeadersSink would error when the :authority is missing.

Modification:

Make Http3HeadersSink accept the case where :authority is missing.

Result:

Http3HeadersSink follows spec.

yawkat commented 1 year ago

hmm not sure if i understand the spec correctly, is this only the case with CONNECT (for which there is already a branch) and OPTIONS *? In that case this could just be a special case for OPTIONS *.

normanmaurer commented 9 months ago

@yawkat sorry for the late response... I think this should only be done for CONNECT and OPTIONS *

normanmaurer commented 9 months ago

let me take it from here

normanmaurer commented 9 months ago

After talking with @lukasa I need to correct myself... We need to add a special case of OPTIONS only

normanmaurer commented 9 months ago

@yawkat PTAL again

yawkat commented 9 months ago

LGTM