diff options
author | 2018-09-10 19:23:05 -0700 | |
---|---|---|
committer | 2018-09-10 19:23:05 -0700 | |
commit | 009d828341a272e05401daf32907d8f400b19a90 (patch) | |
tree | f900ba159da4462eb071f8b284c012ecedc18574 /src/core/ext/transport | |
parent | c004a8e2593bfd4f493d35bfc995b895b51c261b (diff) |
WIP. Modifying grpc_mdelem to store the static hpack table idnex
Diffstat (limited to 'src/core/ext/transport')
-rw-r--r-- | src/core/ext/transport/chttp2/transport/chttp2_transport.cc | 19 | ||||
-rw-r--r-- | src/core/ext/transport/chttp2/transport/hpack_encoder.cc | 4 |
2 files changed, 9 insertions, 14 deletions
diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc index 3d6f150ea1..9bdad94e82 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc @@ -1332,18 +1332,13 @@ static void log_metadata(const grpc_metadata_batch* md_batch, uint32_t id, bool is_client, bool is_initial) { for (grpc_linked_mdelem* md = md_batch->list.head; md != nullptr; md = md->next) { - if (grpc_metadata_batch_is_valid_mdelem_index(md->md_index)) { - gpr_log(GPR_INFO, "HTTP:%d:%s:%s: hpack table index: %d", id, - is_initial ? "HDR" : "TRL", is_client ? "CLI" : "SVR", - md->md_index); - } else { - char* key = grpc_slice_to_c_string(GRPC_MDKEY(md->md)); - char* value = grpc_slice_to_c_string(GRPC_MDVALUE(md->md)); - gpr_log(GPR_INFO, "HTTP:%d:%s:%s: %s: %s", id, is_initial ? "HDR" : "TRL", - is_client ? "CLI" : "SVR", key, value); - gpr_free(key); - gpr_free(value); - } + grpc_mdelem mdelem = grpc_get_md_from_linked_mdelem(md); + char* key = grpc_slice_to_c_string(GRPC_MDKEY(mdelem)); + char* value = grpc_slice_to_c_string(GRPC_MDVALUE(mdelem)); + gpr_log(GPR_INFO, "HTTP:%d:%s:%s: %s: %s", id, is_initial ? "HDR" : "TRL", + is_client ? "CLI" : "SVR", key, value); + gpr_free(key); + gpr_free(value); } } diff --git a/src/core/ext/transport/chttp2/transport/hpack_encoder.cc b/src/core/ext/transport/chttp2/transport/hpack_encoder.cc index 9e63144c94..6674b70152 100644 --- a/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +++ b/src/core/ext/transport/chttp2/transport/hpack_encoder.cc @@ -689,7 +689,7 @@ void grpc_chttp2_encode_header(grpc_chttp2_hpack_compressor* c, } for (size_t i = 0; i < extra_headers_size; ++i) { grpc_linked_mdelem* linked_md = extra_headers[i]; - if (grpc_metadata_batch_is_valid_mdelem_index(linked_md->md_index)) { + if (grpc_is_mdelem_index_used(linked_md)) { emit_indexed(c, linked_md->md_index, &st); } else { hpack_enc(c, linked_md->md, &st); @@ -697,7 +697,7 @@ void grpc_chttp2_encode_header(grpc_chttp2_hpack_compressor* c, } grpc_metadata_batch_assert_ok(metadata); for (grpc_linked_mdelem* l = metadata->list.head; l; l = l->next) { - if (grpc_metadata_batch_is_valid_mdelem_index(l->md_index)) { + if (grpc_is_mdelem_index_used(l)) { emit_indexed(c, l->md_index, &st); } else { hpack_enc(c, l->md, &st); |