aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--epan/dissectors/packet-gvsp.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/epan/dissectors/packet-gvsp.c b/epan/dissectors/packet-gvsp.c
index 5cf1068871..cbcabd66a1 100644
--- a/epan/dissectors/packet-gvsp.c
+++ b/epan/dissectors/packet-gvsp.c
@@ -1404,6 +1404,16 @@ static gboolean dissect_gvsp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree
/* Check for valid format types */
if (format >= 1 && format <= 6)
{
+ if(format == GVSP_PACKET_LEADER && tvb_captured_length_remaining(tvb, 8) >= 2)
+ {
+ guint32 payloadtype;
+ payloadtype = tvb_get_ntohs(tvb, 8);
+ payloadtype &= 0x3FFF;
+ if (try_val_to_str_ext(payloadtype, &payloadtypenames_ext) == NULL ){
+ return FALSE;
+ }
+ }
+
conversation = find_or_create_conversation(pinfo);
conversation_set_dissector(conversation, gvsp_handle);
dissect_gvsp(tvb, pinfo, tree, data);