PreviousNext

The IDL File

First, the application programmer defines the RPC interface, and associated data types, using the DCE Interface Definition Language (IDL). An interface is a group of operations that a server can perform. This grouping is similar to a module or library in a conventional programming language - a group of operations defined in a single file or unit. For example, a Bank Service might perform operations to debit, credit, or read the balance of an account. Each of those operations and their parameters must be defined in the IDL file. The collection of Bank Service operations - debit, credit, read balance - together form the Bank Service interface.

The process of defining RPC operations is similar to defining the input and output of a local procedure call, except in IDL only the calling interface is defined, not the implementation of the procedure. (An IDL interface definition is similar to an ANSI C prototype definition.)

Next, the programmer compiles the IDL file using the IDL compiler. The compiler produces output in a conventional programming language, which is the C language in the DCE offering and then calls the appropriate compiler to produce object code. The output of the compilation consists of a client stub, a server stub, and a header file. The client and server stubs are routines that make the remoteness of the operation transparent to the caller or callee of the operation.