RPCGEN creates stubs based on information contained within an IDL file. This file is written in a language called RPCL - remote procedure call language. This language closely mimics C in style, and is designed purely for defining specification to be used for ONC RPC.
An RPC specification contains a number of definitions. These definitions are used by RPCGEN to create a header file for use by both the client and server, and client and server stubs.
- Union (Note that this is not like a C union — it behaves more like a discriminated record)
- rpcgen Programming Guide A programmers guide to developing applications using RPC
NOTE: There is an error in the first example, to properly compile and link msg_proc.c, the declaration "printmessage_1(msg)" must be = "printmessage_1_svc(msg, req)" Otherwise the command: example% cc msg_proc.c msg_svc.c -o msg_server fails due to a naming discrepancy with the rpcgen generated code.
NOTE: The same error appears in the second example. The example is also missing "#include <errno.h>" in rls.c and dir_proc.c.