Distributed Name Service (DNS) Management Programming Manual

DNS Programming Example, COBOL85
46958 Tandem Computers Incorporated E–7
SELECT DNS-MANAGER-FILE
ASSIGN TO $ZDNS.#ZSPI
FILE STATUS IS DNS-MANAGER-STATUS.
DATA DIVISION.
FILE SECTION.
FD DNS-MANAGER-FILE
EXTERNAL
RECORD CONTAINS 6 TO 4196 CHARACTERS
LABEL RECORDS ARE OMITTED.
COPY ZDNS-DDL-MSG-BUFFER IN $FALL.ZSPIDEF.ZDNSCOB
REPLACING ZDNS-DDL-MSG-BUFFER BY DNS-IO-BUF.
WORKING-STORAGE SECTION.
*
* Manager file status
*
01 DNS-MANAGER-STATUS EXTERNAL PIC XX.
77 SPI-STATUS NATIVE-2.
77 RETCODE NATIVE-2.
COPY ZDNS-DDL-MSG-BUFFER IN $FALL.ZSPIDEF.ZDNSCOB
REPLACING ZDNS-DDL-MSG-BUFFER BY DNS-PROMPT-BUF.
EXTENDED-STORAGE SECTION.
COPY ZSPI-DDL-TOKENCODE IN $FALL.ZSPIDEF.ZSPICOB.
COPY CONSTANTS IN $FALL.ZSPIDEF.ZSPICOB.
LINKAGE SECTION.
COPY DNS-RESULT.
COPY ZDNS-DDL-MSG-BUFFER IN $FALL.ZSPIDEF.ZDNSCOB
REPLACING ZDNS-DDL-MSG-BUFFER BY DNS-REQUEST-BUF.
COPY ZDNS-DDL-MSG-BUFFER IN $FALL.ZSPIDEF.ZDNSCOB
REPLACING ZDNS-DDL-MSG-BUFFER BY DNS-RESPONSE-BUF.
77 DNS-MOVE-CONTEXT-FLAG PIC X.
88 DONT-MOVE-CONTEXT VALUE IS "N".
88 MOVE-CONTEXT VALUE IS "Y".
PROCEDURE DIVISION
USING DNS-RESULT
DNS-REQUEST-BUF
DNS-RESPONSE-BUF
DNS-MOVE-CONTEXT-FLAG.
DECLARATIVES.
MANAGER-IO-ERROR SECTION.
*
* Set DNS-RESULT to indicate that an I/O error has occured; set
* DNS-ERROR-NUMBER to GUARDIAN-ERR
*