diff options
author | Nathan Neulinger <nneul@umr.edu> | 1999-11-10 17:23:55 +0000 |
---|---|---|
committer | Nathan Neulinger <nneul@umr.edu> | 1999-11-10 17:23:55 +0000 |
commit | a7fc895437bd4a330a2c9c8135a6398a665de483 (patch) | |
tree | 0a036fb7fdc3baa48712e5737a86dd04a6858d37 /packet-ypserv.c | |
parent | abc9101b4113568229098123fa8979a417102d20 (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.c | 90 |
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); +} + |