Skip to: Abstract | Comments | Solution | Related Segments | Migration | Download
APAR NUMBER: PJ29020 PRODUCT: TPF4 FUNCTIONAL AREA: TCP/IP NATIVE STACK SHIPPED IN PUT: 18 ABSTRACT: TCP/IP connect() does not detect duplicate sockets. APAR CONTENTS: FEATURE TYPE STATUS NAME Base Assembler Changed source/rt/base/cts1.asm Base Assembler Changed source/rt/base/cts2.asm PREREQUISITE APARS: To be applied in order listed. Base Assembler Changed source/rt/base/cts1.asm PJ26683(11) PJ26890(12) PJ27333(13) PJ28195(16) Base Assembler Changed source/rt/base/cts2.asm PJ26683(11) PJ27187(13) PJ27333(13) PJ27932(15) PJ28493(17) COMMENTS: Without this fix, it is possible for two sockets with the same protocol and the same combinations of local IP, local port (set with bind), remote IP, and remote port (set with connect) to interfere with each other. If a second socket is created with the same protocol, and binds and connects with the same parameters as another socket, the first socket opened with this combination may receive the data intended for the second socket; or if one or both are TCP sockets, cause them to enter invalid states. There is also a bug in CTS1 (bind) where the IP hash search for the socket can enter a tight loop. SOLUTION: This fix will enforce the IP architecture restriction that only one socket at a time can have a particular combination of protocol, IP addresses, and ports. Any subsequent socket that attempts to connect (segment CTS2) with the same combination as an existing open socket will get a return code -1 and sock_errno of SOCADDRINUSE. bind (CTS1) is also updated to handle multiple sockets with one IP hash bucket correctly. DEPENDENCIES SEGMENTS TO BE ASSEMBLED OR COMPILED: None. SEGMENTS TO BE LINK EDITED: None. COREQS: None. MIGRATION CONSIDERATIONS: None. DOWNLOAD INSTRUCTIONS: http://www.ibm.com/software/htp/tpf/pages/maint -- END APAR PJ29020
Download file(s): Login once to access server, leave window open, then click on link(s) below.Source
