NETLIB Release Notes February, 2002 This file contains the release notes for the NETLIB TCP/IP interface library. It describes any last-minute features, restrictions, changes, or additions made to NETLIB. Revision/Update Information: This is a revised manual. Operating System and Version: VAX/VMS V5.5 or later; OpenVMS Alpha V6.2 or later Software Version: NETLIB V2.3D Matthew Madison MadGoat Software ________________________ 04 February 2002 DISCLAIMER: The author, the author's employer, and MadGoat Software make no representations or warranties with respect to the contents hereof and specifically disclaim any implied warranties of merchantability or fitness for any particular purpose. AXP, DEC, ULTRIX, VAX, VMS, and OpenVMS are trademarks of Digital Equipment Corporation. UNIX is a trademark of Unix System Laboratories, Inc. MultiNet and TCPware are registered trademarks of Process Software Corporation. PathWay is a registered trademark of Attachmate, Inc. __________ Copyright ©2002 MadGoat Software. All Rights Reserved. _______________________________________________________ Contents _______________________________________________________ CHAPTER 1 UPDATE HISTORY 1-1 _________________________________________________ 1.1 UPDATES IN NETLIB V2.3D 1-1 _________________________________________________ 1.2 UPDATES IN V2.3C 1-1 _________________________________________________ 1.3 UPDATES IN V2.3B 1-2 _________________________________________________ 1.4 UPDATES IN V2.3A 1-2 _________________________________________________ 1.5 UPDATES IN V2.2G 1-2 _________________________________________________ 1.6 UPDATES IN V2.2F 1-3 _________________________________________________ 1.7 UPDATES IN V2.2E 1-3 _________________________________________________ 1.8 UPDATES IN V2.2D 1-3 _________________________________________________ 1.9 UPDATES IN V2.2C 1-3 _________________________________________________ 1.10 UPDATES IN V2.2B 1-4 _________________________________________________ 1.11 UPDATES IN V2.2A 1-4 iii Contents _________________________________________________ 1.12 UPDATES IN V2.2 1-4 _________________________________________________ 1.13 UPDATES IN V2.1B 1-5 _________________________________________________ 1.14 UPDATES IN V2.1A 1-5 _________________________________________________ 1.15 UPDATES IN V2.1 1-6 _______________________________________________________ CHAPTER 2 KNOWN BUGS, RESTRICTIONS 2-1 iv _______________________________________________________ 1 Update History This chapter describes the NETLIB update history. __________________________________________________________________ 1.1 Updates in NETLIB V2.3D NETLIB V2.3D is a maintenance release that includes the following fixes: o The fix to NETLIB_STRTOADDR provided in V2.3C introduced another problem, which has been corrected. o The retry count for DNS queries was not being initialized on a per-nameserver basis. __________________________________________________________________ 1.2 Updates in V2.3C V2.3C was a maintenance release that included the following fixes: o NETLIB_STRTOADDR would successfully translate strings containing a dotted-decimal address followed by extra characters; these are now rejected. o A new logical name, NETLIB_DNS_QUERY_TIMEOUT, is now supported for specifying the length of time NETLIB will wait for a DNS query to time out. This is to work around timeout problems that can occur when a system's designated DNS servers are not local and respond too slowly for the default timeout. The logical name may be defined in the process, job, group, or system logical name table, and should have a translation string that is a valid VMS delta time (e.g., "0 00:00:15"). In addition the default DNS 1-1 Update History query timeout has been raised to 10 seconds from its original 5 seconds in previous versions. __________________________________________________________________ 1.3 Updates in V2.3B V2.3B fixed the returned-length argument to NETLIB_ READLINE so that it returns the actual number of characters copied to the returned string, rather than the length of the line read from the TCP connection (which could be greater than the number of bytes copied if the descriptor for the string is fixed- length). __________________________________________________________________ 1.4 Updates in V2.3A V2.3A changed the installation procedure for NETLIB, installing executable images, rather than linking the images at installation time. In addition, V2.3A contained changes to the DNS_QUERY and DNS_MXLOOK routines to improve their handling of DNS error reply codes. __________________________________________________________________ 1.5 Updates in V2.2G V2.2G is a maintenance release that includes the following fixes: o Added more armor-plating in routines that could be executed at both AST and non-AST level and touch shared data structures. o Updated NETLIB_SRI.C to prevent conflicts with new VMS IO$_XXX definitions. o Fixed the Bookreader library definition so that the appropriate text shows up in its display. 1-2 Update History __________________________________________________________________ 1.6 Updates in V2.2F V2.2F is a maintenance release which adds support for Digital TCP/IP Services for OpenVMS V5.0 and includes the following fixes: o NETLIB_DNS_EXPANDNAME has been fixed to properly expand the root domain. o NETLIB_DNS_MXLOOK has been changed to ignore MX records that point to the root domain. o The NETLIB_USER_INSTALL.COM procedure has been updated to include the correct linker option files when linking NETLIB images, so that the image identification and global section match information are correct. __________________________________________________________________ 1.7 Updates in V2.2E NETLIB V2.3D is a maintenance release which fixes a problem with the NETLIB_ADDRESS_TO_NAME call on TCPware systems. __________________________________________________________________ 1.8 Updates in V2.2D NETLIB V2.2D was a maintenance release which fixes a problem in the interpretation of DNS return codes in the NETLIB_DNS_MX_LOOKUP routine. __________________________________________________________________ 1.9 Updates in V2.2C NETLIB V2.2C was a maintenance release which included a fix for an access violation that would occur in the implementation of NETLIB_NAME_TO_ADDRESS for CMU TCP/IP. 1-3 Update History __________________________________________________________________ 1.10 Updates in V2.2B o The TCP/IP package check has been refined to deal with the presence of an INET0 device in recent versions of Digital's TCP/IP Services for OpenVMS. o The installation procedure now performs a version check and asks for confirmation before installing an upgrade or downgrade to the currently installed version. o On systems running PathWay, NETLIB_GET_HOSTNAME will now automatically attach the domain name (from the INET_DOMAIN_NAME logical name) to the host name (from the gethostname() socket library call) if it does not already contain a dot. __________________________________________________________________ 1.11 Updates in V2.2A NETLIB V2.2A included the following change: o NETLIB_ADDRESS_TO_NAME has been changed to work around a bug in TCPware's UCX $QIO interface. The bug caused all address-to-name lookups to fail with an ENDOFFILE status. __________________________________________________________________ 1.12 Updates in V2.2 The following changes were included in V2.2: o A new flag, NETLIB_M_FLUSH, has been added to the NETLIB_READLINE routine, to provide a way of getting at any data that may have been buffered by the NETLIB_READLINE routine. Use this flag when you want to use both NETLIB_READLINE and NETLIB_READ on the same TCP input stream. For more information, see the description of NETLIB_READLINE in the documentation. 1-4 Update History o A new routine, NETLIB_VERSION, has been added, to allow for dynamic retrieval of the current version of NETLIB you have installed on the system. o The "relaxed" form of NETLIB_READLINE (using the NETLIB_M_ALLOW_LF flag) has been further relaxed to better handle lines terminated with bare linefeeds. __________________________________________________________________ 1.13 Updates in V2.1B The following change was included in V2.1B: o A bug in the processing of status codes was inadvertently introduced in the V2.1A changes, affecting UCX systems only, that would lead to incorrect status reports and potentially to application failures. __________________________________________________________________ 1.14 Updates in V2.1A The following changes were included in V2.1A: o NETLIB's DNS resolver code would not properly initialize on systems running PathWay. This has been fixed. o Some potential race conditions were eliminated. o If NETLIB_CLOSE was called on a socket that had a pending timed I/O, the completion I/O status was mistakenly reported as SS$_TIMEOUT instead of SS$_ CANCEL. Only genuine timeouts are now reported as SS$_TIMEOUT. 1-5 Update History __________________________________________________________________ 1.15 Updates in V2.1 NETLIB V2.1 included the following changes from previous releases: o The TCPware library now uses UCX emulation instead of SRI emulation. If you developed a server with NETLIB that is started by TCPware's "master" server, you should use NETCU to change the protocol type from STREAM or DGRAM to BG_TCP or BG_UDP. o The NETLIB_STARTUP.COM procedure has been enhanced to automatically install all available NETLIB_*_ SHR images, and to automatically define NETLIB_ SHR at startup time based on which TCP/IP package is running. The startup procedure now also automatically adds the NETLIB documentation directory to the DECwindows Bookreader search list logical name. o There was a bug in the V2.0 DNS resolver code in the creation of the list of domains used for searching the DNS, causing it to pad expanded names with nulls. This has been fixed. 1-6 _______________________________________________________ 2 Known Bugs, Restrictions There are no known bugs in NETLIB. Known restrictions are documented in the programmer's guide. 2-1