diff options
author | Anders Broman <anders.broman@ericsson.com> | 2008-08-19 08:05:04 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2008-08-19 08:05:04 +0000 |
commit | bafcc127f85863fc78834dc1479764e8436b47b9 (patch) | |
tree | da5f4fb94891a209f07b3bf2edeea02d504256d3 /epan/dissectors/packet-gsm_a_rp.c | |
parent | e8ba2515def69393b68f290284f6e5433a29d0f1 (diff) | |
download | wireshark-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.c | 9 |
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; |