summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-05-23 23:45:22 +0000
committerGuy Harris <guy@alum.mit.edu>2002-05-23 23:45:22 +0000
commit73ef38e5b704ba4bf9eee420b504ef306d52373d (patch)
tree1bc37a66ec591377a6baddd07270a9cc28ff0c6d
parent18f75ae54732fc58dd5bb19808ef79db2c8984ff (diff)
downloadwireshark-73ef38e5b704ba4bf9eee420b504ef306d52373d.tar.gz
Skeleton NSPI dissector, from Todd Sabin.
svn path=/trunk/; revision=5536
-rw-r--r--AUTHORS1
-rw-r--r--Makefile.am3
-rw-r--r--Makefile.nmake3
-rw-r--r--packet-dcerpc-nspi.c87
4 files changed, 92 insertions, 2 deletions
diff --git a/AUTHORS b/AUTHORS
index f068e1290a..376671a05c 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -648,6 +648,7 @@ Charles Levert <charles[AT]comm.polymtl.ca> {
Todd Sabin <tas[AT]webspan.net> {
DCE RPC support
Cleaned up "get_column_format_matches()"
+ Skeleton NSPI dissector
}
Eduardo Pérez Ureta <eperez[AT]dei.inf.uc3m.es> {
diff --git a/Makefile.am b/Makefile.am
index d96fdbd0d4..eb5b213b19 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,7 +1,7 @@
# Makefile.am
# Automake file for Ethereal
#
-# $Id: Makefile.am,v 1.433 2002/05/23 23:37:48 guy Exp $
+# $Id: Makefile.am,v 1.434 2002/05/23 23:45:22 guy Exp $
#
# Ethereal - Network traffic analyzer
# By Gerald Combs <gerald@ethereal.com>
@@ -109,6 +109,7 @@ DISSECTOR_SRC = \
packet-dcerpc-mgmt.c \
packet-dcerpc-ndr.c \
packet-dcerpc-netlogon.c \
+ packet-dcerpc-nspi.c \
packet-dcerpc-nt.c \
packet-dcerpc-oxid.c \
packet-dcerpc-reg.c \
diff --git a/Makefile.nmake b/Makefile.nmake
index ea68403bc3..ce5618adf2 100644
--- a/Makefile.nmake
+++ b/Makefile.nmake
@@ -1,7 +1,7 @@
## Makefile for building ethereal.exe with Microsoft C and nmake
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
#
-# $Id: Makefile.nmake,v 1.188 2002/05/23 23:37:49 guy Exp $
+# $Id: Makefile.nmake,v 1.189 2002/05/23 23:45:22 guy Exp $
include config.nmake
include <win32.mak>
@@ -60,6 +60,7 @@ DISSECTOR_SRC = \
packet-dcerpc-mgmt.c \
packet-dcerpc-ndr.c \
packet-dcerpc-netlogon.c \
+ packet-dcerpc-nspi.c \
packet-dcerpc-nt.c \
packet-dcerpc-oxid.c \
packet-dcerpc-reg.c \
diff --git a/packet-dcerpc-nspi.c b/packet-dcerpc-nspi.c
new file mode 100644
index 0000000000..45f7617ffd
--- /dev/null
+++ b/packet-dcerpc-nspi.c
@@ -0,0 +1,87 @@
+/* packet-dcerpc-nspi.c
+ * Routines for dcerpc nspi dissection
+ * Copyright 2001, Todd Sabin <tsabin@optonline.net>
+ *
+ * $Id: packet-dcerpc-nspi.c,v 1.1 2002/05/23 23:45:22 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_nspi = -1;
+
+static gint ett_nspi = -1;
+
+static e_uuid_t uuid_nspi = { 0xf5cc5a18, 0x4264, 0x101a, { 0x8c, 0x59, 0x08, 0x00, 0x2b, 0x2f, 0x84, 0x26 } };
+static guint16 ver_nspi = 56;
+
+static dcerpc_sub_dissector nspi_dissectors[] = {
+ { 0, "NspiBind", NULL, NULL },
+ { 1, "NspiUnbind", NULL, NULL },
+ { 2, "NspiUpdateStat", NULL, NULL },
+ { 3, "NspiQueryRows", NULL, NULL },
+ { 4, "NspiSeekEntries", NULL, NULL },
+ { 5, "NspiGetMatches", NULL, NULL },
+ { 6, "NspiResortRestriction", NULL, NULL },
+ { 7, "NspiDNToEph", NULL, NULL },
+ { 8, "NspiGetPropList", NULL, NULL },
+ { 9, "NspiGetProps", NULL, NULL },
+ { 10, "NspiCompareDNTs", NULL, NULL },
+ { 11, "NspiModProps", NULL, NULL },
+ { 12, "NspiGetHierarchyInfo", NULL, NULL },
+ { 13, "NspiGetTemplateInfo", NULL, NULL },
+ { 14, "NspiModLinkAttr", NULL, NULL },
+ { 15, "NspiDeleteEntries", NULL, NULL },
+ { 16, "NspiQueryColumns", NULL, NULL },
+ { 17, "NspiGetNamesFromIDs", NULL, NULL },
+ { 18, "NspiGetIDsFromNames", NULL, NULL },
+ { 19, "NspiResolveNames", NULL, NULL },
+ { 0, NULL, NULL, NULL },
+};
+
+
+void
+proto_register_nspi (void)
+{
+ static gint *ett[] = {
+ &ett_nspi,
+ };
+ proto_nspi = proto_register_protocol ("NSPI", "NSPI", "nspi");
+ proto_register_subtree_array (ett, array_length (ett));
+}
+
+void
+proto_reg_handoff_nspi (void)
+{
+ /* Register the protocol as dcerpc */
+ dcerpc_init_uuid (proto_nspi, ett_nspi, &uuid_nspi, ver_nspi, nspi_dissectors);
+}