> For the complete documentation index, see [llms.txt](https://docs.editran.onesait.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.editran.onesait.com/documentacion-editran/ibm-editran-v5.3-cics-en/tcp/configuration-file-cics-and-listener.md).

# Configuration file (CICS and Listener)

The configuration file (EZACONFG) stores information about CICS Sockets requirements. To do this, a JCL job is submitted that creates it, initializes it, calls the EZACICD macro and finally it can be modified from transaction EZAC. The configuration macro places one CICS statement for each teleprocessing monitor, and one LISTENER statement for each transaction ID we associate with each port.&#x20;

```cobol
 |   //**********************************************************//
 |   //*   THE FOLLOWING JOB DEFINES AND THEN LOADS THE VSAM    *//
 |   //*   FILE USED FOR CICS/TCP CONFIGURATION. THE JOBSTREAM  *//
 |   //*   CONSISTS OF THE FOLLOWING STEPS.                     *//
 |   //*    1). DELETE A CONFIGURATION FILE IF ONE EXISTS       *//
 |   //*    2). DEFINE THE CONFIGURATION FILE TO VSAM           *//
 |   //*    3). ASSEMBLE THE INITIALIZATION PROGRAM             *//
 |   //*    4). LINK THE INITIALIZATION PROGRAM                 *//
 |   //*    5). EXECUTE THE INITIALIZATION PROGRAM TO LOAD THE  *//
 |   //*        FILE                                            *//
 |   //**********************************************************//
 |   //CONFIG    JOB  MSGLEVEL=(1,1)
 |   //*
 |   //* 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
 |   //*
 |   //DEFILE EXEC  PGM=IDCAMS
 |   //SYSPRINT DD SYSOUT=*
 |   //SYSIN    DD *
 |     DEFINE CLUSTER (NAME(CICS.TCP.CONFIG) VOLUMES(CICSVOL) -
 |         CYL(1 1) -
 |         IMBED -
 |         RECORDSIZE(150 150) FREESPACE(0 15) -
 |         INDEXED ) -
 |         DATA ( -
 |           NAME(CICS.TCP.CONFIG.DATA) -
 |           KEYS (16 0) ) -
 |         INDEX ( -
 |           NAME(CICS.TCP.CONFIG.INDEX) )
 |   /*
 |   //* THIS STEP ASSEMBLES THE INITIALIZATION PROGRAM
 |   //PRGDEF  EXEC PGM=IEV90,PARM='OBJECT,TERM',REGION=1024K
 |   //SYSLIB    DD DISP=SHR,DSNAME=SYS1.MACLIB
 |   //            DD DISP=SHR,DSNAME=TCPV32.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,    Initialize generation environment    X
 |                  PRGNAME=EZACICDF, Name of the generated program         X
 |                  FILNAME=EZACONFG  DD name of the configuration file
 |            EZACICD TYPE=CICS,       Generate configuration record        X
 |                  APPLID=BMCIDATR,    APPLID of CICS                      X
 |                  TCPADDR=TCPIPROC,  Address space name for TCP/IP        X
 |                  NTASKS=25,        Number of reusable MVS subtasks       X
 |                  DPRTY=00,         Priority difference (CICS-Subtask)    X
 |                  CACHMIN=10,       Minimum refresh time for CACHE        X
 |                  CACHMAX=20,       Maximum refresh time for CACHE        X
 |                  CACHRES=5,        Maximum number of active resolvers    X
 |                  ERRORTD=TCPI      Name of TD queue for error messages
 |            EZACICD TYPE=LISTENER,   Create Listener Record               X
 |                  APPLID=BMCIDATR,    APPLID of CICS                      X
 |                  TRANID=ZTBA,      Use standard transaction ID           X
 |                  PORT=7777,        Use port number 7777                  X
 |                  BACKLOG=20,       Set backlog value to 20               X
 |                  TIMEOUT=30,       Set timeout value to 30 seconds       X
 |                  GTIMEOT=10,       Set givesocket timetout to 10 seconds X
 |                  TRANTRN=NO,       Translate TRNID     Yes|No            X
 |                  ACCTIME=60,       Timeout Value for ACCEPT              X
 |                  NUMSOCK=100,      Support 99 concurrent connections     X
 |                  MINMSGL=4,        Minimum input message is 4 bytes
 |            EZACICD TYPE=FINAL
 |   /*
 |   //* THIS STEP LINKS THE INITIALIZATION PROGRAM
 |   //LINK    EXEC PGM=IEWL,PARM='LIST,MAP,XREF',
 |   //             REGION=512K,COND=(4,LT)
 |   //SYSPRINT  DD SYSOUT=*
 |   //SYSUT1    DD SPACE=(CYL,(5,1)),DISP=(NEW,PASS),UNIT=SYSDA
 |   //SYSLMOD   DD DSNAME=&&LOADSET(PGM1),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 INITIALIZATION PROGRAM
 |   //FILELOAD EXEC PGM=*.LINK.SYSLMOD,COND=(4,LT)
 |   //EZACONFG DD  DSNAME=CICS.TCP.CONFIG,DISP=OLD
```

Be careful with the JCL. In the one provided by IBM, (PGM1) does not appear in SYSLMOD.&#x20;

## EZACONFG file definition (CICS parameter) <a href="#toc149150262" id="toc149150262"></a>

To view and modify the file from CICS, transaction EZAC is invoked (for example, if we have selected EZAC ALTER, it shows us the following menu):

```
EZAC,ALTER                                         
 ENTER ONE OF THE FOLLOWING                         
CICS         ===>                      Enter Yes|No
LISTENER     ===>                      Enter Yes|No 
```

If we enter YES for the CICS value, it shows us a new menu to indicate which CICS it is. In it we select that value, although by default it shows the one for the current CICS:

```
 EZAC,ALTER,CICS                                                
 ENTER ALL FIELDS                                              
APPLID       ===> BMCIDATR             APPLID of CICS System   
```

Next, it shows us a screen again with parameters that can be modified. The recommended ones to edit are:

```
EZAC,ALTER,CICS                                                      
 OVERTYPE TO ENTER                                                     
                                                                      
 APPLID       ===> BMCIDATR             APPLID of CICS System         
 TCPADDR      ===> TCPIPROC             Name of TCP Address Space     
 NTASKS       ===> 025                  Number of Reusable Tasks      
 DPRTY        ===> 000                  DPRTY value for ATTACH        
 CACHMIN      ===> 010                  Minimum Refresh Time for Cache
 CACHMAX      ===> 020                  Maximum Refresh Time for Cache
 CACHRES      ===> 005                  Maximum number of Resolvers   
 ERRORTD      ===> TCPI                 TD Queue for Error Messages   
 SMSGSUP      ===> NO                   (IN CICS TS 2.2=)
 
```

## EZACONFG file definition (Listener parameter) <a href="#toc149150263" id="toc149150263"></a>

For the transaction ID that acts as the LISTENER, we follow the same steps as before, selecting LISTENER ZTBA or others associated with program ZTBPOTCC, and we will reach a menu with the values recommended by editran. The change with respect to phase 0 is that it must be coded for native TCP connections SECEXIT = editran.   If you code LISTENER for PROXY, you must code SECEXIT=EDITR-PR.&#x20;

```
EZAC,ALTER,LISTENER                                                    
 OVERTYPE TO ENTER                                                      
                                                                        
 APPLID       ===> BMCIDATR             APPLID of CICS System           
 TRANID       ===> ZTBA                 Transaction Name of Listener    
 PORT         ===> 07777                Port Number of Listener         
 IMMEDIATE    ===> NO                   Immediate Startup   Yes|No      
 BACKLOG      ===> 020                  Backlog Value for Listener      
 NUMSOCK      ===> 100                  Number of Sockets in Listener   
 MINMSGL      ===> 004                  Minimum Message Length          
 ACCTIME      ===> 060                  Timeout Value for ACCEPT        
 GIVTIME      ===> 010                  Timeout Value for GIVESOCKET    
 REATIME      ===> 000                  Timeout Value for READ          
 FASTRD (*)   ===> YES                  Read Immediately    Yes|No       
 TRANTRN      ===> NO                   Translate TRNID     Yes|No         
 TRANUSR      ===> NO                   Translate User Data Yes|No      
 SECEXIT      ===> EDITRAN              Name of Security Exit           
```

&#x20;(\*) FASTRD DISAPPEARS IN HIGHER VERSIONS OF ZOS

Listener types:

```
EDITRAN/TCP       SECEXIT      ===> EDITRAN 
EDITRAN/Proxy     SECEXIT      ===> EDITR-PR
```

&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.editran.onesait.com/documentacion-editran/ibm-editran-v5.3-cics-en/tcp/configuration-file-cics-and-listener.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
