aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-10-15 05:21:07 +0000
committerGuy Harris <guy@alum.mit.edu>2002-10-15 05:21:07 +0000
commit86576ce6ac55614848fea0b539899c07ba7999a2 (patch)
treef4b8267442ded365149398de908005bd7a117491
parente0e71226743cabaed94a6bd090f033009e0023c9 (diff)
When registering a protocol, make sure there are no other protocols with
the same long name, short name, or filter name, and abort if there are. Fix the duplicate names that found (and another name error found while fixing one of those errors). svn path=/trunk/; revision=6425
-rw-r--r--epan/proto.c39
-rw-r--r--packet-dcerpc-dtsprovider.c186
-rw-r--r--packet-dcerpc-dtsstime_req.c176
-rw-r--r--packet-dcerpc-netlogon.c4
-rw-r--r--packet-dcerpc-ubikvote.c204
-rw-r--r--plugins/docsis/packet-regrsp.c6
6 files changed, 326 insertions, 289 deletions
diff --git a/epan/proto.c b/epan/proto.c
index fb55c190ad..b90c804a50 100644
--- a/epan/proto.c
+++ b/epan/proto.c
@@ -1,7 +1,7 @@
/* proto.c
* Routines for protocol tree
*
- * $Id: proto.c,v 1.74 2002/08/28 20:40:44 jmayer Exp $
+ * $Id: proto.c,v 1.75 2002/10/15 05:21:05 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -1992,6 +1992,33 @@ proto_item_add_subtree(proto_item *pi, gint idx) {
}
static gint
+proto_match_short_name(gconstpointer p_arg, gconstpointer name_arg)
+{
+ const protocol_t *p = p_arg;
+ const char *name = name_arg;
+
+ return g_strcasecmp(p->short_name, name_arg);
+}
+
+static gint
+proto_match_name(gconstpointer p_arg, gconstpointer name_arg)
+{
+ const protocol_t *p = p_arg;
+ const char *name = name_arg;
+
+ return g_strcasecmp(p->name, name_arg);
+}
+
+static gint
+proto_match_filter_name(gconstpointer p_arg, gconstpointer name_arg)
+{
+ const protocol_t *p = p_arg;
+ const char *name = name_arg;
+
+ return g_strcasecmp(p->filter_name, name_arg);
+}
+
+static gint
proto_compare_name(gconstpointer p1_arg, gconstpointer p2_arg)
{
const protocol_t *p1 = p1_arg;
@@ -2007,6 +2034,16 @@ proto_register_protocol(char *name, char *short_name, char *filter_name)
header_field_info *hfinfo;
int proto_id;
+ /*
+ * Make sure there's not already a protocol with any of those
+ * names. Crash if there is, as that's an error in the code,
+ * and the code has to be fixed not to register more than one
+ * protocol with the same name.
+ */
+ g_assert(g_list_find_custom(protocols, name, proto_match_name) == NULL);
+ g_assert(g_list_find_custom(protocols, short_name, proto_match_short_name) == NULL);
+ g_assert(g_list_find_custom(protocols, filter_name, proto_match_filter_name) == NULL);
+
/* Add this protocol to the list of known protocols; the list
is sorted by protocol short name. */
protocol = g_malloc(sizeof (protocol_t));
diff --git a/packet-dcerpc-dtsprovider.c b/packet-dcerpc-dtsprovider.c
index ab811850a4..e4ed8d2e12 100644
--- a/packet-dcerpc-dtsprovider.c
+++ b/packet-dcerpc-dtsprovider.c
@@ -1,93 +1,93 @@
-/* packet-dcerpc-dtsprovider.c
- * Routines for dcerpc Time server dissection
- * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
- * This information is based off the released idl files from opengroup.
- * ftp://ftp.opengroup.org/pub/dce122/dce/src/time.tar.gz time/service/dtsprovider.idl
- *
- * $Id: packet-dcerpc-dtsprovider.c,v 1.3 2002/09/18 12:12:50 sahlberg Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
- * 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.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#include <string.h>
-
-#include <glib.h>
-#include <epan/packet.h>
-#include "packet-dcerpc.h"
-#include "packet-dcerpc-dce122.h"
-
-static int proto_dtsprovider = -1;
-static int hf_dtsprovider_opnum = -1;
-static int hf_dtsprovider_status = -1;
-
-
-static gint ett_dtsprovider = -1;
-
-
-static e_uuid_t uuid_dtsprovider = { 0xbfca1238, 0x628a, 0x11c9, { 0xa0, 0x73, 0x08, 0x00, 0x2b, 0x0d, 0xea, 0x7a } };
-static guint16 ver_dtsprovider = 1;
-
-
-static dcerpc_sub_dissector dtsprovider_dissectors[] = {
- { 0, "ContactProvider", NULL, NULL},
- { 1, "ServerRequestProviderTime", NULL, NULL},
- { 0, NULL, NULL, NULL }
-};
-
-static const value_string dtsprovider_opnum_vals[] = {
- { 0, "ContactProvider" },
- { 1, "ServerRequestProviderTime" },
- { 0, NULL }
-};
-
-void
-proto_register_dtsprovider (void)
-{
- static hf_register_info hf[] = {
- { &hf_dtsprovider_opnum,
- { "Operation", "dtsprovider.opnum", FT_UINT16, BASE_DEC,
- VALS(dtsprovider_opnum_vals), 0x0, "Operation", HFILL }},
- { &hf_dtsprovider_status,
- { "Status", "dtsprovider.status", FT_UINT32, BASE_DEC,
- VALS(dce_error_vals), 0x0, "Return code, status of executed command", HFILL }}
- };
-
- static gint *ett[] = {
- &ett_dtsprovider,
- };
- proto_dtsprovider = proto_register_protocol ("Time Service Provider Interfacer", "DTSPROVIDER", "dtsprovider");
- proto_register_field_array (proto_dtsprovider, hf, array_length (hf));
- proto_register_subtree_array (ett, array_length (ett));
-}
-
-void
-proto_reg_handoff_dtsprovider (void)
-{
- /* Register the protocol as dcerpc */
- dcerpc_init_uuid (proto_dtsprovider, ett_dtsprovider, &uuid_dtsprovider, ver_dtsprovider, dtsprovider_dissectors, hf_dtsprovider_opnum);
-}
+/* packet-dcerpc-dtsprovider.c
+ * Routines for dcerpc Time server dissection
+ * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
+ * This information is based off the released idl files from opengroup.
+ * ftp://ftp.opengroup.org/pub/dce122/dce/src/time.tar.gz time/service/dtsprovider.idl
+ *
+ * $Id: packet-dcerpc-dtsprovider.c,v 1.4 2002/10/15 05:21:02 guy Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+#include <string.h>
+
+#include <glib.h>
+#include <epan/packet.h>
+#include "packet-dcerpc.h"
+#include "packet-dcerpc-dce122.h"
+
+static int proto_dtsprovider = -1;
+static int hf_dtsprovider_opnum = -1;
+static int hf_dtsprovider_status = -1;
+
+
+static gint ett_dtsprovider = -1;
+
+
+static e_uuid_t uuid_dtsprovider = { 0xbfca1238, 0x628a, 0x11c9, { 0xa0, 0x73, 0x08, 0x00, 0x2b, 0x0d, 0xea, 0x7a } };
+static guint16 ver_dtsprovider = 1;
+
+
+static dcerpc_sub_dissector dtsprovider_dissectors[] = {
+ { 0, "ContactProvider", NULL, NULL},
+ { 1, "ServerRequestProviderTime", NULL, NULL},
+ { 0, NULL, NULL, NULL }
+};
+
+static const value_string dtsprovider_opnum_vals[] = {
+ { 0, "ContactProvider" },
+ { 1, "ServerRequestProviderTime" },
+ { 0, NULL }
+};
+
+void
+proto_register_dtsprovider (void)
+{
+ static hf_register_info hf[] = {
+ { &hf_dtsprovider_opnum,
+ { "Operation", "dtsprovider.opnum", FT_UINT16, BASE_DEC,
+ VALS(dtsprovider_opnum_vals), 0x0, "Operation", HFILL }},
+ { &hf_dtsprovider_status,
+ { "Status", "dtsprovider.status", FT_UINT32, BASE_DEC,
+ VALS(dce_error_vals), 0x0, "Return code, status of executed command", HFILL }}
+ };
+
+ static gint *ett[] = {
+ &ett_dtsprovider,
+ };
+ proto_dtsprovider = proto_register_protocol ("DCE Distributed Time Service Provider", "DTSPROVIDER", "dtsprovider");
+ proto_register_field_array (proto_dtsprovider, hf, array_length (hf));
+ proto_register_subtree_array (ett, array_length (ett));
+}
+
+void
+proto_reg_handoff_dtsprovider (void)
+{
+ /* Register the protocol as dcerpc */
+ dcerpc_init_uuid (proto_dtsprovider, ett_dtsprovider, &uuid_dtsprovider, ver_dtsprovider, dtsprovider_dissectors, hf_dtsprovider_opnum);
+}
diff --git a/packet-dcerpc-dtsstime_req.c b/packet-dcerpc-dtsstime_req.c
index 498df80a88..a2238bfb28 100644
--- a/packet-dcerpc-dtsstime_req.c
+++ b/packet-dcerpc-dtsstime_req.c
@@ -1,88 +1,88 @@
-/* packet-dcerpc-dtsstime_req.c
- * Routines for Time services stuff.
- * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
- * This information is based off the released idl files from opengroup.
- * ftp://ftp.opengroup.org/pub/dce122/dce/src/time.tar.gz time/service/dtsstime_req.idl
- *
- * $Id: packet-dcerpc-dtsstime_req.c,v 1.2 2002/09/11 09:42:02 sahlberg Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
- * 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.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#include <string.h>
-
-#include <glib.h>
-#include <epan/packet.h>
-#include "packet-dcerpc.h"
-
-
-static int proto_dtsstime_req = -1;
-static int hf_dtsstime_req_opnum = -1;
-
-
-static gint ett_dtsstime_req = -1;
-
-
-static e_uuid_t uuid_dtsstime_req = { 0x019ee420, 0x682d, 0x11c9, { 0xa6, 0x07, 0x08, 0x00, 0x2b, 0x0d, 0xea, 0x7a } };
-static guint16 ver_dtsstime_req = 1;
-
-
-static dcerpc_sub_dissector dtsstime_req_dissectors[] = {
- { 0, "ClerkRequestTime", NULL, NULL},
- { 1, "ServerRequestTime", NULL, NULL},
- { 0, NULL, NULL, NULL }
-};
-
-static const value_string dtsstime_req_opnum_vals[] = {
- { 0, "ClerkRequestTime" },
- { 1, "ServerRequestTime" },
- { 0, NULL }
-};
-
-void
-proto_register_dtsstime_req (void)
-{
- static hf_register_info hf[] = {
- { &hf_dtsstime_req_opnum,
- { "Operation", "dtsstime_req.opnum", FT_UINT16, BASE_DEC, VALS(dtsstime_req_opnum_vals), 0x0, "Operation", HFILL }}
- };
-
- static gint *ett[] = {
- &ett_dtsstime_req,
- };
- proto_dtsstime_req = proto_register_protocol ("Time Service Provider Interfacer", "DTSSTIME_REQ", "dtsstime_req");
- proto_register_field_array (proto_dtsstime_req, hf, array_length (hf));
- proto_register_subtree_array (ett, array_length (ett));
-}
-
-void
-proto_reg_handoff_dtsstime_req (void)
-{
- /* Register the protocol as dcerpc */
- dcerpc_init_uuid (proto_dtsstime_req, ett_dtsstime_req, &uuid_dtsstime_req, ver_dtsstime_req, dtsstime_req_dissectors, hf_dtsstime_req_opnum);
-}
+/* packet-dcerpc-dtsstime_req.c
+ * Routines for Time services stuff.
+ * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
+ * This information is based off the released idl files from opengroup.
+ * ftp://ftp.opengroup.org/pub/dce122/dce/src/time.tar.gz time/service/dtsstime_req.idl
+ *
+ * $Id: packet-dcerpc-dtsstime_req.c,v 1.3 2002/10/15 05:21:02 guy Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+#include <string.h>
+
+#include <glib.h>
+#include <epan/packet.h>
+#include "packet-dcerpc.h"
+
+
+static int proto_dtsstime_req = -1;
+static int hf_dtsstime_req_opnum = -1;
+
+
+static gint ett_dtsstime_req = -1;
+
+
+static e_uuid_t uuid_dtsstime_req = { 0x019ee420, 0x682d, 0x11c9, { 0xa6, 0x07, 0x08, 0x00, 0x2b, 0x0d, 0xea, 0x7a } };
+static guint16 ver_dtsstime_req = 1;
+
+
+static dcerpc_sub_dissector dtsstime_req_dissectors[] = {
+ { 0, "ClerkRequestTime", NULL, NULL},
+ { 1, "ServerRequestTime", NULL, NULL},
+ { 0, NULL, NULL, NULL }
+};
+
+static const value_string dtsstime_req_opnum_vals[] = {
+ { 0, "ClerkRequestTime" },
+ { 1, "ServerRequestTime" },
+ { 0, NULL }
+};
+
+void
+proto_register_dtsstime_req (void)
+{
+ static hf_register_info hf[] = {
+ { &hf_dtsstime_req_opnum,
+ { "Operation", "dtsstime_req.opnum", FT_UINT16, BASE_DEC, VALS(dtsstime_req_opnum_vals), 0x0, "Operation", HFILL }}
+ };
+
+ static gint *ett[] = {
+ &ett_dtsstime_req,
+ };
+ proto_dtsstime_req = proto_register_protocol ("DCE Distributed Time Service Local Server", "DTSSTIME_REQ", "dtsstime_req");
+ proto_register_field_array (proto_dtsstime_req, hf, array_length (hf));
+ proto_register_subtree_array (ett, array_length (ett));
+}
+
+void
+proto_reg_handoff_dtsstime_req (void)
+{
+ /* Register the protocol as dcerpc */
+ dcerpc_init_uuid (proto_dtsstime_req, ett_dtsstime_req, &uuid_dtsstime_req, ver_dtsstime_req, dtsstime_req_dissectors, hf_dtsstime_req_opnum);
+}
diff --git a/packet-dcerpc-netlogon.c b/packet-dcerpc-netlogon.c
index 83d3fbaa16..8fd20bc374 100644
--- a/packet-dcerpc-netlogon.c
+++ b/packet-dcerpc-netlogon.c
@@ -3,7 +3,7 @@
* Copyright 2001, Tim Potter <tpot@samba.org>
* 2002 structure and command dissectors by Ronnie Sahlberg
*
- * $Id: packet-dcerpc-netlogon.c,v 1.57 2002/09/29 10:28:27 sahlberg Exp $
+ * $Id: packet-dcerpc-netlogon.c,v 1.58 2002/10/15 05:21:02 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -6341,7 +6341,7 @@ static hf_register_info hf[] = {
};
proto_dcerpc_netlogon = proto_register_protocol(
- "Microsoft Network Logon", "NETLOGON", "rpc_netlogon");
+ "Microsoft Network Logon", "RPC_NETLOGON", "rpc_netlogon");
proto_register_field_array(proto_dcerpc_netlogon, hf,
array_length(hf));
diff --git a/packet-dcerpc-ubikvote.c b/packet-dcerpc-ubikvote.c
index 23628825d6..ac947f938b 100644
--- a/packet-dcerpc-ubikvote.c
+++ b/packet-dcerpc-ubikvote.c
@@ -1,102 +1,102 @@
-/* packet-dcerpc-ubikvote.c
- *
- * Routines for dcerpc Ubik Voting routines.
- * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
- * This information is based off the released idl files from opengroup.
- * ftp://ftp.opengroup.org/pub/dce122/dce/src/file.tar.gz file/ncsubik/ubikvote_proc.idl
- *
- * $Id: packet-dcerpc-ubikvote.c,v 1.1 2002/09/12 09:06:23 sahlberg Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
- * 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.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#include <string.h>
-
-#include <glib.h>
-#include <epan/packet.h>
-#include "packet-dcerpc.h"
-
-
-static int proto_ubikvote = -1;
-static int hf_ubikvote_opnum = -1;
-
-
-static gint ett_ubikvote = -1;
-
-
-static e_uuid_t uuid_ubikvote = { 0x4d37f2dd, 0xed43, 0x0003, { 0x02, 0xc0, 0x37, 0xcf, 0x1e, 0x00, 0x00, 0x00 } };
-static guint16 ver_ubikvote = 4;
-
-
-static dcerpc_sub_dissector ubikvote_dissectors[] = {
- { 0, "Beacon", NULL, NULL},
- { 1, "Debug", NULL, NULL},
- { 2, "SDebug", NULL, NULL},
- { 3, "GetServerInterfaces", NULL, NULL},
- { 4, "GetSyncSite", NULL, NULL},
- { 5, "DebugV2", NULL, NULL},
- { 6, "SDebugV2", NULL, NULL},
- { 7, "GetSyncSiteIdentity", NULL, NULL},
- { 0, NULL, NULL, NULL }
-};
-
-static const value_string ubikvote_opnum_vals[] = {
- { 0, "Beacon" },
- { 1, "Debug" },
- { 2, "SDebug" },
- { 3, "GetServerInterfaces" },
- { 4, "GetSyncSite" },
- { 5, "DebugV2" },
- { 6, "SDebugV2" },
- { 7, "GetSyncSiteIdentity" },
- { 0, NULL }
-};
-
-void
-proto_register_ubikvote (void)
-{
- static hf_register_info hf[] = {
- { &hf_ubikvote_opnum,
- { "Operation", "ubikvote.opnum", FT_UINT16, BASE_DEC,
- VALS(ubikvote_opnum_vals), 0x0, "Operation", HFILL }}
- };
-
- static gint *ett[] = {
- &ett_ubikvote,
- };
- proto_ubikvote = proto_register_protocol ("DCE/RPC FLDB", "UBIKVOTE", "ubikvote");
- proto_register_field_array (proto_ubikvote, hf, array_length (hf));
- proto_register_subtree_array (ett, array_length (ett));
-}
-
-void
-proto_reg_handoff_ubikvote (void)
-{
- /* Register the protocol as dcerpc */
- dcerpc_init_uuid (proto_ubikvote, ett_ubikvote, &uuid_ubikvote, ver_ubikvote, ubikvote_dissectors, hf_ubikvote_opnum);
-}
+/* packet-dcerpc-ubikvote.c
+ *
+ * Routines for dcerpc Ubik Voting routines.
+ * Copyright 2002, Jaime Fournier <jafour1@yahoo.com>
+ * This information is based off the released idl files from opengroup.
+ * ftp://ftp.opengroup.org/pub/dce122/dce/src/file.tar.gz file/ncsubik/ubikvote_proc.idl
+ *
+ * $Id: packet-dcerpc-ubikvote.c,v 1.2 2002/10/15 05:21:02 guy Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+#include <string.h>
+
+#include <glib.h>
+#include <epan/packet.h>
+#include "packet-dcerpc.h"
+
+
+static int proto_ubikvote = -1;
+static int hf_ubikvote_opnum = -1;
+
+
+static gint ett_ubikvote = -1;
+
+
+static e_uuid_t uuid_ubikvote = { 0x4d37f2dd, 0xed43, 0x0003, { 0x02, 0xc0, 0x37, 0xcf, 0x1e, 0x00, 0x00, 0x00 } };
+static guint16 ver_ubikvote = 4;
+
+
+static dcerpc_sub_dissector ubikvote_dissectors[] = {
+ { 0, "Beacon", NULL, NULL},
+ { 1, "Debug", NULL, NULL},
+ { 2, "SDebug", NULL, NULL},
+ { 3, "GetServerInterfaces", NULL, NULL},
+ { 4, "GetSyncSite", NULL, NULL},
+ { 5, "DebugV2", NULL, NULL},
+ { 6, "SDebugV2", NULL, NULL},
+ { 7, "GetSyncSiteIdentity", NULL, NULL},
+ { 0, NULL, NULL, NULL }
+};
+
+static const value_string ubikvote_opnum_vals[] = {
+ { 0, "Beacon" },
+ { 1, "Debug" },
+ { 2, "SDebug" },
+ { 3, "GetServerInterfaces" },
+ { 4, "GetSyncSite" },
+ { 5, "DebugV2" },
+ { 6, "SDebugV2" },
+ { 7, "GetSyncSiteIdentity" },
+ { 0, NULL }
+};
+
+void
+proto_register_ubikvote (void)
+{
+ static hf_register_info hf[] = {
+ { &hf_ubikvote_opnum,
+ { "Operation", "ubikvote.opnum", FT_UINT16, BASE_DEC,
+ VALS(ubikvote_opnum_vals), 0x0, "Operation", HFILL }}
+ };
+
+ static gint *ett[] = {
+ &ett_ubikvote,
+ };
+ proto_ubikvote = proto_register_protocol ("DCE/RPC FLDB UBIKVOTE", "UBIKVOTE", "ubikvote");
+ proto_register_field_array (proto_ubikvote, hf, array_length (hf));
+ proto_register_subtree_array (ett, array_length (ett));
+}
+
+void
+proto_reg_handoff_ubikvote (void)
+{
+ /* Register the protocol as dcerpc */
+ dcerpc_init_uuid (proto_ubikvote, ett_ubikvote, &uuid_ubikvote, ver_ubikvote, ubikvote_dissectors, hf_ubikvote_opnum);
+}
diff --git a/plugins/docsis/packet-regrsp.c b/plugins/docsis/packet-regrsp.c
index e75e44466d..de4b0c13d3 100644
--- a/plugins/docsis/packet-regrsp.c
+++ b/plugins/docsis/packet-regrsp.c
@@ -2,7 +2,7 @@
* Routines for Registration Response Message dissection
* Copyright 2002, Anand V. Narwani <anarwani@cisco.com>
*
- * $Id: packet-regrsp.c,v 1.4 2002/09/10 19:07:39 guy Exp $
+ * $Id: packet-regrsp.c,v 1.5 2002/10/15 05:21:07 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -109,7 +109,7 @@ proto_register_docsis_regrsp (void)
/* Setup list of header fields See Section 1.6.1 for details*/
static hf_register_info hf[] = {
{&hf_docsis_regrsp,
- {"Registration Request", "docsis.regrsp",
+ {"Registration Response", "docsis.regrsp",
FT_BYTES, BASE_HEX, NULL, 0x0,
"Registration Request", HFILL}
},
@@ -132,7 +132,7 @@ proto_register_docsis_regrsp (void)
/* Register the protocol name and description */
proto_docsis_regrsp =
- proto_register_protocol ("DOCSIS Registration Requests", "DOCSIS REG-RSP",
+ proto_register_protocol ("DOCSIS Registration Responses", "DOCSIS REG-RSP",
"docsis_regrsp");
/* Required function calls to register the header fields and subtrees used */