|
|
RPC/XDR programs are declared using the following syntax:
program-definition:
program program-ident {
version-list
} = value
version-list:
version ;
version ; version-list
version:
version version-ident {
procedure-list
} = value
procedure-list:
procedure ;
procedure ; procedure-list
procedure:
type-ident procedure-ident ( type-ident ) = value
For example:
/*
* time.x: Get or set the time. Time is represented as seconds
* since 0:00, January 1, 1970.
*/
program TIMEPROG {
version TIMEVERS {
unsigned int TIMEGET(void) = 1;
void TIMESET(unsigned) = 2;
} = 1;
} = 0x20000044;
This file compiles into these definitions in the output header file:
#define TIMEPROG 0x20000044 #define TIMEVERS 1 #define TIMEGET 1 #define TIMESET 2