DFHETC and DFHETL

DFHEIP routes all terminal control requests to DFHETC (the EXEC interface processor for terminal control). DFHETC handles BUILD_ATTACH, EXTRACT, and POINT_TC requests itself. It routes all other requests relating to an MRO or LU6.1 session to DFHZARQ except for FREE_TC and ALLOCATE_TC requests, which are routed to DFHZISP. It routes all other requests relating to an LU6.2 session to DFHETL except for ALLOCATE_TC, which is routed to DFHZISP.

DFHETL performs the following actions:
  1. Maps an application request into a form suitable for the DFHZCP and DFHZCC application request modules. This includes mapping application data into GDS records.
  2. Detects errors and returns error codes to the application.
  3. Unmaps data from GDS records.
  4. Maintains state indicators.
For ISSUE CONFIRMATION, CONNECT PROCESS, EXTRACT PROCESS, ISSUE ERROR, ISSUE ABEND, and ISSUE SIGNAL commands, DFHETL:
  1. Maps application requests into DFHLUC macro calls.
  2. Updates state indicators in the TCTTE (for example, the TCTTE indicator that shows that a CONNECT PROCESS command has been issued).
For SEND and CONVERSE commands, DFHETL:
  1. Obtains storage for the processing of outbound application data.
  2. Creates attach FMHs, if appropriate.
  3. Calls DFHZARL to transmit data.
For RECEIVE commands, DFHETL:
  1. Obtains storage for the processing of inbound data.
  2. Calls DFHZARL to receive inbound data.
  3. Extracts inbound FMHs, as appropriate.
  4. Unmaps inbound data.
  5. Validates LLs and rejects them if not valid.
  6. Manages the passing of data back to the application.
  7. If the application issues a RECEIVE NOTRUNCATE request to receive only part of the chain, retains the residual data for subsequent RECEIVE requests. DFHETL receives one complete chain of data at a time from DFHZARL.

For WAIT commands, DFHETL calls DFHZARL.

For FREE commands, DFHETL:
  1. Checks that the terminal is in the correct state to be freed.
  2. Frees the storage used to hold RECEIVE data and the ETCB.
  3. Calls DFHZISP to free the session.