Jump to content

英文维基 | 中文维基 | 日文维基 | 草榴社区

RPCGEN

From Wikipedia, the free encyclopedia

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

References

[edit]

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.