Wireshark mailing list archives
Re: Handling weight for PRIORITY and HEADERS frames for HTTP2 with lua
From: Alexis La Goutte <alexis.lagoutte () gmail com>
Date: Fri, 22 Dec 2017 16:04:47 +0100
Hi Alexander, No problem, you can push a fix with this enhance ! Cheers On Fri, Dec 22, 2017 at 1:19 AM, Alexander Gryanko <xpahos () gmail com> wrote:
Hello,
When I try to dissect HTTP2 messages, I found one confusing thing. Here is
a definition of fields:
{ &hf_http2_weight,
{ "Weight", "http2.headers.weight",
FT_UINT8, BASE_DEC, NULL, 0x0,
"An 8-bit weight for the identified priority", HFILL }
},
{ &hf_http2_weight_real,
{ "Weight real", "http2.headers.weight_real",
FT_UINT8, BASE_DEC, NULL, 0x0,
"Real Weight value (Add one to value)", HFILL }
},
Function to fill this fields:
/* helper function to get the priority dependence for the frames that
feature them:
HEADERS and PRIORITY */
static guint
dissect_frame_prio(tvbuff_t *tvb, proto_tree *http2_tree, guint offset,
guint8 flags)
{
proto_tree *ti;
guint8 weight;
if(flags & HTTP2_FLAGS_PRIORITY)
{
proto_tree_add_item(http2_tree, hf_http2_excl_dependency, tvb,
offset, 4, ENC_NA);
proto_tree_add_item(http2_tree, hf_http2_stream_dependency, tvb,
offset, 4, ENC_BIG_ENDIAN);
offset += 4;
proto_tree_add_item(http2_tree, hf_http2_weight, tvb, offset, 1,
ENC_BIG_ENDIAN);
weight = tvb_get_guint8(tvb, offset);
/* 6.2: Weight: An 8-bit weight for the stream; Add one to the
value to obtain a weight between 1 and 256 */
ti = proto_tree_add_uint(http2_tree, hf_http2_weight_real, tvb,
offset, 1, weight+1);
PROTO_ITEM_SET_GENERATED(ti);
offset++;
}
return offset;
}
So, when we try to access weights for PRIORITY, we need to create a field
with Field.new("http2.headers.weight"). Maybe it will be better to split
weights for PRIORITY and HEADERS to two different fields
http2.priority.weight* and http2.headers.weight*?
____________________________________________________________
_______________
Sent via: Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives: https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
mailto:wireshark-dev-request () wireshark org?subject=
unsubscribe
___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev () wireshark org> Archives: https://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-request () wireshark org?subject=unsubscribe
Current thread:
- Handling weight for PRIORITY and HEADERS frames for HTTP2 with lua Alexander Gryanko (Dec 22)
- Re: Handling weight for PRIORITY and HEADERS frames for HTTP2 with lua Alexis La Goutte (Dec 22)
