DIGITAL SNA APPC/LU6.2 Programming Interface for_DIGITAL_UNIX____________________________________ Version 3.1-000 Release Notes April 1997 This document includes information not included elsewhere in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, V3.1 documentation. This information includes software problems and documentation changes. ______________________ IMPORTANT ______________________ Please read these notes before installing or using the software. ______________________________________________________ Revision/Update Information: This document is new. Operating System and Version: DIGITAL UNIX V3.2c - V4.0x Software Version: DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, V3.1 Electronic Data Systems Corporation and Digital Equipment Corporation make no representations that the use of their products in the manner described in this publication will not infringe on existing or future patent rights, nor do the descriptions contained in this publication imply the granting of licenses to make, use, or sell equipment or software in accordance with the description. Possession, use, or copying of the software described in this publication is authorized only pursuant to a valid written license from DIGITAL or an authorized sublicensor. The information in this document is subject to change without notice and should not be construed as a commitment from Electronic Data Systems Corporation or Digital Equipment Corporation. Electronic Data Systems Corporation and Digital Equipment Corporation assume no responsibility for any errors that may appear in this document. DIGITAL conducts its business in a manner that conserves the environment and protects the safety and health of its employees, customers, and the community. Copyright © 1996, 1997 Electronic Data Systems Corporation. All Rights Reserved. Copyright © 1994 Digital Equipment Corporation. All Rights Reserved. The following are trademarks of Digital Equipment Corporation: DIGITAL SNA Domain Gateway, DIGITAL SNA Peer Server, DECnet, DIGITAL, OpenVMS, VAX, VAXcluster, VMS, VMScluster, the AlphaGeneration logo, and the DIGITAL logo. The following are third-party trademarks: Advanced Peer-to-Peer Networking, APPN, IBM, NetView, and OS/2 are registered trademarks of International Business Machines Corporation. AS/400, CICS, DISOSS, Displaywriter, OS/2 EE, OS/400, PROFS, TSO, and VTAM are trademarks of International Business Machines Corporation. UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd. This document is available on CD-ROM. _________________________________________________________________ Contents 1 New Features 1.1 The LU6.2 Manager-A Graphical Management Interface..................................... 1-1 1.2 Automatic Loading of Previously-Saved Server Configuration Information..................... 1-2 1.3 Attach Manager Daemon Enhancements............ 1-3 1.4 New Gateway Support........................... 1-3 1.5 Gateway Access Names.......................... 1-3 1.6 Local Transport Gateway Connection............ 1-4 1.7 Documentation Enhancements.................... 1-4 1.8 LU6.2 Script Processor Enhancements........... 1-5 2 Programming Notes 2.1 Remote LU Failure............................. 2-1 2.2 Parameter Checking............................ 2-1 2.3 Forking in an Attach Manager started program....................................... 2-1 2.4 Memory Utilization with DCE Threads........... 2-2 2.5 Use of default (eight space characters) Mode Name.......................................... 2-3 2.6 Attach Manager information defined to a TP cannot be cleared............................. 2-3 2.7 Session activation with LU6.2 Manager......... 2-3 2.8 Miss configured /etc/services information can cause unexpected results...................... 2-3 iii 3 Known Bugs 3.1 Use of Close option from window menu with Load/Parse and Save Configuration............. 3-1 3.2 The LU6.2 Server may exit if it cannot create another thread................................ 3-1 3.3 The LU6.2 Server can hang if establishing connections to a gateway is outstanding....... 3-1 3.4 LU6.2 Server name greater than eight characters.................................... 3-2 3.5 Redirecting stdin and stdout for an attach manager started transaction................... 3-2 4 Bugs Fixed In This Release 4.1 Bugs Fixed in the V3.0 ECO 01 Kit............. 4-1 4.1.1 Binary TP Names Not Allowed in the CPI-C Side File................................. 4-1 4.1.2 Mode Names Starting with '#' Not Allowed in the CPI-C Side File.................... 4-1 4.1.3 Poor Performance Using TCP/IP to the LU6.2 Server.................................... 4-2 4.2 Bugs Fixed in the V3.0 ECO 02 Kit............. 4-3 4.2.1 Segmentation Faults When Sending an LUSTAT with BBI or CEBI Set...................... 4-3 4.2.2 Sessions for CICS for DIGITAL UNIX Allowed to Start When CICS Is Down................ 4-3 4.2.3 server_info Parameter Not Validated by the LU6.2 Interface........................... 4-3 4.2.4 LU6.2 Server Generates a Segmentation Fault When DECnet is Not Available........ 4-3 4.2.5 Library /usr/shlib/libcpic.so Not Loaded.................................... 4-4 4.2.6 Spelling Errors in the LU6.2 Configuration Utility................................... 4-4 4.3 Bugs Fixed in the V3.0 ECO 03 Kit............. 4-5 4.3.1 LU6.2 Server Not Properly Rejecting Received Session Activation Requests...... 4-5 4.3.2 Null Identifier Field in the server_info Parameter Not Recognized.................. 4-5 4.3.3 Repeated Quick Reuse of a Session Can Cause the Session to Hang................. 4-5 4.3.4 An Attach Manager Started Conversation Can Cause the LU6.2 Server To Crash........... 4-5 iv 4.3.5 Changing the Fill Type Not Recognized Through the CPI-C Interface............... 4-6 4.3.6 The LU6.2 Configuration Utility Core Dumps After Displaying Security Information..... 4-6 4.3.7 LU6.2 Server Not Properly Started......... 4-6 4.3.8 Specifying a Node Name of "0" for the Attach Manager Not Allowed................ 4-6 4.3.9 CMRCV's status_received Parameter Not Properly Set.............................. 4-7 4.3.10 Session Lost Because of Data Out of Sequence.................................. 4-7 4.3.11 Missing Pacing Response................... 4-7 4.3.12 Predefined Mode Name of 8 Space Characters Not Recognized............................ 4-8 4.3.13 Call to snalu62_get_message Not Returning the Requested Information................. 4-8 4.3.14 Call to snalu62_display_tp Incorrectly Returning pip_info Parameter.............. 4-8 4.3.15 Problems Activating a Session Using the LU6.2 Configuration Utility............... 4-8 4.3.16 Improper Status Returned by the LU6.2 Server Startup Script..................... 4-9 4.4 Bugs Fixed in the V3.0 ECO 04 Kit............. 4-10 4.4.1 Server Running Out of Memory After a Very Large Number of Transactions.............. 4-10 4.4.2 Core Dump Could Be Useless................ 4-10 4.4.3 Call to CMACCP Hangs When No Local TP Name Defined................................... 4-10 4.4.4 Local TP Name Not Properly Recognized..... 4-10 4.4.5 Conversation Level Security Not Properly Validated................................. 4-11 4.4.6 Call to receive_immediate Loses Data When All the Data is Not Available............. 4-11 4.4.7 Sending Data Records Larger Than 32,763 Bytes Not Properly Supported.............. 4-11 4.4.8 Errant "LU6.2 Server Already Running" Message.......................... 4-11 4.4.9 Default LU6.2 Server Transport Inconsistent With the Documentation....... 4-12 4.4.10 LU6.2 Server Hoarding Memory.............. 4-12 4.4.11 RESET_SESSION_LIMIT Protocol Not Properly Generated................................. 4-12 v 4.4.12 LU Session Deactivation Can Generate a Segmentation Fault........................ 4-12 4.4.13 Simultaneous Session Deactivations Can Cause A Deadlock Condition................ 4-13 4.4.14 LU6.2 Server Looping Until Virtual Memory Exhausted................................. 4-13 4.4.15 Use of Special Characters in Fully Qualified LU Names Not Supported.......... 4-13 4.4.16 Memory Not Properly Deallocated on Connection Failures....................... 4-13 4.4.17 Invalid Sequence Numbers After a Successful Bracket Bid.................... 4-14 4.4.18 Segmentation Faults During Session Deactivation.............................. 4-14 4.5 Bugs Fixed in the V3.0 ECO 05 Kit............. 4-15 4.5.1 Isolated Pacing Message (IPM) RUs Rejected with Sense Code X'10010003'............... 4-15 4.5.2 Incorrect Handling of LL Length Fields That Span RUs............................. 4-15 4.5.3 Reset ACK IPM Sent As an Expedited Flow RU........................................ 4-16 4.5.4 Incorrect Security on an Attach Causes Subsequent Attaches To Hang............... 4-16 4.5.5 Receipt of an Unsolicited IPM Can Cause LU6.2 Server To Hang...................... 4-16 4.5.6 Installation Restricted to DIGITAL UNIX V3.x Systems.............................. 4-17 4.5.7 Defunct Zombie Child Processes Created.... 4-17 4.6 Bugs Fixed in the V3.0 ECO 06 Kit............. 4-18 4.6.1 Mode Name with Trailing Blanks Rejected with Sense Code 0x0835.................... 4-18 4.6.2 LU6.2 Script Processor Not Able To Re-establish SNA Sessions................. 4-18 4.6.3 Server Hangs If Session Unbound While Waiting for Pacing Response............... 4-18 4.6.4 The snalu62_attach_listen Verb Erroneously Returns a Null TP Name.................... 4-18 4.6.5 CMRCV Returns state_check When Conversation Deallocated.................. 4-19 4.6.6 BIND Responses with Non-0x02 sid Rejected with Sense Code 0x0835.................... 4-19 4.7 Bugs fixed in the V3.0 X6.1 (pre-ECO 07) kit........................................... 4-20 vi 4.7.1 The return code from CMINIC is always CM_OK..................................... 4-20 4.7.2 BIND with Nonce Structured Data Subfield Rejected with Sense Code 0x0835........... 4-20 4.8 Bugs fixed in the V3.0 X6.2 (pre-ECO 07) kit........................................... 4-21 4.8.1 Segmentation Faults During Processing FMH5...................................... 4-21 4.9 Bugs Fixed in the V3.1 Release................ 4-22 4.9.1 Using SNALU62_C_WHEN_CONV_GROUP_ALLOC with snalu62_allocate.......................... 4-22 vii 1 _________________________________________________________________ New Features The DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, V3.1 software provides several new features and product enhancements: o A new graphical management interface o Automatic loading of previously-saved server configuration information o Enhancements to the Attach Manager daemon o Support for DIGITAL's physical unit type 2 (PU type 2) gateways o Support for DIGITAL SNA gateway access names o Documentation enhancements o Enhancements to the LU6.2 Script Processor 1.1 The LU6.2 Manager-A Graphical Management Interface The LU6.2 Manager is a management utility that provides the full range of LU6.2 management functions in an easy-to- use, DECwindows-based, graphical user interface. The LU6.2 Manager provides a graphical interface to the functions provided by the LU definition, change-number-of-session (CNOS), and session activation verbs that make up the LU6.2 Control Operator (COPR) interface. Using the LU6.2 Manager, you can perform the following functions: o Select any active LU6.2 Server. o Load the server with a previously-saved configuration file. o Define a local LU. o Define an associated remote LU. New Features 1-1 New Features 1.1 The LU6.2 Manager-A Graphical Management Interface o Define an associated mode name. o Define an associated transaction program (TP) name. o Display the LU6.2 Server's local LU, remote LU, mode name, and TP name definitions. o Delete any local LU, remote LU, mode name, or TP name definition. o Save the server's current configuration to a configuration file. o Initialize, change, and reset the session limits for a mode name. o Activate and deactivate sessions. The LU6.2 Manager provides extensive online help, both topic-based and context-based, to lead you through the process of configuring an LU6.2 Server. ________________________ Note ________________________ The LU6.2 Manager is not notified when another process modifies an LU6.2 Server. To update the information currently defined to an LU6.2 Server, single click on the specific LU6.2 Server in the list of LU6.2 Servers in the LU6.2 Manager main window. ______________________________________________________ 1.2 Automatic Loading of Previously-Saved Server Configuration Information The LU6.2 Server now has the capability to automatically load a previously-saved configuration file when it is started. The configuration file can be created using the LU6.2 Manager or the LU6.2 Configuration Utility. See the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Installation manual for details. 1-2 New Features New Features 1.3 Attach Manager Daemon Enhancements 1.3 Attach Manager Daemon Enhancements The LU6.2 Server uses the Attach Manager daemon to automatically start transaction programs when the server receives incoming allocation requests for transaction programs that are not currently active. Enhancements to the Attach Manager daemon include: o The daemon no longer requires a special account. o The remote hosts file has been replaced by a more secure access validation file that restricts each server to specific user accounts. o The daemon is always running instead of being restarted every time a request arrives. o Defaulting of the TP name and the server information allow programs to be transported between systems without the need to recompile. See Chapter 4 in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Programming manual for details. 1.4 New Gateway Support This version of the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX software provides support for DIGITAL's two PU type 2 gateway products: the DECnet SNA Gateway for Channel Transport product and the DECnet SNA Gateway for Synchronous Transport product. 1.5 Gateway Access Names In addition to supporting the two PU type 2 DIGITAL SNA gateways, this version of the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX software supports the use of gateway access names to specify the local LU on the gateway. This feature allows transaction programs to use a pool of secondary LUs on the gateway rather than having to use a specific LU. See Chapter 4 in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Programming manual for details. New Features 1-3 New Features 1.6 Local Transport Gateway Connection 1.6 Local Transport Gateway Connection When defining a local LU the SNA gateway transport type may be specified as Local in addition to the previously supported options of TCP/IP or DECnet. If the transport type is set to Local the LU6.2 server will not use a TCP/IP session or DECnet logical link to connect to a DIGITAL SNA Peer Server residing on the same node as the LU6.2 server. Instead it uses a more efficient direct connection when an LU6.2 session is initiated by the LU6.2 server. In order for the DIGITAL SNA Peer Server to utilize the more efficient Local transport when it initiates a session to an LU6.2 server, residing on the same node as the Peer Server, the SNA ACCESS SERVER OBJECT that points at the LU6.2 server must be set up with attributes of Transport=Local and Task=xxx_SES, where xxx is the name of the LU6.2 server. By default the LU6.2 server is named LU62_SRV therefore the task attribute of the SNA ACCESS SERVER OBJECT should be set to LU62_SRV_SES. The above described option is supported by all the user interfaces, specifically lu62_manager, lu62_config and lu62_script. To specify the Local transport option programatically you must set the transport field in the GWY_INFO datastructure to SNALU62_C_TRANSPORT_LOCAL before calling snalu62_define_local_lu(). 1.7 Documentation Enhancements The documentation for this version of the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX software has been largely rewritten. The documentation includes the following enhancements: o DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Installation This manual now includes appendices that document the LU6.2 Script Processor and the saved configuration file format. The description of the steps needed to set up the LU6.2 Server and the LU6.2 client environment has been clarified. o DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, CPI-C Implementation Specifics 1-4 New Features New Features 1.7 Documentation Enhancements This manual is new for this release. The manual uses the format of the "Implementation Specifics" chapters in the IBM document Common Programming Interface Communication, CPI-C Reference to describe the CPI-C interface provide by the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX software. o DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Programming The introductory chapters of this manual have been completely rewritten to focus on the phases of an LU6.2 conversation, the LU6.2 management interface, and the implementation specifics of the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX software. Although this manual is still a companion to the IBM document System Network Architecture Transaction Programmer's Reference Manual for LU Type 6.2, material has been added to the verb descriptions to make the DIGITAL manual more self-contained. o Online man pages The verb descriptions in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Programming manual are now available as DIGITAL UNIX man pages. 1.8 LU6.2 Script Processor Enhancements The LU6.2 Script Processor has been enhanced so that it can re-establish SNA sessions without the need to restart the LU6.2 Server. The following additional features are now available: o Addition of Contention Winner Auto Activate Limit to MODE command. If a non zero value is supplied an attempt is made to establish the specified number of contention winner sessions for that MODE name when the INT_MODE command is executed. o Addition of ACT_SVC and ACT_MODE commands. New Features 1-5 New Features 1.8 LU6.2 Script Processor Enhancements The ACT_SVC command attempts to establish one CNOS SNASVCMG SNA session. The ACT_MODE command attempts to establish one SNA session for the specified name. To establish multiple sessions multiple ACT_SVC and ACT_ MODE commands may be included in the script file input to the LU6.2 Script Processor. See Appendix E in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, Installation manual for details. 1-6 New Features 2 _________________________________________________________________ Programming Notes 2.1 Remote LU Failure When a Remote LU (like CICS) fails, its sessions are automatically deactivated by its underlying communications system. When the Remote LU is restarted, its session limits will have been reset (to zero). If the LU6.2 Server determines that a session needs to be activated (i.e. because a transaction program has performed an Allocate call), the session activations to the Remote LU may fail because the Remote LU has not had its session limits initialized or changed. When this happens, the Remote LU should be instructed to negotiate its session limits with the LU6.2 Server's Local LU. After this is done, sessions may be successfully activated. 2.2 Parameter Checking If a verb is called with an illegal parameter then an Invalid Memory Address Exception may occur. Parameters passed to the verbs are accessed assuming they can be without first checking for their existence. 2.3 Forking in an Attach Manager started program When a transaction program is defined to be Attach Manager started, the LU6.2 Server connects with an Attach Manager Daemon (AMD) running on the target system to request it to create a process, in which the transaction program (TP) runs. The AMD uses the fork() and execl() to create this process running the TP. In order for the AMD to detect when the TP has exitted prior to accepting the transaction attach from the LU6.2 Server, the AMD performs a waitpid() on the forked process. If the TP performs it's own fork() call and does not wait for this newly forked process to exit, this causes the waitpid() call in AMD to exit prematurely and inform the LU6.2 Server that Programming Notes 2-1 Programming Notes 2.3 Forking in an Attach Manager started program the TP has completed. If the LU6.2 Server receives the completion indicator from AMD proir to the TP accepting the transaction attach, the LU6.2 Server rejects the transaction attach by sending the remote LU an attach error indicator. To avoid this race condition, a TP should do one of the following: o Not perform the extra fork() call o Wait until the newly forked process has exitted o Wait until the newly forked process has accepted the transaction attach 2.4 Memory Utilization with DCE Threads The LU6.2 product is designed using DCE Threads (POSIX 1003.4a (Draft 4) pthread Routines). The design of DCE Threads is such that if a thread is created, DCE Threads assumes that the memory associated with that thread will be reused after the thread is destroyed. If a program creates a large number of threads for short periods of time, and only has a relative few for extended periods of time, DCE Threads will not release the memory allocated for the larger number of threads. Since the LU6.2 product uses threads to perform its processing, it may appear to be using more memory than is actually needed. The current implementation of the LU6.2 Server creates the following threads: o Three background threads, plus two threads per active transport (TCP/IP and DECnet) o Two threads per session o One thread per connected client (a program layered on the LU6.2 interface) o One thread per conversation o One thread per Control Operator Verb o One thread per Change Number of Session Verb 2-2 Programming Notes Programming Notes 2.5 Use of default (eight space characters) Mode Name 2.5 Use of default (eight space characters) Mode Name The LU6.2 Server will automatically define the SNA-defined mode names when a Remote LU is defined. One of these mode names is the SNA default mode name, consisting of eight space characters. The use of the SNA default mode name though certain versions of the DIGITAL SNA Gateways is not supported. SNA Gateway support for the use of this mode name should be determined prior to attempting to use it. 2.6 Attach Manager information defined to a TP cannot be cleared When attach manager information is defined to a TP, the Attach Manager started field can be changed, but the attach manager information will not be cleared. If attach manager information is defined, but the attach manager started flag is set to false, if the current LU6.2 Server configuration is saved to a file, none of the the attach manager information is saved. 2.7 Session activation with LU6.2 Manager Session activation can potentially take a very long time (SNA does not define any time limits for session activation). If the LU6.2 Manager is used to activate the session, the LU6.2 Manager will wait until the operation is complete. The Close (Alt+F4) window menu option can be used to dismiss the activate session dialog. Dismissing the dialog does not interrupt the session activation request. 2.8 Miss configured /etc/services information can cause unexpected results If the TCP/IP port information for the various LU6.2 port definitions are misconfigured, it could cause the LU6.2 Server or LU6.2 Attach Manager Daemon to write a core file and exit. If the LU6.2 Server or Attach Manager Daemon unexpectedly exit, verify that the network definitions for the LU6.2 components are correct. Programming Notes 2-3 3 _________________________________________________________________ Known Bugs The DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, V3.1 software has the following list of bugs/limitations. 3.1 Use of Close option from window menu with Load/Parse and Save Configuration When using any of the Load/Parse and Save Configuration file selection components, if the Close (Alt+F4) window menu option is used to close/cancel the feature, the next attempt to use the same feature will cause the LU6.2 Manager to generate a segmentation fault. To avoid this problem, use the Cancel push button to perform the same operation. 3.2 The LU6.2 Server may exit if it cannot create another thread When the LU6.2 Server creates a thread (see Section 2.4 for more information about the LU6.2 Servers use of threads) the failure to create the thread may cause the LU6.2 Server quietly exit the image. To minimize this, the LU6.2 Server should be run form the root account and the threads system parameters should be set such that LU6.2 has the resources needed to create the threads it requires. 3.3 The LU6.2 Server can hang if establishing connections to a gateway is outstanding This hang will prevent new connections, for programs, the LU6.2 Manager or Configuration tools, and DIGITAL SNA Gateways, until the connection is accepted or rejected. Under rare circumstances, the establishing of a connection to a gateway will hang indefinitely. When this occurs, the LU6.2 Server needs to be stopped and restarted. Known Bugs 3-1 Known Bugs 3.4 LU6.2 Server name greater than eight characters 3.4 LU6.2 Server name greater than eight characters If a server name greater than eight characters is specified in the sbin/init.d/lu62_startup script file, the script file may report an error in starting the server. A display of the LU6.2 Server processes shows that a server is running with a name truncated to eight characters. 3.5 Redirecting stdin and stdout for an attach manager started transaction The LU6.2 Server and Attach Manager Daemon do not handle the re-directing of standard input (stdin) and standard output (stdout) properly. If stdin and/or stdout need to be re-directed, a script file should be run by the attach manager daemon that performs the re-direction. 3-2 Known Bugs 4 _________________________________________________________________ Bugs Fixed In This Release The DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX, V3.1 software includes fixes for the following bugs that were present in the V3.0 release of the product. 4.1 Bugs Fixed in the V3.0 ECO 01 Kit 4.1.1 Binary TP Names Not Allowed in the CPI-C Side File Binary Transaction Program (TP) Name were not allowed in the CPI-C side file. The code has been changed to allow binary TP names in the CPI-C side file. The binary form of specifying a TP Name must be used if a TP Name contains character values other than '.', $, #, @, 'a' through 'z', 'A' through 'Z', and '0' through '9'. To specify a binary TP Name, the TP Name in the side file should start with a backslash ('\') character and then an even number of hexadecimal digits ('0' through '9', and 'a' through 'f', or 'A' through 'F'). Each pair of hexadecimal digits represents a single character in the binary TP Name. When a binary TP Name is specified, there is no translation from ASCII to EBCDIC. Therefore, the binary TP name should be specified in EBCDIC, as necessary. 4.1.2 Mode Names Starting with '#' Not Allowed in the CPI-C Side File Mode names in the CPI-C side file starting with a # character were interpreted as the start of a comment. This prevented these types of mode names from being specified. The code has been changed to allow mode names starting with the # character. Bugs Fixed In This Release 4-1 Bugs Fixed In This Release 4.1 Bugs Fixed in the V3.0 ECO 01 Kit 4.1.3 Poor Performance Using TCP/IP to the LU6.2 Server If TCP/IP was used between a Transaction Program and the LU6.2 Server, or between a DIGITAL SNA Domain Gateway or DIGITAL SNA Peer Server and the LU6.2 Server, the data transfer performance was unacceptably slow. The code was performing extraneous writes when transmitting a single message over TCP/IP. The code now performs a single write per message over TCP/IP. 4-2 Bugs Fixed In This Release Bugs Fixed In This Release 4.2 Bugs Fixed in the V3.0 ECO 02 Kit 4.2 Bugs Fixed in the V3.0 ECO 02 Kit 4.2.1 Segmentation Faults When Sending an LUSTAT with BBI or CEBI Set The LU6.2 Server could get a segmentation fault when attempting to send an LUSTAT message with the Begin Bracket Indicator (BBI) or Conditional End Bracket Indicator (CEBI) set when processing many sessions simultaneously. The LU6.2 Server was running out of the buffer pool from which it allocated the memory for these messages. The LU6.2 Server has been fixed to no longer fail to allocate the requested memory and thus not get a segmentation fault. 4.2.2 Sessions for CICS for DIGITAL UNIX Allowed to Start When CICS Is Down If CICS for DIGITAL UNIX was down and the cicssnaconfig processing was performed, received session activation requests (BINDs) were accepted. Sessions for CICS are not suppose to be allowed until CICS is up and running. The LU6.2 Server has been fixed to reject session activation requests for CICS for DIGITAL UNIX until CICS has started. 4.2.3 server_info Parameter Not Validated by the LU6.2 Interface If an invalid server_info parameter was supplied to a number of the snalu62_xxx functions, the interface failed to properly validate this parameter. This could cause the LU6.2 interface to generate a segmentation fault. The LU6.2 interface has been modified to properly validate the server_info parameter. 4.2.4 LU6.2 Server Generates a Segmentation Fault When DECnet is Not Available When the LU6.2 Server is started, it attempts to declare itself as a specific DECnet named object. If DECnet is not available, this could cause the LU6.2 Server to generate a segmentation fault. The problem was the use of an uninitialized variable in the DECnet code. The variable is now properly initialized. Bugs Fixed In This Release 4-3 Bugs Fixed In This Release 4.2 Bugs Fixed in the V3.0 ECO 02 Kit 4.2.5 Library /usr/shlib/libcpic.so Not Loaded An oversight in building the ECO 01 kit, left a library off of the linking of the libcpic.so shareable object. This prevented programs, which referenced this file, from being loaded by the image loader. The missing library has been included when linking this shareable object. 4.2.6 Spelling Errors in the LU6.2 Configuration Utility A number of spelling errors were discovered and fixed in the LU6.2 Configuration utility. 4-4 Bugs Fixed In This Release Bugs Fixed In This Release 4.3 Bugs Fixed in the V3.0 ECO 03 Kit 4.3 Bugs Fixed in the V3.0 ECO 03 Kit 4.3.1 LU6.2 Server Not Properly Rejecting Received Session Activation Requests If the session_activation flag is set, the LU6.2 Server is not suppose to allow sessions to be activated until a call to snalu62_attach_listen has been performed. The LU6.2 Server was not checking to see if a call to snalu62_attach_ listen had been made when a session activation request was received. This caused any started transaction to hang indefinitely. The LU6.2 Server has been modified to properly reject the session activation requests until the first call to snalu62_attach_listen has been performed. 4.3.2 Null Identifier Field in the server_info Parameter Not Recognized If a transaction incorrectly specified a null pointer for the identifier field in the server_info parameter, it could cause the interface to generate a segmentation fault. The interface has been modified to check this field and return an appropriate error when it is a null pointer. 4.3.3 Repeated Quick Reuse of a Session Can Cause the Session to Hang When a session is repeatedly reused for successive conversations, the LU6.2 Server could get confused as to whether the session was in use or not. This could cause the session to no longer respond to the send or receiving of data. The code to indicate that the session was no longer in use was incorrectly saving this information in the wrong location. The LU6.2 Server has been modified to properly record a session's state information. The prevents the LU6.2 Server from getting confused about a session's state. 4.3.4 An Attach Manager Started Conversation Can Cause the LU6.2 Server To Crash When a conversation is started via the Attach Manager, the started transaction performs some processing to complete the starting of the conversation. The processing performed in the LU6.2 Server was attempting to clean up after the conversation was completely started. This clean up processing, under certain circumstances, could access deallocated memory, which could cause a segmentation fault Bugs Fixed In This Release 4-5 Bugs Fixed In This Release 4.3 Bugs Fixed in the V3.0 ECO 03 Kit and a crashing of the LU6.2 Server. The LU6.2 Server has been modified to no longer access deallocated memory. 4.3.5 Changing the Fill Type Not Recognized Through the CPI-C Interface After changed the fill type for CPI-C conversations, the CPI-C interface attempted to determine the type of fill to use when performing its receive processing. When it did this, it inadvertently reset the fill type and used this fill for all receives. This could cause unexpected receive status values to be returned to the caller. The CPI-C interface has been modified to properly determine the fill type and not reset it during receive processing. 4.3.6 The LU6.2 Configuration Utility Core Dumps After Displaying Security Information The LU6.2 Configuration Utility, /usr/lib/sna/lu62_config, segment faults after displaying security information defined for a transaction program. There was a bug in the memory deallocation code, snalu62_free_mem, where the length of some of the memory allocated by the interface did not match that being deallocated. This caused the calling program to receive a segmentation fault. The code has been fixed to properly calculate the length of the memory to be deallocated and thus no longer generate the segmentation fault. 4.3.7 LU6.2 Server Not Properly Started The startup script for the LU6.2 Server, /sbin/init.d/lu62_ startup, referenced the USER symbol during system booting. This symbol is not defined during booting and the whoami service should be used instead. The LU6.2 Server startup script has been modified to use whoami. 4.3.8 Specifying a Node Name of "0" for the Attach Manager Not Allowed If a Transaction Program that was defined to be started by the Attach Manager had the node name specified was specified simply as the number zero (0), the Transaction Program would not start. The Attach Manager code has been modified to recognize the number zero as a shorthand for the local host. 4-6 Bugs Fixed In This Release Bugs Fixed In This Release 4.3 Bugs Fixed in the V3.0 ECO 03 Kit ________________________ Note ________________________ The port number for a specific server name, should be consistent throughout the network. Multiple LU6.2 Servers can run with the same name in different hosts, but all /etc/services should be identical. The service names, _CLI and _SES, must be in all uppercase characters. ______________________________________________________ 4.3.9 CMRCV's status_received Parameter Not Properly Set Under certain circumstances, the CMRCV CPI-C call returned a value of zero (0) for status_received when a value of CM_NO_STATUS_RECEIVED (42) should have been returned. The interface code was inadvertently clearing the return value for status_received. The code has been modified to no longer clear the status_received return value. 4.3.10 Session Lost Because of Data Out of Sequence The LU6.2 Server could send data to the remote transaction program out of order when session-level send pacing is active. The data to be transmitted after a pacing response had been received was getting queued up in such a way that the order of the data was getting reversed. The code has been modified to place the paced send data into the queue in the correct order. 4.3.11 Missing Pacing Response Under certain circumstances, the LU6.2 Server could withhold a pacing response. This problem occurs when data is being received that is larger than the message units received from the host and the first message unit contains the pacing indicator. If the local transaction requests to receive the entire data record, the interface would not respond to the pacing indicator. This would cause the remote transaction to wait indefinitely. The code has been modified to respond to the pacing indicator when receiving the above type of data. Bugs Fixed In This Release 4-7 Bugs Fixed In This Release 4.3 Bugs Fixed in the V3.0 ECO 03 Kit 4.3.12 Predefined Mode Name of 8 Space Characters Not Recognized If the predefined mode name of 8 space characters was specified on certain LU6.2 verbs, the interface returned a Parameter Error. The interface was not recognizing a space character as valid for mode names. The code has been modified to allow 8 space characters to be specified for all mode name parameters supplied through the interface. 4.3.13 Call to snalu62_get_message Not Returning the Requested Information If a text string for an LU6.2 message was requested with a format other than SNALU62_M_TEXT and SNALU62_M_ALL, no string would be returned. The code has been modified to return the requested information for all format types and permutations. 4.3.14 Call to snalu62_display_tp Incorrectly Returning pip_info Parameter The interface returned incorrect information for the pip_ info parameter. The data returned by the LU6.2 Server to the interface was not being parsed properly. All other information was being properly returned. The code has been modified to properly parse the information returned by the LU6.2 Server and to properly return the pip_info parameter. 4.3.15 Problems Activating a Session Using the LU6.2 Configuration Utility When activating a session using main menu item 14 and specifying a locally known LU name (partner LU alias), the remote LU name information would not be properly displayed and a Parameter Error would be displayed. The problem was that the remote LU information was overwriting the local LU information. The LU6.2 Configuration Utility has been modified to save the remote LU information in the proper location. 4-8 Bugs Fixed In This Release Bugs Fixed In This Release 4.3 Bugs Fixed in the V3.0 ECO 03 Kit 4.3.16 Improper Status Returned by the LU6.2 Server Startup Script The LU6.2 Server script made a sleep call prior to checking the return status of starting the LU6.2 Server process. This caused an incorrect "SUCCESSFUL" message to be displayed. The LU6.2 Server startup script has been modified to save the return status from starting the LU6.2 Server process prior to calling the sleep system service. Bugs Fixed In This Release 4-9 Bugs Fixed In This Release 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4.1 Server Running Out of Memory After a Very Large Number of Transactions The PAI layer of the LU6.2 Server was not freeing up mutexes. This caused a memory leak of approximately 500 bytes per transaction which eventually led to the server running out of virtual memory after hundreds of thousands of transactions. The server has been modified to free (destroy) mutexes when they are no longer needed. 4.4.2 Core Dump Could Be Useless Due to the fact that the Pthreads package intercepts synchronous signals and unwinds the stack before core dumping, the resultant process core dump was essentially useless for finding the cause of faults such as SEGVs. The server has been modified to establish the default UNIX signal handler for each thread. Therefore, in the unlikely event the server runs into a fatal error, the process dump should now be useful in analyzing the cause of the fault. 4.4.3 Call to CMACCP Hangs When No Local TP Name Defined If no local TP name was defined within a CPI-C side file and a call to CMACCP was made, the TP name for the transaction was not supplied to the lower layers, which in turn, supplied this to the LU6.2 Server. When an Attach is received or pending, the TP name in the Attach did not match the one supplied by the CPI-C transaction program. This caused the CPI-C TP to hang waiting for the return from the CMACCP call. The lower layer code has been modified to return an error when no TP name is supplied from the CPI-C interface. 4.4.4 Local TP Name Not Properly Recognized The local TP name was not being properly supplied to the lower layers for the CMACCP function. This resulted in unexpected behavior of the interface, ranging from a hang condition to a an error return. An internal function was expecting a parameter to be passed by value. Instead, it was being passed by reference. The code has been fixed to pass the parameter by value. 4-10 Bugs Fixed In This Release Bugs Fixed In This Release 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4.5 Conversation Level Security Not Properly Validated If a transaction allocation request, specifying conversation level security, was received by the LU6.2 Server, validation of the security information was not being performed. The conversation level security specified in a received allocation request is not validated. 4.4.6 Call to receive_immediate Loses Data When All the Data is Not Available If receive_immediate was called for a mapped conversation or the type parameter was specified as SNALU62_C_LL and only some of the data for the call had been received, the call lost data. The partial data was received and the code detected that not all the data had arrived. This caused it to release the received data and any subsequently received data. The code now properly detects when all the data to be received is not available and returns an appropriate "No Data Available" error (SNALU62_S_NDAVAIL return status). 4.4.7 Sending Data Records Larger Than 32,763 Bytes Not Properly Supported When sending data greater than 32,763 bytes, the LU6.2 Server miscalculated a length field. This could cause the LU6.2 Server to get into an infinite loop. Additionally, the processing to receive records greater than 32,763 bytes was also not properly determining the length of the individual messages. The code has been modified to properly determine the lengths of the send and receive records when the records are larger than 32,763 bytes. 4.4.8 Errant "LU6.2 Server Already Running" Message If an LU6.2 Server process was started and used the same process identifier (pid) as the previous invocation of the LU6.2 Server, an "LU6.2 Server already running message" was displayed. The LU6.2 Server has been modified to include the boot time of the operating system to determine if a pid is for a previous invocation of the LU6.2 Server or a new invocation. Bugs Fixed In This Release 4-11 Bugs Fixed In This Release 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4.9 Default LU6.2 Server Transport Inconsistent With the Documentation Various calls to the LU6.2 interface would use DECnet as a default transport as opposed to TCP/IP, as documented in the product documentation. The code has been modified to default the transport to TCP/IP. 4.4.10 LU6.2 Server Hoarding Memory For each activated session, the LU6.2 Server allocated approximately 45,000 bytes of permanent buffer space. When a session was deactivated, this memory was not being freed. This could result in the LU6.2 Server's memory growing until no more memory could be allocated. This could cause everything from a hang to a crash of the LU6.2 Server. The code has been modified to free the permanent buffers for a session when the session is deactivated. 4.4.11 RESET_SESSION_LIMIT Protocol Not Properly Generated A call to RESET_SESSION_LIMIT was incorrectly generating the LU6.2 protocol message to be sent to the remote Session Services Transaction Program (0x06F1). This could cause the remote TP to reject the Change Number of Sessions (CNOS) request with a "Session limit not zero" error. There was also a problem where a flag was not properly interpreted for a received RESET_SESSION_LIMIT request. The code has been modified to both properly generate the CNOS request and correctly interpret the flags on a received RESET_ SESSION_LIMIT request. 4.4.12 LU Session Deactivation Can Generate a Segmentation Fault When the server was deactivating a number of sessions, and the last session was still in-use by a transaction, the LU6.2 Server could generate a segmentation fault. The code was incorrectly assuming that a session be deactivated should always be returned. This was not the case when the session was in use by a transaction program. The code has been modified to detect the condition and continue without incident. The in-use session is deactivated when it is freed up. 4-12 Bugs Fixed In This Release Bugs Fixed In This Release 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4.13 Simultaneous Session Deactivations Can Cause A Deadlock Condition When many sessions were simultaneously deactivated, it was possible to get the LU6.2 Server into a deadlock condition. Though the LU6.2 Server could still be connected to, all sending and receiving of session data would stop. The code has been modified to avoid the deadlock condition. 4.4.14 LU6.2 Server Looping Until Virtual Memory Exhausted If the LU6.2 server attempted a connection to a Peer Server or Domain Gateway that was not completely up (that is, the SNA Access Server entity was not yet enabled) the LU6.2 server mistakenly closed I/O channel 0. The server would then go into a loop allocating more and more virtual memory until either the server core dumped or the system ran out of swap space. This problem would only occur if the server was started with the default options (that is, without the -d option). The code has been modified to not mistakenly close I/O channel 0. 4.4.15 Use of Special Characters in Fully Qualified LU Names Not Supported The use of "back-level" names (ones containing the special characters $, #, and @) was not supported. This prevented the LU6.2 product from being able to function with SNA networks where LU names contained these special characters. The code has been modified to support special characters in the LU name portion of the fully qualified LU name. 4.4.16 Memory Not Properly Deallocated on Connection Failures If a connection attempt to a DIGITAL SNA gateway failed, or a connection from a local transaction program failed, not all memory allocated for the connection was deallocated. The code has been fixed to deallocate all allocated memory upon failure to establish a connection. Bugs Fixed In This Release 4-13 Bugs Fixed In This Release 4.4 Bugs Fixed in the V3.0 ECO 04 Kit 4.4.17 Invalid Sequence Numbers After a Successful Bracket Bid When the LU6.2 Server received a positive response to a bid for a bracket, the sender of the begin bracket was not properly set. This information is used to determine the value of the high bit of sequence numbers transmitted by the LU6.2 Server. Failure to properly identify the sender of the begin bracket could cause this bit to be improperly set or cleared. The code has been fixed to properly identify the sender of the begin bracket, so that the sequence numbers are properly generated. 4.4.18 Segmentation Faults During Session Deactivation When sessions deactivated with either an active conversation or a pending deallocation request, the session control block was not dereferenced from the conversation control block. When the conversation was fully deallocated, the reference to the no longer allocated session control block was being used to set some status information. If this memory had not been reallocated, a segmentation fault occurred. If this memory had been reallocated, unpredictable errors occurred. The code has been modified to properly dereference the session control block from all conversation control blocks referencing it. 4-14 Bugs Fixed In This Release Bugs Fixed In This Release 4.5 Bugs Fixed in the V3.0 ECO 05 Kit 4.5 Bugs Fixed in the V3.0 ECO 05 Kit 4.5.1 Isolated Pacing Message (IPM) RUs Rejected with Sense Code X'10010003' There were three problems with the handling of IPM messages. 1. The IPM message parsing code did not recognize any IPM message other than a solicited response. All other IPM messages would cause the session to be UNBOUND with a X'10010003' sense code. The parsing code has been modified to correctly recognize the other two valid IPM messages (UNSOLICITED and RESET-ACKNOWLEDGMENT). 2. The code generating the RESET-ACKNOWLEDGMENT IPM message was not generating it correctly. The resultant IPM message caused the receiver to UNBIND the session with a X'10010003' sense code. The code has been modified to generate a correct RESET-ACKNOWLEDGEMENT IPM message. 3. After sending the RESET-ACKNOWLEDGMENT IPM message, the LU6.2 Server could generate a segmentation fault. The code was attempting to access the Request/Response Unit (RU) after properly transmitting and deallocating the RU. The code has been fixed to no longer access this deallocated RU. 4.5.2 Incorrect Handling of LL Length Fields That Span RUs This change fixes the problem reported in IPMT case CFS.43126. The LU6.2 Server would go into a CPU-bound loop under the following two conditions: 1. The LU6.2 Server calls a routine (in its Presentation Service (PS) thread) to receive data and test for posting conditions. This routine went into a CPU-bound loop when a received LL length field spanned RUs (that is, the first byte was in one RU and the second byte was at the beginning of the next RU) and the routine was called before receipt of the RU with the second byte of the LL length field. Bugs Fixed In This Release 4-15 Bugs Fixed In This Release 4.5 Bugs Fixed in the V3.0 ECO 05 Kit 2. The LU6.2 Server calls a similar routine (also in its PS thread) for data receive processing. This routine went into a CPU-bound loop when the remote transaction aborted after sending a partial LL. Also, the interface's receive_* verbs sometimes erroneously reported receipt of a 0-length data LL. The affected routines have been fixed to correctly handle LL fields that span RUs. 4.5.3 Reset ACK IPM Sent As an Expedited Flow RU This change fixes the problem reported in IPMT case CFS.43927. The Reset ACK IPM was sent as an expedited flow RU rather than as a normal flow RU. Under certain circumstances, this led to a session hang condition. The code has been fixed to send the Reset ACK IPM as a normal flow RU. 4.5.4 Incorrect Security on an Attach Causes Subsequent Attaches To Hang This change fixes the problem reported in IPMT case CFS.40776. Receipt of an attach with invalid security information caused the LU6.2 Server to decrement the TP instance count when it hadn't previously incremented the count. This set the instance count to a very large number which subsequently caused received attaches to be queued to the TP and never processed. The sending TP would hang forever waiting for the receiving TP to process the attach. The fix is to only copy the TP name into the TCB if at PS creation time the PS is being explicitly associated with a TPN. 4.5.5 Receipt of an Unsolicited IPM Can Cause LU6.2 Server To Hang This change fixes the problem reported in IPMT case CFS.44582. Under certain circumstances, a transaction program that was sending data to a remote server would hang and the LU6.2 Server would cease sending out data to the remote system. When a remote LU6.2 system attempted to resize the pacing window by sending a Unsolicited IPM pacing response, the LU6.2 Server was incorrectly handling the message and 4-16 Bugs Fixed In This Release Bugs Fixed In This Release 4.5 Bugs Fixed in the V3.0 ECO 05 Kit getting confused about the number of send buffers it had available. 4.5.6 Installation Restricted to DIGITAL UNIX V3.x Systems The APPC/LU6.2 Programming Interface software could not be installed on a DIGITAL UNIX V4.0 system. This change cleans up the installation procedures and enables the product to be installed on a DIGITAL UNIX V4.0 system. 4.5.7 Defunct Zombie Child Processes Created This change fixes the problem reported in IPMT case CFS.44582. Under certain circumstances, writing messages to the daemon.log file caused the LU6.2 Server to fork multiple child process that, on exit, turned into defunct zombie processes that used up system resources. The server now specifies the SA_NOCLDWAIT option to handle the SIGCHLD signal which enables these child processes to exit cleanly. Bugs Fixed In This Release 4-17 Bugs Fixed In This Release 4.6 Bugs Fixed in the V3.0 ECO 06 Kit 4.6 Bugs Fixed in the V3.0 ECO 06 Kit 4.6.1 Mode Name with Trailing Blanks Rejected with Sense Code 0x0835 This change fixes the problem reported in IPMT case CFS.44922. If the remote LU sends a BIND image to the LU6.2 Server with a mode name that contained trailing blanks, the LU6.2 Server rejects the BIND image with a sense code of 0x0835. The LU6.2 Server now ignores trailing blanks on mode names. 4.6.2 LU6.2 Script Processor Not Able To Re-establish SNA Sessions This change fixes the problems reported in IPMT cases CFS.44907 and CFS.45513. The LU6.2 Script Processor did not support the reestablishment of sessions. The script processor has been modified to support session reestablishment. Refer to the new appendix in the DIGITAL SNA APPC/LU6.2 Programming Interface for DIGITAL UNIX Installation manual for more details. 4.6.3 Server Hangs If Session Unbound While Waiting for Pacing Response If an SNA session was unbound, possibly due to a network outage or the remote LU going away, and a conversation on that session was awaiting a pacing response, one thread in the LU6.2 Server would go into a CPU-bound loop and the LU6.2 Server would refuse to process any further session activation or deactivation attempts. The LU6.2 Server would not respond to future BIND and UNBIND requests and any local management commands that required establishment or termination of sessions would hang. The LU6.2 server now properly handles this situation. 4.6.4 The snalu62_attach_listen Verb Erroneously Returns a Null TP Name A null TP name was being returned on a snalu62_attach_ listen verb. This problem was mistakenly introduced in the ECO 05 kit and primarily affected the CICS for DIGITAL UNIX product. 4-18 Bugs Fixed In This Release Bugs Fixed In This Release 4.6 Bugs Fixed in the V3.0 ECO 06 Kit 4.6.5 CMRCV Returns state_check When Conversation Deallocated This change fixes the problem reported in IPMT case CFS.45510. When the remote TP deallocated a conversation normally, the interface returned the error CM_PROGRAM_STATE_CHECK on the CPI-C call CMRCV instead of returning the deallocation indication on the same CMRCV call that returned the last data record. 4.6.6 BIND Responses with Non-0x02 sid Rejected with Sense Code 0x0835 This change fixes the problem reported in IPMT cases CFS.44645 and CFS.45833. If a BIND response was received with a session instance identifier that wasn't equal to type 0x02 it was not being processed correctly. The session-instance identifier was being incorrectly compared and the BIND image was rejected with a 0x0835 sense code. Bugs Fixed In This Release 4-19 Bugs Fixed In This Release 4.7 Bugs fixed in the V3.0 X6.1 (pre-ECO 07) kit 4.7 Bugs fixed in the V3.0 X6.1 (pre-ECO 07) kit 4.7.1 The return code from CMINIC is always CM_OK Fixed the problem where CMINIC always returned CM_OK instead of the correct return code. 4.7.2 BIND with Nonce Structured Data Subfield Rejected with Sense Code 0x0835 If a BIND request was received containing a Nonce Structured Data Subfield, the LU6.2 Server would reject the BIND with a 0x0835xxxx sense code (where xxxx is the offset into the BIND, zero origin, of the Nonce Structured Data). The Nonce Structure Data Subfield is now ignored and removed from the +RSP(BIND). 4-20 Bugs Fixed In This Release Bugs Fixed In This Release 4.8 Bugs fixed in the V3.0 X6.2 (pre-ECO 07) kit 4.8 Bugs fixed in the V3.0 X6.2 (pre-ECO 07) kit 4.8.1 Segmentation Faults During Processing FMH5 When the AS400 sends a CNOS request and the attach FMH5 doesn't contain the Logical-Unit-of-Work Identifier Field and the Conversation Correlator Field, segmentation faults occurred. The reason is that the invalid value was copied to the resource control block (RCB) and cleared out the hs_to_ps_buffer_list queue. Bugs Fixed In This Release 4-21 Bugs Fixed In This Release 4.9 Bugs Fixed in the V3.1 Release 4.9 Bugs Fixed in the V3.1 Release 4.9.1 Using SNALU62_C_WHEN_CONV_GROUP_ALLOC with snalu62_allocate The client interface and the LU6.2 Server would generate a segmentation fault when the SNALU62_C_WHEN_CONV_GROUP_ ALLOC option was used with the snalu62_allocate verb. The problem was that the code used to send messages between the interface and the LU6.2 Server, as well as code in the server to locate the requested session, was not looking for the correct information based on the conversation group identifier. The code has been modified to properly recognize and locate information based on the conversation group identifier. 4-22 Bugs Fixed In This Release