rpcgen man page on 4.4BSD

Man page or keyword search:  
man Server   1065 pages
apropos Keyword Search (all sections)
Output format
4.4BSD logo
[printable version]

RPCGEN(1)		  BSD General Commands Manual		     RPCGEN(1)

     rpcgen — an RPC protocol compiler

     rpcgen infile
     rpcgen -c | -h | -l | -m [-o outfile] [infile]
     rpcgen -s transport [-o outfile] [infile]

     rpcgen is a tool that generates C code to implement an RPC protocol.  The
     input to rpcgen is a language similar to C known as RPC Language (Remote
     Procedure Call Language).	Information about the syntax of RPC Language
     is available in the Rpcgen Programming Guide.

     Available options:

     -c	     Compile into XDR routines.

     -h	     Compile into C data-definitions (a header file)

     -l	     Compile into client-side stubs.

     -m	     Compile into server-side stubs, but do not generate a main rou‐
	     tine.  This option is useful for doing callback-routines and for
	     people who need to write their own main routine to do initializa‐

     -o outfile
	     Specify the name of the output file.  If none is specified, stan‐
	     dard output is used (-c, -h, -l and -s modes only).

     -s transport
	     Compile into server-side stubs, using the given transport.	 The
	     supported transports are UDP and TCP.  This option may be invoked
	     more than once so as to compile a server that serves multiple

     rpcgen is normally used as in the first synopsis where it takes an input
     file and generates four output files. If the infile is named proto.x,
     then rpcgen will generate a header file in proto.h, XDR routines in
     proto_xdr.c, server-side stubs in proto_svc.c, and client-side stubs in

     The other synopses shown above are used when one does not want to gener‐
     ate all the output files, but only a particular one.  Their usage is
     described in the USAGE section below.

     The C-preprocessor, cpp(1), is run on all input files before they are
     actually interpreted by rpcgen, so all the cpp directives are legal
     within an rpcgen input file.  For each type of output file, rpcgen
     defines a special cpp symbol for use by the rpcgen programmer:

     RPC_HDR   defined when compiling into header files

     RPC_XDR   defined when compiling into XDR routines

     RPC_SVC   defined when compiling into server-side stubs

     RPC_CLNT  defined when compiling into client-side stubs

     In addition, rpcgen does a little preprocessing of its own.  Any line
     beginning with ‘%’ is passed directly into the output file, uninterpreted
     by rpcgen.

     You can customize some of your XDR routines by leaving those data types
     undefined.	 For every data type that is undefined, rpcgen will assume
     that there exists a routine with the name xdr_ prepended to the name of
     the undefined type.


     Rpcgen Programming Guide, Sun Microsystems.

     Nesting is not supported.	As a work-around, structures can be declared
     at top-level, and their name used inside other structures in order to
     achieve the same effect.

     Name clashes can occur when using program definitions, since the apparent
     scoping does not really apply. Most of these can be avoided by giving
     unique names for programs, versions, procedures and types.

			       December 30, 1993

List of man pages available for 4.4BSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net