| 1018 | } |
| 1019 | |
| 1020 | static void stream_do_error_bucket(h2_stream *stream, apr_bucket *b) |
| 1021 | { |
| 1022 | int err = ((ap_bucket_error *)(b->data))->status; |
| 1023 | ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, stream->session->c1, |
| 1024 | H2_STRM_MSG(stream, "error bucket received, err=%d"), err); |
| 1025 | if (err >= 500) { |
| 1026 | err = NGHTTP2_INTERNAL_ERROR; |
| 1027 | } |
| 1028 | else if (err >= 400) { |
| 1029 | err = NGHTTP2_STREAM_CLOSED; |
| 1030 | } |
| 1031 | else { |
| 1032 | err = NGHTTP2_PROTOCOL_ERROR; |
| 1033 | } |
| 1034 | h2_stream_rst(stream, err); |
| 1035 | } |
| 1036 | |
| 1037 | static apr_status_t buffer_output_receive(h2_stream *stream) |
| 1038 | { |
no test coverage detected