Go to the documentation of this file.
25 #include "absl/strings/str_cat.h"
26 #include "absl/strings/str_format.h"
35 static const size_t frame_size = 13;
37 stats->header_bytes += frame_size;
47 *
p++ =
static_cast<uint8_t>(
id >> 24);
48 *
p++ =
static_cast<uint8_t>(
id >> 16);
49 *
p++ =
static_cast<uint8_t>(
id >> 8);
63 "invalid window update: length=%d, flags=%02x",
length,
flags));
79 while (
p->byte != 4 &&
cur !=
end) {
80 p->amount |= (
static_cast<uint32_t>(*cur)) << (8 * (3 -
p->byte));
86 s->stats.incoming.framing_bytes +=
static_cast<uint32_t>(
end -
cur);
91 uint32_t received_update =
p->amount & 0x7fffffff
u;
92 if (received_update == 0) {
98 if (t->incoming_stream_id != 0) {
std::string StrCat(const AlphaNum &a, const AlphaNum &b)
ABSL_MUST_USE_RESULT std::string StrFormat(const FormatSpec< Args... > &format, const Args &... args)
#define GRPC_CHTTP2_FRAME_WINDOW_UPDATE
#define GRPC_SLICE_MALLOC(len)
@ GRPC_CHTTP2_INITIATE_WRITE_FLOW_CONTROL_UNSTALLED_BY_UPDATE
@ GRPC_CHTTP2_INITIATE_WRITE_TRANSPORT_FLOW_CONTROL_UNSTALLED
OPENSSL_EXPORT pem_password_cb void * u
grpc_error_handle grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport *t, grpc_chttp2_stream *s, const grpc_slice &slice, int is_last)
void grpc_chttp2_mark_stream_writable(grpc_chttp2_transport *t, grpc_chttp2_stream *s)
grpc_error_handle grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, uint32_t length, uint8_t flags)
#define GRPC_SLICE_START_PTR(slice)
grpc_slice grpc_chttp2_window_update_create(uint32_t id, uint32_t window_delta, grpc_transport_one_way_stats *stats)
void RecvUpdate(uint32_t size)
#define GRPC_SLICE_END_PTR(slice)
bool grpc_chttp2_list_remove_stalled_by_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s)
void grpc_chttp2_initiate_write(grpc_chttp2_transport *t, grpc_chttp2_initiate_write_reason reason)
#define GRPC_ERROR_CREATE_FROM_CPP_STRING(desc)
void RecvUpdate(uint32_t size)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:59:22