From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

RPCGEN is an interface generator pre-compiler for Sun Microsystems ONC RPC. It uses an interface definition file to create client and server stubs in C.

RPC Language[edit]

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.

RPCL Definitions[edit]

  • Constant
  • Enumeration
  • Struct
  • Union (Note that this is not like a C union — it behaves more like a discriminated record)
  • Typedef
  • Program


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.