Skip to content

daemon/http: improve handling of stream errors

Tomas Krizek requested to merge doh-stream-close-cleanup into master

The on_frame_recv() callback ins't guaranteed to be called by nghttp2. This can happen e.g. in a case when nghttp2 issues a PROTOCOL_ERROR RST_STREAM frame. Previously, it would leave the connection in a stream-processing state, making it completely useless.

While this guarantees a cleanup will be called eventually, some streams may still get ignored due to the order of various callbacks and data processing procedures. Still, it's better than the previous implementation.

Merge request reports