summaryrefslogtreecommitdiff
path: root/epan/dissectors/packet-gsm_a_rp.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2008-08-19 08:05:04 +0000
committerAnders Broman <anders.broman@ericsson.com>2008-08-19 08:05:04 +0000
commitbafcc127f85863fc78834dc1479764e8436b47b9 (patch)
treeda5f4fb94891a209f07b3bf2edeea02d504256d3 /epan/dissectors/packet-gsm_a_rp.c
parente8ba2515def69393b68f290284f6e5433a29d0f1 (diff)
downloadwireshark-bafcc127f85863fc78834dc1479764e8436b47b9.tar.gz
From Neil Piercy:
RR has been split from DTAP, with common stuff going to the common files (plus a few minor knock-on consequences). Fix the broken tap: I had not realised that the register_tap call in the dissector registration actually _created_ the tap entry (not the register_tap_listener), and not just associated the tap_id returned with the tap registered by the listener. The use of separate statics by the split lead to 3 taps called "gsm_a", but only the first of which was ever found in the tap_queue_packet. Added (yet another) global for now to cope. Also attached is a patch to tap.c which simply returns the same tap_id if the register_tap is called twice with the same name - I can't see any downside to this, can you? Anyway it seemed to work with deliberately keeping multiple calls. svn path=/trunk/; revision=26039
Diffstat (limited to 'epan/dissectors/packet-gsm_a_rp.c')
-rw-r--r--epan/dissectors/packet-gsm_a_rp.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/epan/dissectors/packet-gsm_a_rp.c b/epan/dissectors/packet-gsm_a_rp.c
index 13ff5b929a..9632d5eb31 100644
--- a/epan/dissectors/packet-gsm_a_rp.c
+++ b/epan/dissectors/packet-gsm_a_rp.c
@@ -45,6 +45,7 @@
#include <epan/tap.h>
#include <epan/emem.h>
+#include "packet-sccp.h"
#include "packet-gsm_a_common.h"
/* PROTOTYPES/FORWARDS */
@@ -78,8 +79,6 @@ int hf_gsm_a_rp_elem_id = -1;
/* Initialize the subtree pointers */
static gint ett_rp_msg = -1;
-static gint ett_elems = -1;
-static gint ett_elem = -1;
static char a_bigbuf[1024];
@@ -104,7 +103,7 @@ typedef enum
DE_RP_USER_DATA, /* RP-User Data */
DE_RP_CAUSE, /* RP-Cause */
- DE_NONE /* NONE */
+ DE_RP_NONE /* NONE */
}
rp_elem_idx_t;
@@ -575,13 +574,11 @@ proto_register_gsm_a_rp(void)
};
/* Setup protocol subtree array */
-#define NUM_INDIVIDUAL_ELEMS 3
+#define NUM_INDIVIDUAL_ELEMS 1
static gint *ett[NUM_INDIVIDUAL_ELEMS +
NUM_GSM_RP_MSG];
ett[0] = &ett_rp_msg;
- ett[1] = &ett_elems;
- ett[2] = &ett_elem;
last_offset = NUM_INDIVIDUAL_ELEMS;