nghttp: Verbose output for received DATA chunk with current received window
This commit is contained in:
parent
24cfb52b5a
commit
58afce2382
|
@ -443,10 +443,11 @@ int verbose_on_header_callback(nghttp2_session *session,
|
|||
};
|
||||
|
||||
print_timer();
|
||||
fprintf(outfile, " (stream_id=%d, noind=%d) ", frame->hd.stream_id,
|
||||
fprintf(outfile, " recv (stream_id=%d, noind=%d) ", frame->hd.stream_id,
|
||||
(flags & NGHTTP2_NV_FLAG_NO_INDEX) != 0);
|
||||
|
||||
print_nv(&nv);
|
||||
fflush(outfile);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -509,6 +510,23 @@ int verbose_on_frame_send_callback
|
|||
return 0;
|
||||
}
|
||||
|
||||
int verbose_on_data_chunk_recv_callback
|
||||
(nghttp2_session *session, uint8_t flags, int32_t stream_id,
|
||||
const uint8_t *data, size_t len, void *user_data)
|
||||
{
|
||||
print_timer();
|
||||
auto srecv = nghttp2_session_get_stream_effective_recv_data_length
|
||||
(session, stream_id);
|
||||
auto crecv = nghttp2_session_get_effective_recv_data_length(session);
|
||||
|
||||
fprintf(outfile,
|
||||
" recv (stream_id=%d, length=%zu, srecv=%d, crecv=%d) DATA\n",
|
||||
stream_id, len, srecv, crecv);
|
||||
fflush(outfile);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
namespace {
|
||||
std::chrono::steady_clock::time_point base_tv;
|
||||
} // namespace
|
||||
|
|
|
@ -63,6 +63,10 @@ int verbose_on_unknown_frame_recv_callback(nghttp2_session *session,
|
|||
int verbose_on_frame_send_callback
|
||||
(nghttp2_session *session, const nghttp2_frame *frame, void *user_data);
|
||||
|
||||
int verbose_on_data_chunk_recv_callback
|
||||
(nghttp2_session *session, uint8_t flags, int32_t stream_id,
|
||||
const uint8_t *data, size_t len, void *user_data);
|
||||
|
||||
// Returns difference between |a| and |b| in milliseconds, assuming
|
||||
// |a| is more recent than |b|.
|
||||
template<typename TimePoint>
|
||||
|
|
|
@ -1135,6 +1135,11 @@ int on_data_chunk_recv_callback
|
|||
return 0;
|
||||
}
|
||||
|
||||
if(config.verbose) {
|
||||
verbose_on_data_chunk_recv_callback(session, flags, stream_id, data, len,
|
||||
user_data);
|
||||
}
|
||||
|
||||
if(req->status == 0) {
|
||||
nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
|
||||
stream_id, NGHTTP2_PROTOCOL_ERROR);
|
||||
|
|
Loading…
Reference in New Issue