Server Examples for BS2000

This document describes the examples provided for the C Wrapper for BS2000. It covers the following topics:


Overview

The following C RPC Server example is delivered for BS2000:

The EXAMPLE server module contains the server-side implementation of the procedure SQUARE and the function CALC.

Element Type LMS Library Comment Notes
CREATE-EXAMPLE-SERVER J EXP811.CSRV S-procedure to generate the C RPC sample server. It uses RUN-CPLUS-COMPILER.  
RUN-CPLUS-COMPILER J EXP811.CSRV S-procedure to run the CPLUS compiler.  
EXAMPLE.C S EXP811.CSRV C RPC sample server program source. 1
DEXAMPLE.C S EXP811.CSRV C RPC sample server stub source. 1
ERX.H ERXVDATA.H ERXARRAY.H S EXP811.CSRV RPC runtime header files.  
ETBCDEF.H S EXP811.CSRV C language ACI control block definitions.  

Notes:

  1. When compiling the C server example sources, the compiler may issue warnings. These warnings can be ignored.

Creating the C RPC Sample Server

Start of instruction setTo create the server EXAMPLE

  1. Parametrize S-procedure CREATE-EXAMPLE-SERVER, if needed.

    Procedure Parameter Description Default
    EXP-SRV-LIB C RPC Server examples library EXP811.CSRV

    For more details, see also the procedure headers in the delivered job control.

    Enter the following command:

    /CALL-PROCEDURE *LIB(LIB=EXP811.CSRV,ELE=CREATE-EXAMPLE-SERVER)
  2. Enter the following command:

    This procedure calls the CPLUS Compiler to generate the corresponding object modules stored as L-elements in EXP-SRV-LIB (the default is EXP811.CSRV).

There is no need to link the object modules with the BS2000 Common Runtime Environment (CRTE) library. The CRTE is loaded once dynamically in the corresponding worker task of the RPC server where the server program is executed. The C RPC sample server corresponds with the delivered CALC and SQUARE COBOL clients.