diff options
author | Anders Broman <anders.broman@ericsson.com> | 2011-09-06 15:05:26 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2011-09-06 15:05:26 +0000 |
commit | fa889d6d785964453b3eb9d8fd009a2895bf7f85 (patch) | |
tree | 8530283c3be08a86b39a57dd8cc62fa492aaef35 /asn1/h245 | |
parent | 71cb9d69d2fd21763b520933dda5e50683380bc1 (diff) |
From Liam Sharp:
(Standard)H.239 – subMessageIdentifier value strings missing from H245 dissector.
Modified to be filterable.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6312
svn path=/trunk/; revision=38897
Diffstat (limited to 'asn1/h245')
-rw-r--r-- | asn1/h245/h245.cnf | 11 | ||||
-rw-r--r-- | asn1/h245/packet-h245-template.c | 18 |
2 files changed, 28 insertions, 1 deletions
diff --git a/asn1/h245/h245.cnf b/asn1/h245/h245.cnf index 11c9f54f7f..5636b79e96 100644 --- a/asn1/h245/h245.cnf +++ b/asn1/h245/h245.cnf @@ -623,9 +623,18 @@ if (h245_pi != NULL) #.FN_BODY GenericMessage/subMessageIdentifier VAL_PTR = &subMessageIdentifer guint32 subMessageIdentifer; gef_ctx_t *gefx; + + gefx = gef_ctx_get(actx->private_data); + if (gefx) { + /* If this is a standard generic message use hf_h245_subMessageIdentifier_standard to get + * the value translated and make it fileterable. + */ + if (strcmp("GenericMessage/0.0.8.239.2", gefx->key) == 0) { + hf_index = hf_h245_subMessageIdentifier_standard; + } + } %(DEFAULT_BODY)s - gefx = gef_ctx_get(actx->private_data); if (gefx) gefx->subid = ep_strdup_printf("%%u", subMessageIdentifer); #.END diff --git a/asn1/h245/packet-h245-template.c b/asn1/h245/packet-h245-template.c index a2c81201f8..4380db39db 100644 --- a/asn1/h245/packet-h245-template.c +++ b/asn1/h245/packet-h245-template.c @@ -76,6 +76,7 @@ static dissector_handle_t amr_handle = NULL; static void init_h245_packet_info(h245_packet_info *pi); static int hf_h245_pdu_type = -1; static int hf_h245Manufacturer = -1; +static int hf_h245_subMessageIdentifier_standard = -1; static int h245_tap = -1; static int h245dg_tap = -1; h245_packet_info *h245_pi=NULL; @@ -254,6 +255,18 @@ static const value_string h245_RFC_number_vals[] = { { 0, NULL } }; +/* Table 7/H.239 subMessageIdentifier values */ +static const value_string h245_h239subMessageIdentifier_vals[] = { + { 1, "flowControlReleaseRequest" }, + { 2, "flowControlReleaseResponse" }, + { 3, "presentationTokenRequest" }, + { 4, "presentationTokenResponse" }, + { 5, "presentationTokenRelease" }, + { 6, "presentationTokenIndicateOwner" }, + { 0, NULL } +}; + + /* h223 multiplex codes */ static h223_set_mc_handle_t h223_set_mc_handle = NULL; h223_mux_element *h223_me=NULL; @@ -471,6 +484,11 @@ void proto_register_h245(void) { { &hf_h245Manufacturer, { "H.245 Manufacturer", "h245.Manufacturer", FT_UINT32, BASE_HEX, VALS(H221ManufacturerCode_vals), 0, "h245.H.221 Manufacturer", HFILL }}, + { &hf_h245_subMessageIdentifier_standard, + { "subMessageIdentifier", "h245.subMessageIdentifier.standard", + FT_UINT32, BASE_DEC, VALS(h245_h239subMessageIdentifier_vals), 0, + NULL, HFILL }}, + #include "packet-h245-hfarr.c" }; |