blob: 969dcdce00eab7eaf74dd05e6e502057ec83001b [file] [log] [blame]
Harald Welte3b712472010-11-29 15:56:49 +01001Index: wireshark/epan/dissectors/packet-gsm_ipa.c
2===================================================================
3--- wireshark.orig/epan/dissectors/packet-gsm_ipa.c
4+++ wireshark/epan/dissectors/packet-gsm_ipa.c
5@@ -39,6 +39,7 @@
6
7 static int hf_ipa_data_len = -1;
8 static int hf_ipa_protocol = -1;
9+static int hf_ipa_hsl_debug = -1;
10
11 static int hf_ipaccess_msgtype = -1;
12 static int hf_ipaccess_attr_tag = -1;
13@@ -70,6 +71,7 @@
14 #define AIP_SCCP 0xfd
15 #define ABISIP_IPACCESS 0xfe
16 #define ABISIP_OML 0xff
17+#define HSL_DEBUG 0xdd
18
19 static const value_string ipa_protocol_vals[] = {
20 { 0x00, "RSL" },
21@@ -77,6 +79,7 @@
22 { 0xfd, "SCCP" },
23 { 0xfe, "IPA" },
24 { 0xff, "OML" },
25+ { 0xdd, "HSL Debug" },
26 { 0, NULL }
27 };
28
29@@ -184,7 +187,7 @@
30
31 while ((remaining = tvb_reported_length_remaining(tvb, offset)) > 0) {
32 proto_item *ti;
33- proto_tree *ipa_tree;
34+ proto_tree *ipa_tree = NULL;
35 guint16 len, msg_type;
36 tvbuff_t *next_tvb;
37
38@@ -238,6 +241,13 @@
39 /* hand this off to the standard MGCP dissector */
40 call_dissector(sub_handles[SUB_MGCP], next_tvb, pinfo, tree);
41 break;
42+ case HSL_DEBUG:
43+ if (tree) {
44+ proto_tree_add_item(ipa_tree, hf_ipa_hsl_debug, next_tvb, 0, len, FALSE);
45+ proto_tree_add_item(tree, hf_ipa_hsl_debug, next_tvb, 0, len, FALSE);
46+ }
47+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s ", tvb_get_stringz(next_tvb, 0, NULL));
48+ break;
49 default:
50 if (msg_type < ABISIP_RSL_MAX) {
51 /* hand this off to the standard A-bis RSL dissector */
52@@ -262,6 +272,11 @@
53 FT_UINT8, BASE_HEX, VALS(ipa_protocol_vals), 0x0,
54 "The IPA Sub-Protocol", HFILL}
55 },
56+ {&hf_ipa_hsl_debug,
57+ {"Debug Message", "ipa.hsl_debug",
58+ FT_STRING, BASE_NONE, NULL, 0,
59+ NULL, HFILL}
60+ },
61 };
62 static hf_register_info hf_ipa[] = {
63 {&hf_ipaccess_msgtype,