diff options
author | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2018-09-17 16:41:04 +0200 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2018-09-18 19:07:02 +0000 |
commit | e7dd7099daac58ba594bcff66e91060954e51168 (patch) | |
tree | bf02914759b727c3c885bc23a9c023705f1ec3fe /epan | |
parent | e2bd314c0b180e4a293f659a1c4ea783194fd0bd (diff) |
QUIC: Add frame type on Connection Close (draft -13)
Change-Id: I94fe93236f5ff93ce15d80665ac13294d3a993ba
Ping-Bug: 13881
Reviewed-on: https://code.wireshark.org/review/29698
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-quic.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/epan/dissectors/packet-quic.c b/epan/dissectors/packet-quic.c index 8804a147cf..c8658d5baf 100644 --- a/epan/dissectors/packet-quic.c +++ b/epan/dissectors/packet-quic.c @@ -93,6 +93,7 @@ static int hf_quic_frame_type_rsts_stream_id = -1; static int hf_quic_frame_type_rsts_application_error_code = -1; static int hf_quic_frame_type_rsts_final_offset = -1; static int hf_quic_frame_type_cc_error_code = -1; +static int hf_quic_frame_type_cc_frame_type = -1; static int hf_quic_frame_type_cc_reason_phrase_length = -1; static int hf_quic_frame_type_cc_reason_phrase = -1; static int hf_quic_frame_type_ac_error_code = -1; @@ -899,7 +900,7 @@ dissect_quic_frame_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *quic_tree } break; case FT_CONNECTION_CLOSE:{ - guint32 len_reasonphrase, error_code; + guint32 len_reasonphrase, len_frametype, error_code; guint64 len_reason = 0; col_append_fstr(pinfo->cinfo, COL_INFO, ", CC"); @@ -907,6 +908,9 @@ dissect_quic_frame_type(tvbuff_t *tvb, packet_info *pinfo, proto_tree *quic_tree proto_tree_add_item_ret_uint(ft_tree, hf_quic_frame_type_cc_error_code, tvb, offset, 2, ENC_BIG_ENDIAN, &error_code); offset += 2; + proto_tree_add_item_ret_varint(ft_tree, hf_quic_frame_type_cc_frame_type, tvb, offset, -1, ENC_VARINT_QUIC, NULL, &len_frametype); + offset += len_frametype; + proto_tree_add_item_ret_varint(ft_tree, hf_quic_frame_type_cc_reason_phrase_length, tvb, offset, -1, ENC_VARINT_QUIC, &len_reason, &len_reasonphrase); offset += len_reasonphrase; @@ -2509,6 +2513,11 @@ proto_register_quic(void) FT_UINT16, BASE_DEC|BASE_EXT_STRING, &quic_error_code_vals_ext, 0x0, "Indicates the reason for closing this connection", HFILL } }, + { &hf_quic_frame_type_cc_frame_type, + { "Frame Type", "quic.frame_type.cc.frame_type", + FT_UINT64, BASE_DEC, NULL, 0x0, + "The type of frame that triggered the error", HFILL } + }, { &hf_quic_frame_type_cc_reason_phrase_length, { "Reason phrase Length", "quic.frame_type.cc.reason_phrase.length", FT_UINT64, BASE_DEC, NULL, 0x0, |