DTCXLATE CSL Routine

DTCXLATE - READ TCP/IP TRANSLATION TABLE

 >>--DTCXLATE--,--retcode--,--reascode--,--table_name--,--a2e--,--e2a--,------>
 
 >--crlf--.------------------------------.-----------------------------------><
          |    <------------<            |
          '-,---.----------.---,--length-'
                |-AUTOLOAD-|
                |-MIXED----|
                '-QUIET----'

Call Format

The format for calling a CSL routine is language dependent. DTCXLATE is called only through DMSCSL. The routine name is the first parameter in DMSCSL's parameter list:

DTCXLATE
(input, CHAR, 8) can be passed as a literal or in a variable.

For more information and examples of the call formats, see VM/ESA: CMS Application Development Reference.

Purpose

Use the DTCXLATE routine to obtain translation information from a TCP/IP translation file (TCPXLBIN file).

Parameters

retcode
(output, INT, 4) are the variables for the return code from DTCXLATE.
reascode
(output, INT, 4) are the variables for the reason code from DTCXLATE.
table_name
(input, CHAR, 8) is a variable that contains the name of the TCP/IP translation table that is to be loaded.

The special value *BUILTIN can be specified to load the default 7-bit ASCII translation table. It is equivalent to STANDARD TCPXLBIN as shipped by IBM.

a2e
(output, CHAR, 256) is a variable to contain the 256-byte translation table to be used to convert ASCII to EBCDIC.
e2a
(output, CHAR, 256) is a variable to contain the 256-byte translation table to be used to convert EBCDIC to ASCII.
crlf
(output, CHAR, 2) is a variable to contain the EBCDIC codes that, when converted to ASCII using the e2a translation table, will generate ASCII carriage return (CR, X'0D') and line feed (LF, X'0A').

The EBCDIC equivalent of ASCII CR and LF characters is determined based on the particular translation table chosen.

AUTOLOAD
(input, CHAR, 8) indicates that STANDARD TCPXLBIN will be loaded if table_name cannot be loaded. If STANDARD cannot be loaded, then the default 7-bit translation table is loaded. This table is equivalent to STANDARD, as shipped by IBM.
MIXED
(input, CHAR, 5) indicates that table_name will not be translated to uppercase.
QUIET
(input, CHAR, 5) suppresses error messages.
length
(input, INT, 4) is a variable that contains the length of the preceding character parameter (AUTOLOAD, MIXED, and QUIET). The maximum value for this parameter is 256. For details on coding compound variables, see "Syntax Conventions for File System Management and Related VMLIB Routines" in VM/ESA: CMS Application Development Reference.

Usage Notes

  1. Only single byte character set (SBCS) translation tables can be used with this routine.

  2. TCP/IP translation tables are created using the CONVXLAT command. For more information, see "Using Translation Tables" in VM/ESA: TCP/IP Planning and Customization.

Return Codes and Reason Codes

The following table lists the return codes and reason codes from DTCXLATE.

Return CodeReason CodeDescription
00 table_name was successfully loaded.
04 table_name was not found, but STANDARD TCPXLBIN has been loaded instead.
0 8 Neither table_name nor STANDARD TCPXLBIN could be loaded. The default 7-bit translation table has been loaded instead.
8 0 table_name was found, but could not be loaded because it is not a valid TCP/IP translation file.
8 28 table_name TCPXLBIN was not found
8 n table_name TCPXLBIN could not be loaded due to an I/O error. The reason code contains the return code from the failing FSOPEN or FSREAD macro.
12 n The address or value of parameter n is not valid. retcode is parameter number 1.