Troubleshooting
Problem
Publication updates for the z/OS V1R9 Communications Server: IP CICS Sockets Guide
Resolving The Problem
In Chapter 2. Setting up and configuring CICS TCP/IP, change the description for the AF parameter under the TYPE parameter to the following:
Specifies whether the listener that is being defined supports IPv6 partners and is able to give an IPv6 socket descriptor to an IPv6 child server program. INET6 indicates that the listener gives an IPv6 socket to the child server program. INET, the default, indicates that the listener gives an IPv4 socket to the child server program. Ensure that the child server program performing the TAKESOCKET command matches the domain of the socket that is given by the listener.
=======================================================================================
In Chapter 2. Setting up and configuring CICS TCP/IP, under TYPE parameter, TYPE=LISTENER section, change the subparameter CSTRANID to CSTRAN, and change CSSTTYPE to CSSTTYP.
Also, in Chapter 2. Setting up and configuring CICS TCP/IP, under TYPE parameter, change the CSTRANID subparameter to CSTRAN and change the CSSTTYPE subparameter to CSSTTYP.
=======================================================================================
In Chapter 2. Setting up and configuring CICS TCP/IP, under the Files definitions section, make the following change to Figure 33. DFHCSDUP commands to define EZACONFG:
DEFINE FILE(EZACONFG)
DESCRIPTION(CICS SOCKETS CONFIGURATION FILE)
GROUP(SOCKETS)
DSNAME(CICS.TCP.CONFIG) 1 LSRPOOLID(1) DSNSHARING(ALLREQS)
:
:
In the same chapter, under the Building the configuration data set with EZACICD section, in JCL for the configuration macro, remove the following sentence from the second paragraph:
See hlq.SEZAINST(EZACICFG) for a sample job stream.
Replace Figure 41. Example of JCL to define a configuration file with the following:
//CONFIG JOB (accounting,information),programmer.name, // MSGLEVEL=(1,1),MSGCLASS=A,CLASS=A //* //* z/OS Communications Server //* SMP/E distribution name: EZACICFG //* //* Licensed Materials - Property of IBM //* "Restricted Materials of IBM" //* 5694-A01 //* Copyright IBM Corp. 2000,2007 //* //* Status = CSV1R9 //* //* Function: This job defines and then loads the VSAM //* file used for the CICS TCP configuration. The job stream //* has the following steps: //* //* 1. Delete a configuration file if one exists //* 2. Define the VSAM configuration file to VSAM //* 3. Assemble the initialization program //* 4. Link the initialization program //* 5. Execute the initialization program to load the //* VSAM configuration file //* //* THIS STEP DELETES AN OLD COPY OF THE FILE //* IF ONE IS THERE. //* //DEL EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DELETE - CICS.TCP.CONFIG - PURGE - ERASE //* //* THIS STEP DEFINES THE NEW FILE //* //DEFINE EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE CLUSTER (NAME(CICS.TCP.CONFIG) VOLUMES(CICSVOL) - CYL(1 1) - RECORDSIZE(150 150) FREESPACE(0 15) - INDEXED - SHAREOPTIONS(2,3)) - DATA ( - NAME(CICS.TCP.CONFIG.DATA) - KEYS (16 0) ) - INDEX ( - NAME(CICS.TCP.CONFIG.INDEX) ) /* //* //* THIS STEP ASSEMBLES THE INITIALIZATION PROGRAM //* //ASM EXEC PGM=ASMA90,PARM='OBJECT,TERM',REGION=1024K //SYSLIB DD DISP=SHR,DSNAME=SYS1.MACLIB // DD DISP=SHR,DSNAME=TCPIP.SEZACMAC //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(5,1)) //SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSPUNCH DD DISP=SHR,DSNAME=NULLFILE //SYSLIN DD DSNAME=&&OBJSET,DISP=(MOD,PASS),UNIT=SYSDA, // SPACE=(400,(500,50)), // DCB=(RECFM=FB,BLKSIZE=400,LRECL=80) //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSIN DD * EZACICD TYPE=INITIAL, Start of macro assembly input X FILNAME=EZACICDF, DD name for configuration file X PRGNAME=EZACICDF Name of batch program to run EZACICD TYPE=CICS, CICS record definition X APPLID=CICSPROD, APPLID of CICS region not using OTE X TCPADDR=TCPIP, Job/Step name for TCP/IP X NTASKS=20, Number of subtasks X DPRTY=0, Subtask dispatch priority difference X CACHMIN=15, Minimum refresh time for cache X CACHMAX=30, Maximum refresh time for cache X CACHRES=10, Maximum number of resident resolvers X ERRORTD=CSMT, Transient data queue for error msgs X TCBLIM=0, Open API TCB Limit X OTE=NO, Open Transaction Environment X TRACE=NO, No CICS Trace records X SMSGSUP=NO STARTED Messages Suppressed? EZACICD TYPE=CICS, CICS record definition X APPLID=CICSPRDB, APPLID of CICS region using OTE X TCPADDR=TCPIP, Job/Step name for TCP/IP X CACHMIN=15, Minimum refresh time for cache X CACHMAX=30, Maximum refresh time for cache X CACHRES=10, Maximum number of resident resolvers X ERRORTD=CSMT, Transient data queue for error msgs X TCBLIM=12, Open API TCB Limit X OTE=YES, Open Transaction Environment X TRACE=NO, No CICS Trace records X SMSGSUP=NO STARTED Messages Suppressed? EZACICD TYPE=LISTENER, Listener record definition X FORMAT=STANDARD, Standard Listener X APPLID=CICSPROD, Applid of CICS region X TRANID=CSKL, Transaction name for Listener X PORT=3010, Port number for Listener X AF=INET, Listener Address Family X IMMED=YES, Listener starts up at initialization? X BACKLOG=20, Backlog value for Listener X NUMSOCK=50, # of sockets supported by Listener X MINMSGL=4, Minimum input message length X ACCTIME=30, Timeout value for Accept X GIVTIME=30, Timeout value for Givesocket X REATIME=30, Timeout value for Read X TRANTRN=YES, Is TRANUSR=YES conditional? X TRANUSR=YES, Translate user data? X SECEXIT=EZACICSE, Name of security exit program X WLMGN1=WLMGRP01, WLM group name 1 X WLMGN2=WLMGRP02, WLM group name 2 X WLMGN3=WLMGRP03 WLM group name 3 EZACICD TYPE=LISTENER, Listener record definition X FORMAT=ENHANCED, Enhanced Listener X APPLID=CICSPROD, Applid of CICS region X TRANID=CSKM, Transaction name for Listener X PORT=3011, Port number for Listener X AF=INET, Listener Address Family X IMMED=YES, Listener starts up at initialization? X BACKLOG=20, Backlog value for Listener X NUMSOCK=50, # of sockets supported by Listener X ACCTIME=30, Timeout value for Accept X GIVTIME=30, Timeout value for Givesocket X REATIME=30, Timeout value for Read X CSTRAN=TRN1, Name of child IPv4 server transaction X CSSTTYP=KC, Child server startup type X CSDELAY=000000, Child server delay interval X MSGLEN=0, Length of input message X PEEKDAT=NO, Peek option X MSGFORM=ASCII, Output message format X SECEXIT=EZACICSE, Name of security exit program X WLMGN1=WLMGRP04, WLM group name 1 X WLMGN2=WLMGRP05, WLM group name 2 X WLMGN3=WLMGRP06 WLM group name 3 EZACICD TYPE=LISTENER, Listener record definition X FORMAT=STANDARD, Standard listener X APPLID=CICSPRDB, Applid of CICS region X TRANID=CS6L, Transaction name for listener X PORT=3012, Port number for listener X AF=INET6, Listener Address Family X IMMED=YES, Listener starts up at initialization? X BACKLOG=20, Backlog value for listener X NUMSOCK=50, # of sockets supported by listener X MINMSGL=4, Minimum input message length X ACCTIME=30, Timeout value for Accept X GIVTIME=30, Timeout value for Givesocket X REATIME=30, Timeout value for Read X TRANTRN=YES, Is TRANUSR=YES conditional? X TRANUSR=YES, Translate user data? X SECEXIT=EZACICSE, Name of security exit program X WLMGN1=WLMGRP01, WLM group name 1 X WLMGN2=WLMGRP02, WLM group name 2 X WLMGN3=WLMGRP03 WLM group name 3 EZACICD TYPE=LISTENER, Listener record definition X FORMAT=ENHANCED, Enhanced listener X APPLID=CICSPRDB, Applid of CICS region X TRANID=CS6M, Transaction name for listener X PORT=3013, Port number for listener X AF=INET6, Listener Address Family X IMMED=YES, Listener starts up at initialization? X BACKLOG=20, Backlog value for listener X NUMSOCK=50, # of sockets supported by listener X ACCTIME=30, Timeout value for Accept X GIVTIME=30, Timeout value for Givesocket X REATIME=30, Timeout value for Read X CSTRAN=TRN6, Name of child IPv6 server transaction X CSSTTYP=KC, Child server startup type X CSDELAY=000000, Child server delay interval X MSGLEN=0, Length of input message X PEEKDAT=NO, Peek option X MSGFORM=ASCII, Output message format X SECEXIT=EZACICSE, Name of security exit program X WLMGN1=WLMGRP04, WLM group name 1 X WLMGN2=WLMGRP05, WLM group name 2 X WLMGN3=WLMGRP06 WLM group name 3 EZACICD TYPE=FINAL End of assembly input /* //* //* THIS STEP LINKS THE INITIALIZATION PROGRAM //* //LINK EXEC PGM=IEWL,PARM='LIST,MAP,XREF', // REGION=512K,COND=(4,LT,ASM) //SYSPRINT DD SYSOUT=* //SYSUT1 DD SPACE=(CYL,(5,1)),DISP=(NEW,PASS),UNIT=SYSDA //SYSLMOD DD DSNAME=&&LOADSET(EZACICDF),DISP=(MOD,PASS),UNIT=SYSDA, // SPACE=(TRK,(1,1,1)), // DCB=(DSORG=PO,RECFM=U,BLKSIZE=32760) //SYSLIN DD DSNAME=&&OBJSET,DISP=(MOD,PASS) NAME EZACICDF(R) //* //* THIS STEP EXECUTES THE INITIALIZATION PROGRAM //* //FILELOAD EXEC PGM=EZACICDF, // COND=((4,LT,DEFINE),(4,LT,ASM),(4,LT,LINK)) //STEPLIB DD DSN=&&LOADSET,DISP=(MOD,PASS) //EZACICDF DD DSNAME=CICS.TCP.CONFIG,DISP=OLD
In Chapter 3. Configuring the CICS Domain Name System cache, under Using the DNS cache, in Step 1: Create the initialization module, replace Figure 81. Example of defining and initializing a DNS cache file with the following:
//CACHEDEF JOB (accounting,information),programmer.name, // MSGLEVEL=(1,1),MSGCLASS=A,CLASS=A //* //* z/OS Communications Server //* SMP/E distribution name: EZACICFG //* //* Licensed Materials - Property of IBM //* "Restricted Materials of IBM" //* 5694-A01 //* Copyright IBM Corp. 2000,2007 //* //* Status = CSV1R9 //* //* Function: This job defines and then loads the VSAM //* file used for the CICS TCP cache. The job stream //* has the following steps: //* //* 1. Delete a cache file if one exists //* 2. Define the VSAM cache file to VSAM //* 3. Assemble the initialization program //* 4. Link the initialization program //* 5. Execute the initialization program to load the //* VSAM cache file //* //* THIS STEP DELETES AN OLD COPY OF THE FILE //* IF ONE IS THERE. //* //DEL EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DELETE - CICS.USER.CACHE - PURGE - ERASE //* //* THIS STEP DEFINES THE NEW FILE //* //DEFINE EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE CLUSTER (NAME(CICS.USER.CACHE) VOLUMES(CICVOL) - CYL(1 1) - RECORDSIZE(500 1000) FREESPACE(0 15) - INDEXED ) - DATA ( - NAME(CICS.USER.CACHE.DATA) - KEYS (255 0) ) - INDEX ( - NAME(CICS.USER.CACHE.INDEX) ) /* //* //* THIS STEP DEFINES THE FILE LOAD PROGRAM //* //ASM EXEC PGM=ASMA90,PARM='OBJECT,TERM',REGION=1024K //SYSLIB DD DISP=SHR,DSNAME=SYS1.MACLIB // DD DISP=SHR,DSNAME=TCPV34.SEZACMAC //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(5,1)) //SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSPUNCH DD DISP=SHR,DSNAME=NULLFILE //SYSLIN DD DSNAME=&&OBJSET,DISP=(MOD,PASS),UNIT=SYSDA, // SPACE=(400,(500,50)), // DCB=(RECFM=FB,BLKSIZE=400,LRECL=80) //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSIN DD * EZACICR TYPE=INITIAL EZACICR TYPE=RECORD,NAME=RALVM12 EZACICR TYPE=FINAL /* //LINK EXEC PGM=IEWL,PARM='LIST,MAP,XREF', // REGION=512K,COND=(4,LT,ASM) //SYSPRINT DD SYSOUT=* //SYSUT1 DD SPACE=(CYL,(5,1)),DISP=(NEW,PASS),UNIT=SYSDA //SYSLMOD DD DSNAME=&&LOADSET(GO),DISP=(MOD,PASS),UNIT=SYSDA, // SPACE=(TRK,(1,1,1)), // DCB=(DSORG=PO,RECFM=U,BLKSIZE=32760) //SYSLIN DD DSNAME=&&OBJSET,DISP=(OLD,DELETE) //* //* THIS STEP EXECUTES THE FILE LOAD PROGRAM //* //LOAD EXEC PGM=*.LINK.SYSLMOD, // COND=((4,LT,DEFINE),(4,LT,ASM),(4,LT,LINK)) //EZACICRF DD DSN=CICS.USER.CACHE,DISP=OLD
========================================================
In Appendix D. CICS sockets messages, under the description of EZY1370I, change the Module listing to:
EZACIC02
===================================================================================
In Chapter 2. Setting up and configuring CICS TCP/IP, under MVS JCL -- Modifying CICS startup, make the following change to Figure 8. JCL for CICS startup with the TCP/IP socket interface:
:
:
//***********************************************************
//* THE CICS LIBRARY (DFHRPL) CONCATENATION
//* If Language Environment is required, the SCEECICS
//* and SCEERUN datasets are needed in DFHRPL.
//* Refer to the Systems Definition Guide for
//* information on how to run with the native
//* runtime environments such as COBOL.
:
:
In Chapter 8. Sockets extended application programming interface (API), under CALL instruction application programming interface (API), add a fifth note to the list of notes in this section as follows:
5. The CICS/TS Integrated Translator is not supported by this API.
In the same section, change the following sentence:
See Figure 175
to:
See Figure 176.
Add the following section at the end of CALL instruction application programming interface (API):
Compiling programs
Change the JCL procedures used to compile, assemble, and link edit programs calling EZASOKET to include the following datasets and statements:
- Add the SEZATCP DD to the SYSLIB concatenation of the link edit step.
- Add the INCLUDE linkedit statement to the SYSIN DD card to include EZACICAL as shown in Figure 176.
//LKED.SYSIN DD *
INCLUDE SYSLIB(EZACICAL)
:
/*
Figure 176. Linkage editor JCL for including EZACICAL
In the Converting parameter descriptions section, change Figure 118 to the following:
COBOL PIC
PIC S9(4) BINARY HALFWORD BINARY VALUE
PIC S9(4) COMP HALFWORD BINARY VALUE
PIC S9(8) BINARY FULLWORD BINARY VALUE
PIC S9(8) COMP FULLWORD BINARY VALUE
PIC X(n) CHARACTER FIELD OF N BYTES
PL/1 DECLARE STATEMENT
DCL HALF FIXED BIN(15), HALFWORD BINARY VALUE
DCL FULL FIXED BIN(31), FULLWORD BINARY VALUE
DCL CHARACTER CHAR(n) CHARACTER FIELD OF n BYTES
ASSEMBLER DECLARATION
DS H HALFWORD BINARY VALUE
DS F FULLWORD BINARY VALUE
DS CLn CHARACTER FIELD OF n BYTES
In the code CALL instructions section, under IOCTL, change the first sentence of the last paragraph to:
The COMMAND SIOGIFCONF returns a variable number of network interface configurations. Figure 143 contains an example of a COBOL routine that can be used to work with such a structure.
Change the note after that sentence to:
This call can only be programmed in languages that support address pointers. Figure 143 shows a COBOL example for SIOCGIFCONF.
Change the caption for Figure 143 to: COBOL example for SIOCGIFCONF.
In Appendix A. Original COBOL application programming interface (EZACICAL), under COBOL compilation, change the first sentence to:
The procedure that you use to compile a (non-CICS TCP/IP) source COBOL CICS program can be used for CICS TCP/IP programs, but it needs some modification.
In the same appendix, under COBOL and assembler language socket calls section, change the second paragraph to:
The descriptions assume you are using either Assembler or COBOL.
=======================================================================================
In Chapter 8. Sockets extended API, in the CALL instruction API section, change Note 3 as follows:
For a PL/I program, include the following statement before your first call instruction.
DCL EZASOKET ENTRY OPTIONS(ASM,INTER) EXT;
Change Note 4 as follows:
The entry point for the CICS Sockets Extended module (EZASOKET) is within the hlq.SEZATCP(EZACICAL) load module and should be resolved from there when processed by the binder. Therefore, EZACICAL should be included explicitly in your link-edit JCL. If not included, you might experience problems, such as the CICS region waiting for the socket calls to complete. The linkage editor MAP parameter can be used to product the module map report to verify where EZASOKET is resolved.
Change Note 5 as follows:
5. The Sockets Extended module (EZASOKET) is within the hlq.SEZATCP(EZASOKET) load module and should be resolved from there when processed by the binder. The linkage editor MAP parameter can be used to product the module map report to verify where EZASOKET is resolved.
=====================================================================================
In Chapter 8. Sockets extended API, under the GETADDRINFO call section, change Figure 125. GETADDRINFO call instruction example to:
WORKING-STORAGE SECTION.
01 SOC-FUNCTION PIC X(16) VALUE IS ’GETADDRINFO’.
01 NODE PIC X(255).
01 NODELEN PIC 9(8) BINARY.
01 SERVICE PIC X(32).
01 SERVLEN PIC 9(8) BINARY.
01 AI-PASSIVE PIC 9(8) BINARY VALUE 1.
01 AI-CANONNAMEOK PIC 9(8) BINARY VALUE 2.
01 AI-NUMERICHOST PIC 9(8) BINARY VALUE 4.
01 AI-NUMERICSERV PIC 9(8) BINARY VALUE 8.
01 AI-V4MAPPED PIC 9(8) BINARY VALUE 16.
01 AI-ALL PIC 9(8) BINARY VALUE 32.
01 AI-ADDRCONFIG PIC 9(8) BINARY VALUE 64.
01 HINTS USAGE IS POINTER.
01 RES USAGE IS POINTER.
01 CANNLEN PIC 9(8) BINARY.
01 ERRNO PIC 9(8) BINARY.
01 RETCODE PIC S9(8) BINARY.
LINKAGE SECTION.
01 HINTS-ADDRINFO.
03 FLAGS PIC 9(8) BINARY.
03 AF PIC 9(8) BINARY.
03 SOCTYPE PIC 9(8) BINARY.
03 PROTO PIC 9(8) BINARY.
03 FILLER PIC 9(8) BINARY.
03 FILLER PIC X(4).
03 FILLER PIC X(4).
03 FILLER PIC 9(8) BINARY.
03 FILLER PIC X(4).
03 FILLER PIC 9(8) BINARY.
03 FILLER PIC X(4).
03 FILLER PIC 9(8) BINARY.
01 RES-ADDRINFO.
03 FLAGS PIC 9(8) BINARY.
03 AF PIC 9(8) BINARY.
03 SOCTYPE PIC 9(8) BINARY.
03 PROTO PIC 9(8) BINARY.
03 NAMELEN PIC 9(8) BINARY.
03 FILLER PIC X(4).
03 FILLER PIC X(4).
03 CANONNAME USAGE IS POINTER.
03 FILLER PIC X(4).
03 NAME USAGE IS POINTER.
03 FILLER PIC X(4).
03 NEXT USAGE IS POINTER.
In the Parameter values set by the application Keyword Description section, change the description of HINTS to:
An input parameter. If the HINTS argument is specified, it contains the address of an addrinfo structure containing input values that may direct the operation by providing options and limiting the returned information to a specific socket type, address family, or protocol. If the HINTS argument is not specified, then the information returned will be as if it referred to a structure containing the value 0 for the FLAGS, SOCTYPE and PROTO fields, and AF_UNSPEC for the AF field. Include the EZBREHST resolver macro so that your assembler program will contain the assembler mappings for the ADDR_INFO structure. The EZBREHST assembler macro is stored in the SYS1.MACLIB library. The macro defines the resolver hostent (host entry), addrinfo (address information) mappings, and services return codes. Copy definitions from EZACOBOL sample module to your COBOL program for mapping the ADDRINFO structure. The EZACOBOL sample module is stored in hlq.SEZAINST library. Copy definitions from CBLOCK sample module to your PL/I program for mapping the ADDRINFO structure. The CBLOCK sample module is stored in hlq.SEZAINST library.
Change the description of RES to:
Initially a fullword binary field. On a successful return, this field contains a pointer to a chain of one or more address information structures. The structures are allocated in the key of the calling application. Do not use or reference these structures between MVS tasks. When you are finished using the structures, explicitly free their storage by specifying the returned pointer on a FREEADDRINFO call; storage that is not explicitly freed is released when the task is ended. Include the EZBREHST resolver macro so that your assembler program will contain the assembler mappings for the ADDR_INFO structure. The EZBREHST assembler macro is stored in the SYS1.MACLIB library. Copy definitions from EZACOBOL sample module to your COBOL program for mapping the ADDRINFO structure. The EZACOBOL sample module is stored in hlq.SEZAINST library. Copy definitions from CBLOCK sample module to your PL/I program for mapping the ADDRINFO structure. The CBLOCK sample module is stored in hlq.SEZAINST library.
=======================================================================================
In Chapter 8. Sockets extended API, in the CALL instruction API section, change the line of code in Note 3 to:
DCL EZASOKET ENTRY OPTIONS(ASM,INTER) EXT;
Change Note 4 and Note 5 to:
4. The entry point for the CICS Sockets Extended module (EZASOKET) is within the hlq.SEZATCP(EZACICAL) load module and should be resolved from there when processed by the binder. Therefore EZACICAL should be included explicitly in your link-edit JCL. If not included, you could experience problems, such as the CICS region waiting for the socket calls to complete. The linkage editor MAP parameter can be used to product the module map report to verify where EZASOKET is resolved.
5. The Sockets Extended module (EZASOKET) is within the hlq.SEZATCP(EZASOKET) load module and should be resolved from there when processed by the binder. The linkage editor MAP parameter can be used to product the module map report to verify where EZASOKET is resolved.
=======================================================================================
In Chapter 4. Managing IP CICS sockets, add the following restriction after the first bulleted list in the chapter:
Restriction: The IP CICS Socket Operator transaction, EZAO, is not designed to be executed from the CICS terminal associated with the MVS system console.
=======================================================================================
In Chapter 2. Setting up and configuring CICS TCP/IP, change
NUMSOCK
The number of sockets supported by this listener. One socket is the listening socket. The others are used to pass connections to the servers using the GIVESOCKET call so, in effect, one less than this number is the maximum number of concurrent GIVESOCKET requests that can be active. The default value is 50.
to
NUMSOCK
The number of sockets supported by this listener. One socket is the listening socket. The other sockets are used to pass connections to the servers using the GIVESOCKET call so, in effect, one less than this number is the maximum number of concurrent GIVESOCKET requests that can be active. The default value is 50. The minimum value is 50, because 50 is the minimum that can be used on the INITAPI call.
======================================================================================
In Chapter 6. Application programming guide, change Figure 112. Example of COBOL layout of the listener output format - Enhanced listener to the following:
01 TCPSOCKET-PARM.
05 GIVE-TAKE-SOCKET PIC 9(8) COMP.
05 LSTN-NAME PIC X(8).
05 LSTN-SUBNAME PIC X(8).
05 CLIENT-IN-DATA PIC X(35).
05 OTE PIC X(1).
05 SOCKADDR-IN-PARM.
10 SOCK-FAMILY PIC 9(4) BINARY.
10 SOCK-DATA PIC X(26).
10 SOCK-SIN REDEFINES SOCK-DATA.
15 SOCK-SIN-PORT PIC 9(4) BINARY.
15 SOCK-SIN-ADDR PIC 9(8) BINARY.
15 FILLER PIC X(8).
15 FILLER PIC X(12).
10 SOCK-SIN6 REDEFINES SOCK-DATA.
15 SOCK-SIN6-PORT PIC 9(4) BINARY.
15 SOCK-SIN6-FLOWINFO PIC 9(8) BINARY.
15 SOCK-SIN6-ADDR.
20 FILLER PIC 9(16) BINARY.
20 FILLER PIC 9(16) BINARY.
15 SOCK-SIN6-SCOPEID PIC 9(8) BINARY.
05 FILLER PIC X(68).
05 CLIENT-IN-DATA-LENGTH PIC 9(4) BINARY.
05 CLIENT-IN-DATA-2 PIC X(xxx).
=======================================================================
In Chapter 6. Application programming guide, in the Listener input format section, change the syntax diagram to the following:
Was this topic helpful?
Document Information
Modified date:
15 June 2018
UID
swg21273075