Hey :kershaw, just wanted to confirm my approach to this bug before getting too deep. My current approach will be to: 1. Modify [test](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/tests/webtransport/sessions.rs#24-30) to expect `SessionCloseReason::Error(Error::HttpRequestRejected.code())`. Similar to [this test](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/tests/webtransport/sessions.rs#312) 2. Modify implementation: Server calls [events.send_stream_stop_sending()](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-transport/src/events.rs#119) with `Error::HttpRequestRejected.code()`, [here](https://searchfox.org/mozilla-central/rev/43cb6eca1c3069d46d589d52ab4949257e630d19/third_party/rust/neqo-http3/src/connection.rs#907), probably in place of. Currently, I'm assuming: 1. The error will propagate to and through client as expected. Though the client may need a bit of re-work for this. 2. [send_headers()](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/src/connection.rs#904) does not automatically send response to client and needs something to drive the communication. If this is not the case can probably just determine XHR or Http ahead of time to avoid pre-emptive `:status 404` broadcast. Also, (In reply to Dragana Damjanovic [:dragana] from comment #0) > Make sure to write tests for: https://datatracker.ietf.org/doc/html/draft-ietf-webtrans-http3-03#section-3.4 Is this meaning to write additional cargo tests for this specific case, or to expand our CI tests with xpcshell/wpt? or perhaps both?
Bug 1793822 Comment 1 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Hey :kershaw, just wanted to confirm my approach to this bug before getting too deep. My current approach will be to: 1. Modify [test](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/tests/webtransport/sessions.rs#24-30) to expect `SessionCloseReason::Error(Error::HttpRequestRejected.code())`. Similar to [this test](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/tests/webtransport/sessions.rs#312) 2. Modify implementation: Server calls [events.send_stream_stop_sending()](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-transport/src/events.rs#119) with `Error::HttpRequestRejected.code()`, [here](https://searchfox.org/mozilla-central/rev/43cb6eca1c3069d46d589d52ab4949257e630d19/third_party/rust/neqo-http3/src/connection.rs#907), probably in place of. Currently, I'm assuming: 1. The error will propagate to and through client as expected. Though the client may need a bit of re-work for this. 2. [send_headers()](https://searchfox.org/mozilla-central/source/third_party/rust/neqo-http3/src/connection.rs#904) does not automatically send response to client and needs something to drive the communication. If this is not the case can probably just determine XHR or Http ahead of time to avoid pre-emptive `:status 404` broadcast. Also, (In reply to Dragana Damjanovic [:dragana] from comment #0) > Make sure to write tests for: https://datatracker.ietf.org/doc/html/draft-ietf-webtrans-http3-03#section-3.4 Is this meaning to write additional cargo tests for this specific case, or to expand our CI tests with xpcshell/wpt? or perhaps both?