[BACK]Return to rpc_util.h CVS log [TXT][DIR] Up to [local] / src / usr.bin / rpcgen

Annotation of src/usr.bin/rpcgen/rpc_util.h, Revision 1.1

1.1     ! deraadt     1: /*     $NetBSD: rpc_util.h,v 1.3 1995/06/11 21:50:10 pk Exp $  */
        !             2: /*
        !             3:  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
        !             4:  * unrestricted use provided that this legend is included on all tape
        !             5:  * media and as a part of the software program in whole or part.  Users
        !             6:  * may copy or modify Sun RPC without charge, but are not authorized
        !             7:  * to license or distribute it to anyone else except as part of a product or
        !             8:  * program developed by the user or with the express written consent of
        !             9:  * Sun Microsystems, Inc.
        !            10:  *
        !            11:  * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
        !            12:  * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
        !            13:  * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
        !            14:  *
        !            15:  * Sun RPC is provided with no support and without any obligation on the
        !            16:  * part of Sun Microsystems, Inc. to assist in its use, correction,
        !            17:  * modification or enhancement.
        !            18:  *
        !            19:  * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
        !            20:  * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
        !            21:  * OR ANY PART THEREOF.
        !            22:  *
        !            23:  * In no event will Sun Microsystems, Inc. be liable for any lost revenue
        !            24:  * or profits or other special, indirect and consequential damages, even if
        !            25:  * Sun has been advised of the possibility of such damages.
        !            26:  *
        !            27:  * Sun Microsystems, Inc.
        !            28:  * 2550 Garcia Avenue
        !            29:  * Mountain View, California  94043
        !            30:  */
        !            31:
        !            32: /*      @(#)rpc_util.h  1.5  90/08/29  (C) 1987 SMI   */
        !            33:
        !            34: /*
        !            35:  * rpc_util.h, Useful definitions for the RPC protocol compiler
        !            36:  */
        !            37:
        !            38: #define alloc(size)            (void *)malloc((unsigned)(size))
        !            39: #define ALLOC(object)   (object *) malloc(sizeof(object))
        !            40:
        !            41: #define s_print        (void) sprintf
        !            42: #define f_print (void) fprintf
        !            43:
        !            44: struct list {
        !            45:        definition *val;
        !            46:        struct list *next;
        !            47: };
        !            48: typedef struct list list;
        !            49:
        !            50: #define PUT 1
        !            51: #define GET 2
        !            52:
        !            53: /*
        !            54:  * Global variables
        !            55:  */
        !            56: #define MAXLINESIZE 1024
        !            57: extern char curline[MAXLINESIZE];
        !            58: extern char *where;
        !            59: extern int linenum;
        !            60:
        !            61: extern char *infilename;
        !            62: extern FILE *fout;
        !            63: extern FILE *fin;
        !            64:
        !            65: extern list *defined;
        !            66:
        !            67:
        !            68: extern bas_type *typ_list_h;
        !            69: extern bas_type *typ_list_t;
        !            70:
        !            71: /*
        !            72:  * All the option flags
        !            73:  */
        !            74: extern int inetdflag;
        !            75: extern int pmflag;
        !            76: extern int tblflag;
        !            77: extern int logflag;
        !            78: extern int newstyle;
        !            79: extern int Cflag;     /* C++ flag */
        !            80: extern int tirpcflag; /* flag for generating tirpc code */
        !            81: extern int inline; /* if this is 0, then do not generate inline code */
        !            82: extern int callerflag;
        !            83:
        !            84: /*
        !            85:  * Other flags related with inetd jumpstart.
        !            86:  */
        !            87: extern int indefinitewait;
        !            88: extern int exitnow;
        !            89: extern int timerflag;
        !            90:
        !            91: extern int nonfatalerrors;
        !            92:
        !            93: /*
        !            94:  * rpc_util routines
        !            95:  */
        !            96: void storeval();
        !            97:
        !            98: #define STOREVAL(list,item)    \
        !            99:        storeval(list,item)
        !           100:
        !           101: definition *findval();
        !           102:
        !           103: #define FINDVAL(list,item,finder) \
        !           104:        findval(list, item, finder)
        !           105:
        !           106: char *fixtype __P((char *));
        !           107: char *stringfix __P((char *));
        !           108: char *locase __P((char *));
        !           109: void pvname_svc __P((char *, char *));
        !           110: void pvname __P((char *, char *));
        !           111: void ptype __P((char *, char *, int));
        !           112: int isvectordef __P((char *, relation));
        !           113: int streq __P((char *, char *));
        !           114: void error __P((char *));
        !           115: void tabify __P((FILE *, int));
        !           116: void record_open __P((char *));
        !           117: bas_type *find_type __P((char *));
        !           118: char *make_argname __P((char *, char *));
        !           119: /*
        !           120:  * rpc_cout routines
        !           121:  */
        !           122: void emit __P((definition *));
        !           123:
        !           124: /*
        !           125:  * rpc_hout routines
        !           126:  */
        !           127: void print_datadef __P((definition *));
        !           128: void print_funcdef __P((definition *));
        !           129:
        !           130: /*
        !           131:  * rpc_svcout routines
        !           132:  */
        !           133: void write_most __P((char *, int, int));
        !           134: void write_rest __P((void));
        !           135: void write_programs __P((char *));
        !           136: void write_svc_aux __P((int));
        !           137: void write_inetd_register __P((char *));
        !           138: void write_netid_register __P((char *));
        !           139: void write_nettype_register __P((char *));
        !           140: /*
        !           141:  * rpc_clntout routines
        !           142:  */
        !           143: void write_stubs __P((void));
        !           144: void printarglist __P((proc_list *, char *, char *));
        !           145:
        !           146:
        !           147: /*
        !           148:  * rpc_tblout routines
        !           149:  */
        !           150: void write_tables __P((void));
        !           151:
        !           152: /*
        !           153:  * rpc_sample routines
        !           154:  */
        !           155: void write_sample_svc __P((definition *));
        !           156: int write_sample_clnt __P((definition *));
        !           157: void write_sample_clnt_main __P((void));