I created a smaller version of the original h323-plugin (nearly without h245) which uses your dissector for decoding fastStart elements. It should also register your dissector for h245 conversations, but I cannot test that.
Therefore I 'd like to have the attachements checked in the cvs-tree. We will need those changes later anyway, when we create our own h225-dissector. I will mail the plugin-source to anyone, who is interested (about 188 kByte zipped). It is also necessary to change the plugin api, but because this is only for testing, I recommend to check them not in.
I tested your dissector, and as far as I can see, it already decodes fastStart elements without any errors. However all fastStart elements start with dissect_h245_OpenLogicalChannel() so I can only tell you, that at least this function and its dependencies seem to be OK.
Very good work.
Regards,
Lars
Index: ethereal/packet-h245.c
===================================================================
RCS file: /cvsroot/ethereal/packet-h245.c,v
retrieving revision 1.10
diff -u -r1.10 packet-h245.c
--- ethereal/packet-h245.c 8 Jul 2003 11:39:45 -0000 1.10
+++ ethereal/packet-h245.c 8 Jul 2003 16:00:56 -0000
@@ -19250,7 +19250,7 @@
dissect_h245_EncryptionSync },
{ NULL, 0, 0, NULL }
};
-static int
+int
dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo,
proto_tree *tree)
{
offset=dissect_per_sequence(tvb, offset, pinfo, tree,
hf_h245_OpenLogicalChannel, ett_h245_OpenLogicalChannel, OpenLogicalChannel_sequence);
@@ -19995,7 +19995,7 @@
dissect_h245_IndicationMessage },
{ 0, NULL, 0, NULL }
};
-static void
+void
dissect_h245_MultimediaSystemControlMessage(tvbuff_t *tvb, packet_info *pinfo,
proto_tree *tree)
{
proto_item *it;/* packet-h245.h * Routines for H.245 packet dissection * 2003 Ronnie Sahlberg * * $Id: $ * * Ethereal - Network traffic analyzer * By Gerald Combs <[EMAIL PROTECTED]> * Copyright 1998 Gerald Combs * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
extern void dissect_h245_MultimediaSystemControlMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree); extern int dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree);
