aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
authorLuis Ontanon <luis.ontanon@gmail.com>2007-02-23 20:04:09 +0000
committerLuis Ontanon <luis.ontanon@gmail.com>2007-02-23 20:04:09 +0000
commit5b9457a1045b08add6fe136867a1e8290e8d5167 (patch)
treef27660236f5dbc60b88040ad37d15e2c9862b8e7 /plugins
parent44b6dd623ef416c82202afc9f9855afb1549642c (diff)
downloadwireshark-5b9457a1045b08add6fe136867a1e8290e8d5167.tar.gz
wireshark-5b9457a1045b08add6fe136867a1e8290e8d5167.tar.bz2
wireshark-5b9457a1045b08add6fe136867a1e8290e8d5167.zip
have megaco handing over to h248 in case it does not recognize the buffer as text encoded megaco
svn path=/trunk/; revision=20907
Diffstat (limited to 'plugins')
-rw-r--r--plugins/megaco/packet-megaco.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/megaco/packet-megaco.c b/plugins/megaco/packet-megaco.c
index 898e15ba86..d5b2d270be 100644
--- a/plugins/megaco/packet-megaco.c
+++ b/plugins/megaco/packet-megaco.c
@@ -227,6 +227,8 @@ dissect_megaco_text(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static dissector_handle_t sdp_handle;
static dissector_handle_t h245_handle;
+static dissector_handle_t h248_handle;
+
static proto_tree *top_tree;
/*
* dissect_megaco_text over TCP, there will be a TPKT header there
@@ -345,7 +347,8 @@ dissect_megaco_text(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
*/
if(!tvb_get_nstringz0(tvb,tvb_offset,sizeof(word),word)) return;
if (strncasecmp(word, "MEGACO", 6) != 0 && tvb_get_guint8(tvb, tvb_offset ) != '!'){
- return;
+ call_dissector(h248_handle,tvb,pinfo,tree);
+ return;
}
@@ -3277,6 +3280,7 @@ proto_reg_handoff_megaco(void)
sdp_handle = find_dissector("sdp");
h245_handle = find_dissector("h245dg");
+ h248_handle = find_dissector("h248");
if (!megaco_prefs_initialized) {
megaco_text_handle = create_dissector_handle(dissect_megaco_text,