aboutsummaryrefslogtreecommitdiffstats
path: root/packet-ypserv.c
diff options
context:
space:
mode:
authorNathan Neulinger <nneul@umr.edu>1999-11-10 17:23:55 +0000
committerNathan Neulinger <nneul@umr.edu>1999-11-10 17:23:55 +0000
commita7fc895437bd4a330a2c9c8135a6398a665de483 (patch)
tree0a036fb7fdc3baa48712e5737a86dd04a6858d37 /packet-ypserv.c
parentabc9101b4113568229098123fa8979a417102d20 (diff)
Added stubs for various RPC routines:
portmap ypserv ypxfr ypserv bootparams Stubs currently just map procedure numbers to names. I'll add some more decoding of the actual procedure call/reply contents eventually. svn path=/trunk/; revision=998
Diffstat (limited to 'packet-ypserv.c')
-rw-r--r--packet-ypserv.c90
1 files changed, 90 insertions, 0 deletions
diff --git a/packet-ypserv.c b/packet-ypserv.c
new file mode 100644
index 0000000000..1deee7ae2c
--- /dev/null
+++ b/packet-ypserv.c
@@ -0,0 +1,90 @@
+/* packet-ypserv.c
+ * Routines for ypserv dissection
+ *
+ * $Id: packet-ypserv.c,v 1.1 1999/11/10 17:23:54 nneul Exp $
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@unicom.net>
+ * Copyright 1998 Gerald Combs
+ *
+ * Copied from packet-smb.c
+ *
+ * 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 "packet-rpc.h"
+#include "packet-ypserv.h"
+
+static int proto_ypserv = -1;
+
+/* proc number, "proc name", dissect_request, dissect_reply */
+/* NULL as function pointer means: take the generic one. */
+const vsff ypserv1_proc[] = {
+ { 0, "NULL", NULL, NULL },
+ { YPPROC_ALL, "ALL", NULL, NULL },
+ { YPPROC_CLEAR, "CLEAR", NULL, NULL },
+ { YPPROC_DOMAIN, "DOMAIN", NULL, NULL },
+ { YPPROC_DOMAIN_NONACK, "DOMAIN_NONACK", NULL, NULL },
+ { YPPROC_FIRST, "FIRST", NULL, NULL },
+ { YPPROC_MAPLIST, "MAPLIST", NULL, NULL },
+ { YPPROC_MASTER, "MASTER", NULL, NULL },
+ { YPPROC_MATCH, "MATCH", NULL, NULL },
+ { YPPROC_NEXT, "NEXT", NULL, NULL },
+ { YPPROC_ORDER, "ORDER", NULL, NULL },
+ { YPPROC_XFR, "XFR", NULL, NULL },
+ { 0, NULL, NULL, NULL }
+};
+/* end of YPServ version 1 */
+
+const vsff ypserv2_proc[] = {
+ { 0, "NULL", NULL, NULL },
+ { YPPROC_ALL, "ALL", NULL, NULL },
+ { YPPROC_CLEAR, "CLEAR", NULL, NULL },
+ { YPPROC_DOMAIN, "DOMAIN", NULL, NULL },
+ { YPPROC_DOMAIN_NONACK, "DOMAIN_NONACK", NULL, NULL },
+ { YPPROC_FIRST, "FIRST", NULL, NULL },
+ { YPPROC_MAPLIST, "MAPLIST", NULL, NULL },
+ { YPPROC_MASTER, "MASTER", NULL, NULL },
+ { YPPROC_MATCH, "MATCH", NULL, NULL },
+ { YPPROC_NEXT, "NEXT", NULL, NULL },
+ { YPPROC_ORDER, "ORDER", NULL, NULL },
+ { YPPROC_XFR, "XFR", NULL, NULL },
+ { 0, NULL, NULL, NULL }
+};
+/* end of YPServ version 2 */
+
+
+void
+proto_register_ypserv(void)
+{
+ proto_ypserv = proto_register_protocol("Yellow Pages Service", "YPSERV");
+
+ /* Register the protocol as RPC */
+ rpc_init_prog(proto_ypserv, YPSERV_PROGRAM, ETT_YPSERV);
+ /* Register the procedure tables */
+ rpc_init_proc_table(YPSERV_PROGRAM, 1, ypserv1_proc);
+ rpc_init_proc_table(YPSERV_PROGRAM, 2, ypserv2_proc);
+}
+