********************************************************************************************** Content Manager V6.1.2 fixpack2 for AIX August 3rd, 2001 This is an interim fixpack between Formal Corrective Service Deliverables (CSDs). Table of Contents 1. Installation Requirements 2. Installation Instructions 3. APAR Descriptions ********************************************************************************************** ********************************************* 1. Installation Requirements ********************************************* In order to install this fixpack, you must have Content Manager v61 installed with CSD2 applied (syslevel 6.1.2.0) To determine your AIX syslevel, enter: lslpp -L frn.* ********************************************* 2. Installation Instructions ********************************************* 1. Download the cm6122.tar.gz file in binary mode to a temporary subdirectory on your workstation. You will need at least 20mb of free space. 2. To unpack the GZIP compression, enter: gzip -d cm6122.tar.gz If you don't have GZIP, you can obtain this freeware tool from: http://aixpdslib.seas.ucla.edu/aixpdslib.html 3. Unpack the cm6122.tar file using the AIX tar utility. For example: tar -xvf cm6122.tar 4. Log in as root. 5. Change to the 6120 subdirectory and start the Installation wizard by entering ./frnxupdate.sh 6. Change to the 6122 subdirectory and start the Installation wizard by entering ./frnxupdate.sh ***************************************************** 3. APAR Fixes with Descriptions ***************************************************** **************************************** Fixpack 612.2 **************************************** APAR NUMBER: IR42669 COMPONENT: Common Services / 5648D0431 APAR DESCRIPTION: Under System Administration Library Server, when selecting the Users only 38 of 60 userids are being shown. When groups are selected, the missing userids that where assigned to a group do show up. All the users can login with their ID even if it does not show up in the System Admin. FIX DESCRIPTION: SBTPATRONS table, column DFTLITEMOWNER refers to column USERID in the same table. By default, when a customer creates a new user using SysAdmin, the value in these two columns are the same. However, if using folder manager API to create a new user, the value in DFLTITEMOWNER can be different from the USERID value for that row, and refer to a different USERID. Changes have been made to fix this problem by changing DFLTITEMOWNER to 0 if the above situation happened. When deleting a user, DFLTITEMOWNER field will be reset if necessary. ************************* APAR NUMBER: IR43002 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: Receive FRN7188A the library server could not generate a unique userid, when defining a large number of users to the system. FIX DESCRIPTION: Previous logic to generate a random userid was not adequate. Changed to use the system random number generation lrand48_r(). ************************* APAR NUMBER: IR43170 COMPONENT: Common Services / 5648D0431 APAR DESCRIPTION: Client using unsupported codepage hangs the library server during logon. FIX DESCRIPTION: Library Server will test the codepage combination and reject invalid combinations. ************************* APAR NUMBER: IR43332 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: Remote object server migration fails with message FRN9792A RC0 when the file to be moved resides in ADSM. If a copy of the file exists in Staging (ubosstg), the remote migration works fine. FIX DESCRIPTION: Remote object server migration from ADSM now works. ************************* APAR NUMBER: IR43479 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: The LLsInitializeJobber function does a CreatThread call for the LLsTableRefresh function and passes it the address of pAnchor in a local, automatic storage variable. The next thing LLsInitializeJobber does after the CreateThread is return (thereby popping the automatic variable stack). The first thing LLsTableRefresh does on entry is retrieve the pAnchor address and put it into a local variable. But the race is on between LLsTableRefresh picking up the passed in argument and the caller's stack area getting freed and reused. FIX DESCRIPTION: Change LLsInitializeJobber function to malloc a four byte area to pass the argument through not using the caller's stack area. Change LLsTableRefresh to free this area once it has picked up the argument. ************************* APAR NUMBER: IR43486 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: Warning errors from DB2 during a PREPARE for a dynamic query when retrieving an object resulted in a failure of the retrieve. FIX DESCRIPTION: In the case of receiving a warning code during a PREPARE, log the SQLCODE but attempt to continue the processing. ************************* APAR NUMBER: IR44109 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: No trace output from FRNCMD if the utility encounters an error. To trace the execution of the frncmd utility, the batch file that starts the utility ( frnnstcu.bat ) needs to be updated. Once the updates are made and the batch file is executed, the trace starts as expected. But if the utility ends with an errorlevel of '1', the statements in the batch file to format and turn off the trace are bypassed, and the trace is lost. FIX DESCRIPTION: Moved the code to format and stop the trace to cmnexit function. ************************* APAR NUMBER: IR44446 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: Running Content Manager servers on a Windows NT system with more than 512 MB of RAM may result in the servers failing to start with the following message displayed: FRN9255A: Cp=14; Fc=FrnSysInitSharedMem; Tr=5; MC=9256; Fi=slpglint.cpp; Ln=1103; LA=(null); RC=-2538; FIX DESCRIPTION: Shared memory conflict between CM and Java runtime has been corrected. ************************* APAR NUMBER: IR44458 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: When calling simlibsearch with the null (0 Length) search string client receives FRN6772A error message. FIX DESCRIPTION: In LibPackageHostVarValue function (in frnpllrs.c) set string length to 1 when host var's attrType is varchar and host var string is null and the usOperator is relational. ************************* APAR NUMBER: IR44486 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: Apparent Library Server hang; frndiag.log has the following message: FRN7474A: An internal system problem occurred. The FRN7474A is issued by frnpllch at this point because there is an error in receiving an order from the isolator api that we call. This APAR is created because the error code that is returned is not captured in the FRN7474 message. FIX DESCRIPTION: Fixed the log statement to log the IsoReceive error message. ************************* APAR NUMBER: IR44489 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: Expired time is locked by the last person/userid who logged onto sys admin. The customer has to log onto sys admin, then log off and log on again to have the rights to update/change expired time. Expired time is supposed to be locked by the last person who updated, not the last userid/person who logged onto sys admin. Side note: expired time, once enabled can't be disabled. FIX DESCRIPTION: Fixed the error in assignement of the scheduler id. ************************* APAR NUMBER: IR44921 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: FRN8635A - Timeout occured waiting for the Library Server to respond to a request. The program times out at the retreive step (ExtRC=8635). DB2 traces show that the update and retrieve are sent to DB2 as two different units of work, so the retrieve ends up waiting for the update to finish, which won't happen until the retrieve finishes. A classic deadlock / timeout situation. FIX DESCRIPTION: Depending whether we are in a transaction or not, derive the proper Library Client session handle to be used within SimLibqueryPartExtSrch. This APAR also fixes a login problem where ProcessACLRows causes an access violation during logon. ************************* APAR NUMBER: IR45048 COMPONENT: Library Server / 5648D0421 APAR DESCRIPTION: The Library Server does not issue an error message if the wrong userid is used to start it. If the wrong userid is used to start the Library Server, it initializes and presents the user with the "Accepting Requests" message. However, users get error message " FRN6740A: The logon was not successful because of error 6056 " when they try to log on. The system admin client gets a " FRN8571A: =6056 " message. The frndiag.log shows -204 SQL return codes (undefined name). FIX DESCRIPTION: Added a dymamic sql query that will fail under the wrong id. ************************* APAR NUMBER: IR45224 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: Customer deleted frnadmin userid and they loged on to sys admin with another userid w/ maxprivs and created a new userid called "frnadmin". The customer then logs on with the userid "frnadmin" and receives a msg saying "the password doesn't match the userid for the patron..." frndiag.log on lib srvr: Type: ERRLOG file: frnpllcn.c Line 5528 RC: 7051 Msg Code: 7051 FRN7051A: The password specified for patron FRNADMIN is not valid. FIX DESCRIPTION: LibDefinePatron() in lcporder.c module the encrypted password was set to "FED0F6C9018BCF4A". It should be "B59CC182B7BDCD01". ************************* APAR NUMBER: IR45268 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: Remote data migration from OS/2, WinN, or AIX v241 to CM 61 or later leaves files on the Target Object Server's "staging" volume without DB entries due to a design change in transaction logic in CM61. These HOMELESS files reside on the "staging" volume and are not destaged/archived to other volumes. The customer subsequently has their "staging" volume fill up. FIX DESCRIPTION: Remote migration cleanup on CM61/71 destages/archives the HOMELESS files to other volumes and the "staging" volume then reclaims space. On the Object Server, the environment variable FRN_DESTAGEALL=1 must be set for the destager to handle these unique files. ************************* APAR NUMBER: IR45362 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: Object server reports FRN9919A, FRN9883A on retrieval of an object, followed by an abnormal termination of the FRNXLBPR process, FRNsysSignalHandler, this process received a signal 4. FIX DESCRIPTION: Handling of the SIG4 corrected. ************************* APAR NUMBER: IR45512 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: Utilization of the supported ip2toccount api (as used by the Content Management client application) to determine the count of items in a workbasket results in a lenghthy response time when the number of items and workbaskets is large. While the same values to determine the same results is contained in the FRNWIPITEMS table, the values are not kept in sync with the FRNITEMS table. Subsequently, any attempts to bypass the performance issues of the api by issuing a direct sql against the FRNWIPTEMS table results in possibly incorrect information. FIX DESCRIPTION: Check if all search filters are set to ALL in MakeQueryTOCEntries function (in fipquery.c). If so, issue dynamic SQL search selection only from SBTWIPITEMS. ************************* APAR NUMBER: IR45627 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: After loading one or more objects into CM, either SimLibUpdatePartExtSrch or SimLibUpdateObject is called to update the content of the objects. If the size of any object is greater than 67000 bytes, SimLibUpdatePartExtSrch or SimLibUpdateObject will fail on AIX with return code = 6256, or SIM_RC_RESIZE_FAILED, and returned hErrLog = 6395, or SIM_RC_WRITEOBJECT_FAILED. If Folder Manager trace is turned on, it will report a return code of 6256 by SimLibWriteObject. As a result, the update activity fails. FIX DESCRIPTION: Function CmnRetrieveFileData called fread() incorrectly. The third parameter of fread() function call should be 1, not the size of the file. Only the second parameter should be the size of the file, but not both the second and third parameters. ************************* APAR NUMBER: IR45951 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: The 16-byte itemID's currently are generated by clients randomly. This may cause performance problems for customers if the number of itemId's is huge. To solve that performance problem, a Library Client user exit is created to allow users to use their own algorithms to generate new itemID's in a more sequential manner. FIX DESCRIPTION: The default userexit is a no-op function and simply returns 0 to the caller. A sample userexit (commented out) is provided in this userexit. To use the sample method, users can simply un-comment it and modify it anyway desirable by the users, and build the userexit again. So the default behavior of this userexit is business as usual, that means no impact to existing customers, unless the userexit is modified and rebuilt by the customers. User exit: LibCreateItemID (generate item ID user exit) Format: LibCreateItemId (pszItemID,pszWorkStationID,sIndexClassID,pszUserID,sSemType) PURPOSE: When an application creates an item, Content Manager assigns the item several system-defined attributes. One of those system-defined attributes is an item identifier (item ID), which is randomly created by the Library Server Client. This user exit allows you to change the way the Library Server client generates item IDs. You can use the sample in this user exit to have the library client create sequential item IDs. To use the sample, remove the comments tags in the code and recompile. You can also modify the sample code and add your own algorithms. The library client encrypts the password that is associated with the user before it is transmitted to the library server. Use LibEncryptPassword if you want to provide your own encryption algorithm or eliminate the password encryption. Note: If you don't "uncomment" the sample code, the CM library server client will create item IDs as it is originally designed to do; random ID generation. PARAMETERS: pszItemID: CHAR - input and output A parameter passed in by the internal code. pszWorkStationID: CHAR - input The character string of the host name. The maximum length for this string is 18 bytes, which includes the null terminator. sIndexClassID: SHORT - input The index class identifier. pszUserID: CHAR - input The NULL-terminated character string that specifies the password for the user ID. This parameter is not case sensitive. sSemType: SHORT - input The semantic type of the item to store. The semantic type of an item indicates its general classification. Use a 2-byte integer. The predefined semantic types are: SEMTYPE_ACL Indicates that the item is an access list. SEMTYPE_ANNOTATION Indicates that the item is an annotation. SEMTYPE_DOCUMENT Indicates that the item is a document. SEMTYPE_FOLDER Indicates that the item is a folder. SEMTYPE_HISTORY Indicates that the item contains history events. SEMTYPE_MGDS Indicates that the item contains MGDS data. SEMTYPE_NOTE Indicates that the item is a note. SEMTYPE_USER Indicates that the item is a user item. SEMTYPE_WORKBASKET Indicates that the item is a workbasket. SEMTYPE_WORKFLOW Indicates that the item is a workflow. SEMTYPE_NONE Indicates that the item has no semantic type. All other values are for use by applications. The library server does not interpret them, so they can be used by the application in any way you want to. RETURN VALUES: The function returns a value of SHORT with zero for SUCCESS and -1 for FAILURE. COMMENTS: The function is located in the FRNPLCPW.C module. The LibCreateItemID function is a single function in FRNWLCPW.DLL. You can replace FRNWLCPW.DLL with your own FRNWLCPW.DLL. ************************* APAR NUMBER: IR46025 COMPONENT: Toolkit / 5648D0451 APAR DESCRIPTION: Custom written user application terminates indicating a failure in module frnndamn.exe, and text of: 'Exception: Access violation (0xc0000005)'. The application is used to load data into CM. Increasing FRNHEAPSIZE delays the access violation, setting it very small causes it to happen almost immediately. Tracing the application revealed that the access violation is actually in frnnslap.dll (which is a part of frnndamn.exe). This appears to be a memory leak in folder manager. FIX DESCRIPTION: 1. Daemon has been changed to handle the error correctly when no more memory is available, instead of continuing and thus causing a crash. 2. Folder Manager API, SimLibAddFolderItem, and several other API's, have been changed to always free the response block regardless of whether the return code is good or bad. This will avoid a memory leak when an error occurs. ************************* APAR NUMBER: IR46219 COMPONENT: Object Server / 5648D0411 APAR DESCRIPTION: Object Server Recovery deletes files not found in the database. Normally this is recommended, but in the case of APARS IR45028 and IR45268, these files will unintentionally be left in an abnormal state and are not in the database. So deleting these files before IR45268 is applied and run will permanently remove these files. FIX DESCRIPTION: The default behavior of Object Server recovery NO LONGER deletes files not found in the database. If you wish this behavior to happen, then you must set the Environment variable FRNRECDELETE=1 and run recovery to delete the files. **************************************** Fixpack 612.1 **************************************** APAR NUMBER: IR42529.b / AIX COMPONENT: OS / 5648D0411 PMR NUMBER: 99999,999,000 APAR DESCRIPTION: AIX Object Server can not be monitored by Tivoli GEM console. FIX DESCRIPTION: Added certified Tivoli Ready support to AIX Object Server SPECIAL INSTALLATION INSTRUCTIONS: There is a README.html file which has been reviewed by the Tivoli Competency Center in Raleigh and is part of the deliverables. It will be in the "tivready" subdirectory after you untar the fixpack. Please install it both on the system where the Object Server to be monitored live, as well as into your Tivoli GEM console. ********************* APAR NUMBER: IR43368 / AIX COMPONENT: TK / 5648D0451 PMR NUMBER: 84091,500,000 APAR DESCRIPTION: Customers can not easily create a "readonly" privilege set using the SysAdmin tool because the default "all user's" privilege bits (which gets added) includes the "DiscardBlobs" privilege Group. FIX DESCRIPTION: Removed "DiscardBlobs" privilege group from the default "all user's" privilege set. Added additional DiscardBlob privilege bits to three other sets used by the SysAdmin to grant authorizations to users. Those three assumed the required bits would already be set by the "all user's" defaults. ********************* APAR NUMBER: IR43747 / AIX COMPONENT: LSs / 5648D0431 PMR NUMBER: 19079,500,000 APAR DESCRIPTION: Occasionally, when starting a client application during initialization of the OSS component for the client, an error message is produced. FRN9255A: Cp=14; Fc=FrnSysInitSharedMem; Tr=5; MC=9256; Fi=../sl/slpglint.cpp; Ln=1112; LA=; RC=-2538; FIX DESCRIPTION: While the first process creating the shared memory has not yet finished, the second process tries to attach to the shared memory and fails. Logic has been added to handle this race condition. ********************* APAR NUMBER: IR43979 / AIX COMPONENT: TK / 5648D0451 PMR NUMBER: 99999 APAR DESCRIPTION: If MVS is the Library Server platform and the Ip2ListUser API is called from AIX or Windows platform, the password field's return is different from information saved in the SBTPATRONS table. This will make QBIC users not be able to logon. FIX DESCRIPTION: In the SimLibListUser API, once the user information is returned from the Library Server and put into the USERINFOSTRUCT data structure, we add a new step to the password field of this data structure. If the Library Server is not MVS, then no more processing is done. Otherwise, the internal function IsoPutFixChar is called for the password field to convert it back to the way it was stored in the SBTPATRONS table in Library Server. ********************************************* TRADEMARKS __________________________________________________________________________ IBM Enterprise Information Portal for Multiplatforms V6.1 (program number 5648-D03) (c ) Copyright IBM Corp. 1998, 1999. IBM Content Manager for Multiplatforms V6.1 (program number 5648-D04) (c ) Copyright IBM Corp. 1994, 1999. Licensed Materials - Property of IBM All Rights Reserved. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corporation