gtpm2m2dMigration Guide: Program Update Tapes

Transmission Control Protocol/Internet Protocol (TCP/IP) PUT 12 Enhancements (APARs PJ26890 and PJ26904)

The following section discusses the migration considerations for TCP/IP PUT 12 enhancements.

Prerequisite APARs

See the APEDIT for APARs PJ26890 and PJ26904 for information about prerequisite APARs.

Functional Overview

TCP/IP PUT 12 enhancements has support for both Internet Protocol (IP) routing tables (APAR PJ26890) for TPF Transmission Control Protocol (TCP) client applications and TCP/IP network tools (APAR PJ26904):

Architecture

IP routing tables support is only used for TPF client socket applications and is only used to determine which local IP address will be used by the client socket. The TPF 4.1 system does not provide full IP routing table support and does not route packets that it receives to other hosts or routers. UDP TPF client socket applications or raw socket applications are not supported with IP routing tables.

Operating Environment Requirements and Planning Information

To ensure that your TPF 4.1 system performs correctly with TCP/IP PUT 12 enhancements, you must establish the required operating environment. The following section describes hardware and software requirements specific to TCP/IP PUT 12 enhancements.

Operating Environment Requirements and Planning Information provides information about the minimum system configuration requirements that are necessary to operate the TPF 4.1 system. You may find it helpful to review that chapter along with the following information.

See Operating Environment Requirements and Planning Information for more information about hardware and software requirements.

Interface Changes

The following section summarizes interface changes.

C/C++ Language

The following section summarizes C/C++ language changes. This information is presented in alphabetic order by the type of C/C++ language information. See the TPF C/C++ Language Support User's Guide and TPF Application Programming for more information about the C/C++ language.

Build Scripts

Table 770 summarizes changes to the build scripts used by the build tool. This information is presented in alphabetic order by the name of the build script.

Table 770. Changes to Build Scripts for TCP/IP PUT 12 Enhancements

Build Script Type New, Changed, or No Longer Supported? Description of Change
CTFCBS DLM New Created for the ZSOCK command parser.

Dynamic Load Module (DLM) Stubs

There are no changes.

General Use C/C++ Language Header Files

Table 771 summarizes the general use C/C++ language header file changes. This information is presented in alphabetic order by the name of the general use C/C++ language header file.

General use means these header files are available for your use.

Table 771. Changes to General Use C/C++ Language Header Files for TCP/IP PUT 12 Enhancements

C/C++ Language Header File New, Changed, or No Longer Supported? Do You Need to Recompile Segments?
c$ck2sn.h Changed No
c$fva0.h Changed No

Implementation-Specific C/C++ Language Header Files (IBM Use Only)

There are no changes.

Library Interface Scripts

There are no changes.

Library Members (Object Files)

There are no changes.

Link-Edited Modules

There are no changes.

Members (Object Files)

Table 772 summarizes changes to members (object files). This information is presented in alphabetic order by the name of the member (object file).

Notes:

  1. You must recompile or reassemble a member (object file) if it has changed.

  2. You must prelink and link a dynamic load module (DLM) if it has changed.

Table 772. Changes to Members (Object Files) for TCP/IP PUT 12 Enhancements

Member (Object File) DLM/DLL New, Changed, or No Longer Supported? Type Description of Change
CLTN CLTN Changed C Language Updated the ZDTCP command.
CLTQ CLTN Changed C Language Updated the ZDTCP command.
CLTT CLTN Changed C Language Updated the ZDTCP command.
CTFC CTFC New C Language Created for the ZSOCK command parser.
FTVA03 FCTB6 Changed C Language Added #IPRTE record definition checks.

Object Code Only (OCO) Stubs

There are no changes.

Configuration Constant (CONKC) Tags

There are no changes.

Control Program Interface (CINFC) Tags

There are no changes.

Copy Members

Table 773 summarizes the copy member changes. This information is presented in alphabetic order by the name of the copy member.

Table 773. Changes to Copy Members for TCP/IP PUT 12 Enhancements

Copy Member Type CSECT Where Copy Member Is Located DLM Where CSECT Is Located New, Changed, or No Longer Supported? Description of Change
CTI5 Control Program CCCTIN Not Applicable Changed Updated to allocate IP routing table storage.
CTTO Control Program CCTCP1 Not Applicable Changed Updated with IP routing table operations.

Fixed File Records

Table 774 summarizes fixed file record changes. This information is presented in alphabetic order by the name of the fixed file record.

Table 774. Changes to Fixed File Records for TCP/IP PUT 12 Enhancements

Fixed File Record New, Changed, or No Longer Supported? Description of Change
#IPRTE New Created for the IP routing table.

Macros

The following section summarizes the macro changes. This information is presented in alphabetic order by the type of macro.

Advanced Program-to-Program Communications (APPC) Macros

There are no changes.

Communication Macros and Statements

Table 775 summarizes changes to the communication macros and statements. This information is presented in alphabetic order by the name of the SNA communication macro or statement.

Table 775. Changes to Communication Macros and Statements for TCP/IP PUT 12 Enhancements

Communication Macro or Statement New, Changed, or No Longer Supported? Do You Need to Reassemble Programs?
SNAKEY Changed Yes

Data Macros

Table 776 summarizes the data macro changes. This information is presented in alphabetic order by the name of the data macro.

Table 776. Changes to Data Macros for TCP/IP PUT 12 Enhancements

Data Macro New, Changed, or No Longer Supported? Do You Need to Reassemble Programs Using This Data Macro?
CK2SN Changed No
DLTEC Changed No
IPRTE Changed No
IPWBL Changed No

General Macros

There are no changes.

Selected Equate Macros

Table 777 summarizes the selected equate macro changes. This information is presented in alphabetic order by the name of the selected equate macro.

Table 777. Changes to Selected Equate Macros for TCP/IP PUT 12 Enhancements

Selected Equate Macro New, Changed, or No Longer Supported? Do You Need to Reassemble Programs?
CZ1SE Changed No

Structured Programming Macros (SPMs)

There are no changes.

System Initialization Program (SIP) Skeleton and Internal Macros (Inner Macros)

Table 778 summarizes the system initialization program (SIP) skeleton and internal macro changes. This information is presented in alphabetic order by the name of the SIP skeleton and internal macro. If the SIP skeleton and internal macro (inner macro) is changed, you must reassemble the SIP Stage I deck and run the appropriate job control language (JCL) jobs from the SIP Stage II deck.

Table 778. Changes to SIP Skeleton and Internal Macros for TCP/IP PUT 12 Enhancements

SIP Skeleton and Internal Macro New, Changed, or No Longer Supported?
SPPGML Changed

System Initialization Program (SIP) Stage I Macros and Statements

There are no changes.

System Initialization Program (SIP) Stage II Macros

Table 779 summarizes system initialization program (SIP) Stage II macro changes. This information is presented in alphabetic order by the name of the SIP Stage II macro. If IBMPAL is changed, you must run the system allocator (SALO) and load the new program allocation table (PAT) to the TPF 4.1 system.

Table 779. Changes to SIP Stage II Macros for TCP/IP PUT 12 Enhancements

SIP Stage II Macro New, Changed, or No Longer Supported?
IBMPAL Changed

System Communication Keypoint (SCK) Generation Macros

There are no changes.

System Macros

There are no changes.

System Macros (IBM Use Only)

Table 780 summarizes system macro changes that are for IBM use only. This information is presented in alphabetic order by the name of the system macro.

Table 780. Changes to System Macros (IBM Use Only) for TCP/IP PUT 12 Enhancements

System Macro (IBM Use Only) New, Changed, or No Longer Supported? Do You Need to Reassemble Programs?
IPSDC Changed No

Segments

Table 781 summarizes segment changes. This information is presented in alphabetic order by the name of the segment.

Table 781. Changes to Segments for TCP/IP PUT 12 Enhancements

Segment Type Link-Edit Module (Where Offline Segment Is Linked) New, Changed, or No Longer Supported? Description of Change
CSK0 Real-Time Assembler Not Applicable Changed Updated to support the MAXRTE parameter on the ZNKEY command.
CTFA Real-Time Assembler Not Applicable New CTFA processes the ZSOCK command when either the DISPLAY or CONVERT parameter is specified along with the SOCKET parameter.
CTFB Real-Time Assembler Not Applicable New CTFB processes the ZSOCK command when the INACT parameter is specified to deactivate a specified socket or a group of sockets.
CTFC C Language CTFC New CFTC is the message parser for the ZSOCK command.
CTFD Real-Time Assembler Not Applicable New CTFD processes the ZSOCK command when the SUMMARY parameter is specified to display a table of selected socket descriptors and corresponding socket block entry information.
CTFE Real-Time Assembler Not Applicable New CTFE issues messages for the ZSOCK command.
CTF2 Real-Time Assembler Not Applicable Changed CTF2 adds IP routing table entry checks to ZTTCP DELETE command processing.
CTSP Real-Time Assembler Not Applicable New CTSP processes the ZTRTE command parameters.
CTSR Real-Time Assembler Not Applicable Changed CTSR is updated to call CTSX to build the IP routing table.
CTSV Real-Time Assembler Not Applicable New CTSV adds error message processing for the ZTRTE command.
CTSX Real-Time Assembler Not Applicable New CTSX adds IP routing table processing.
CTSZ Real-Time Assembler Not Applicable New CTSZ adds parser processing for the ZTRTE command.
CTS1 Real-Time Assembler Not Applicable Changed CTS1 is updated to search the IP routing table for a local IP address before assigning the default local IP address.
CVAB Real-Time Assembler Not Applicable Changed CVAB is updated to support the ZSOCK and ZTRTE commands.

System Equates

The following section summarizes system equate changes.

SYSEQ Tags

There are no changes.

User Exits

There are no changes.

Functional and Operational Changes

The following section summarizes functional and operational changes. This information is presented in alphabetic order by the functional or operational change.

See Appendix A, "PUT 2-15 Interface Changes by Authorized Program Analysis Report (APAR)" for a summary of functional and operational changes by APAR.

Commands

Table 782 summarizes command changes. This information is presented in alphabetic order by the name of the command. See TPF Operations for a complete description of all commands.

Attention: Changes to commands can impact any automation programs you are using in your complex.

Table 782. Changes to Commands for TCP/IP PUT 12 Enhancements

Command New, Changed, or No Longer Supported? Description of Change
ZDTCP Changed Added the LOCAL parameter, allowing a local IP address to be specified with the PING or TRACEROUTE parameters.
ZNKEY Changed Added the MAXRTE parameter to specify the maximum number of IP routing table entries.
ZSOCK New Allows you to display TCP/IP native stack support socket control block information or the socket summary table, converts TCP/IP native stack support resource information, and deactivates TCP/IP native stack support resources.
ZTRTE New Allows you to manage the IP routing tables.
ZTTCP Changed Updated to prevent a local IP address from being deleted from the IP configuration table for TCP/IP native stack support when there are entries for that local address in the IP routing table.

Messages and System Errors

Table 783 summarizes message (offline and online messages) and system error changes.

The message IDs or system error numbers are listed in numeric order preceded by their alphabetic prefix. Some offline and online messages do not have a standard message ID. For these, the messages are presented in alphabetic order based on the initial message text; or for those messages that begin with variable information, the initial message text that follows that variable information. See Messages (System Error and Offline) and Messages (Online) for a complete description of all messages and system errors.

Attention: Changes to offline messages, online messages, and system errors may impact any automation programs you are using in your complex.

Table 783. Changes to Messages and System Errors for TCP/IP PUT 12 Enhancements

Message ID or System Error Number Message Type New, Changed, or No Longer Supported?
007830 System Error New
007831 System Error New
007832 System Error New
007833 System Error New
CTSX0001I Online New
CTSX0002I Online New
CTSX0003W Online New
CTSX0004E Online New
CTSX0007I Online New
CTSX0008W Online New
CTSX0009E Online New
DTCP0057E Online New
DTCP0060E Online New
DTCP0061E Online New
SOCK0010I Online New
SOCK0011I Online New
SOCK0012E Online New
SOCK0013E Online New
SOCK0014E Online New
SOCK0015E Online New
SOCK0016I Online New
SOCK0017E Online New
SOCK0018I Online New
SOCK00I9I Online New
SOCK0020E Online New
SOCK0021I Online New
SOCK0022I Online New
SOCK0023E Online New
TRTE0001I Online New
TRTE0002I Online New
TRTE0003I Online New
TRTE0004I Online New
TRTE0005I Online New
TRTE0050E Online New
TRTE0051E Online New
TRTE0053E Online New
TRTE0054E Online New
TRTE0055E Online New
TRTE0056E Online New
TRTE0057E Online New
TRTE0058E Online New
TRTE0059E Online New
TRTE0060E Online New
TRTE0061E Online New
TRTE0062E Online New
TRTE0063E Online New
TRTE0064E Online New
TRTE0065E Online New
TRTE0066E Online New
TRTE0067E Online New
TRTE0068E Online New
TRTE0069E Online New
TRTE0070E Online New
TTCP0150E Online New

Performance or Tuning Changes

There are no changes.

Storage Considerations and Changes

The MAXRTE parameter of the SNAKEY macro is used to specify the maximum number of IP routing table entries, which defines the size of the IP routing table. The maximum number of entries is 2048 for each TPF processor, and the size of an entry is 64 bytes. Table information is processor unique. Storage for the table is not allocated if TCP/IP native stack support is not defined for the given TPF processor. See TPF ACF/SNA Network Generation for more information about the SNAKEY macro.

System Initialization Program (SIP) and System Generation Changes

There are no changes.

Loading Process Changes

There are no changes.

Online System Load Changes

There are no changes.

Publication Changes

Table 784 summarizes changes to the publications in the TPF library. This information is presented in alphabetic order by the publication title. See the TPF Library Guide for more information about the TPF library.

Table 784. Changes to TPF Publications for TCP/IP PUT 12 Enhancements

Publication Title Softcopy File Name Description of Change
TPF ACF/SNA Network Generation GTPACF0B Added the MAXRTE parameter to the SNAKEY macro.
TPF Library Guide GTPDOC0C Updated with definitions for new terminology in the master glossary.
Messages (System Error and Offline) and Messages (Online) Not Applicable Updated with information about messages and system errors that were added, changed, and no longer supported for TCP/IP PUT 12 enhancements.
TPF Migration Guide: Program Update Tapes GTPMG202  Updated with migration considerations for TCP/IP PUT 12 enhancements.
TPF Operations GTPOPR0C Updated with information about the commands that were added and changed for TCP/IP PUT 12 enhancements.
TPF Program Development Support Reference GTPPDR0C Updated with a new dump tag.
TPF System Generation GTPSYG0C Updated the fixed file records.
TPF Transmission Control Protocol/Internet Protocol GTPCLW08 Updated the ioctl function with two new parameters and summarized the functions provided by the ZSOCK command.

Host System Changes

There are no changes.

Application Programming Interface (API) Changes

Database Changes

There are no changes.

Feature Changes

There are no changes.

Installation Validation

There are no changes.

Migration Scenarios

Use the following procedure to install TCP/IP PUT 12 enhancements on your TPF 4.1 system.

  1. Install program update tape (PUT) 12.
  2. Verify that TCP/IP native stack support is defined on your TPF 4.1 system. See TCP/IP Native Stack Support (APAR PJ26683) for more information about TCP/IP native stack support.
  3. Define the maximum number of entries in the IP routing table by setting the MAXRTE parameter of the SNAKEY macro in keypoint record 2 (CTK2).
  4. Define and allocate the #IPRTE fixed file record for IP routing table support. For more information on how to calculate the number of records to allocate, see TPF ACF/SNA Network Generation.
  5. Assemble CTK2 and load it to your TPF 4.1 system.
  6. Cycle the TPF 4.1 system to 1052 state or higher.
  7. Define and display IP routing table entries by entering the ZTRTE command. The IP routing table entries associate a TPF local IP address with a remote IP address or a subnet of remote IP addresses. The IP routing table entries can then be used when TPF TCP client socket applications attempt to establish a connection to remote server applications with explicitly issuing the bind function for a local IP address.
  8. Ensure that the TPF 4.1 system is in CRAS state or higher and activate TCP/IP native stack support links to channel-attached IP routers.
  9. Activate TCP client socket applications on the TPF 4.1 system to use IP routing table support.