NOVELL TECHNICAL INFORMATION DOCUMENT TITLE: Updated CLIB and DSAPI v4.11r libraries TID #: 2955814 README FOR: LIBUPJ4.EXE SUPERSEDES: LIBUPI.EXE NOVELL PRODUCTS and VERSIONS: NetWare 4.1 ABSTRACT: This download file contains a released version of the modular CLIB and DSAPI v4.11r libraries. These are the same CLIB and DSAPI modules as were tested and released with Support Pack 8a. The purpose of this download kit is to make these files available for NetWare 4.10 users. These libraries are for all NetWare 4.10, NetWare 4.11, and NetWare 4.2 product line. ----------------------------------------------------------------- DISCLAIMER THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL. NOVELL MAKES ALL REASONABLE EFFORTS TO VERIFY THIS INFORMATION. HOWEVER, THE INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY. NOVELL MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION. ----------------------------------------------------------------- INSTALLATION INSTRUCTIONS: The installation routine will now create a backup of your existing CLIB and DSAPI files. They will be saved to the SYS:SYSTEM\!BACKUP.LIB directory. To go back to the previous version of the CLIB and DSAPI libraries, simply copy the files in this !BACKUP.LIB directory to the SYS:SYSTEM directory. INSTALLATION OPTIONS: Method #1 With INSTALL.NLM through "Product Options". ** Method #2 Manually copying the files to the server. INSTRUCTIONS: Method #1 ** 1. Run LIBUPJ4.EXE, unzipping files into their appropriate subdirectories. 2. Copy unzipped file structure to floppy drive, workstation hard drives or server volume. 3. Load INSTALL.NLM on server to be updated. RCONSOLE can be used. 4. Go to "Product Options", "Install a product not listed", . 5. Select the drive. if installing from floppy on the file server or from a workstation using RCONSOLE. 6. Select the proper path containing the LIBUPJ4.EXE files. 7. Press to start the copy. *Note for SFT III installation: 1. In order to install the files properly to both IO_ENGINE's they must both be up and functioning properly. 2. The INSTALL.NLM must be loaded in the MS_ENGINE System Console on the PRIMARY IO_ENGINE machine. 3. The install will copy the files to both the SYS:SYSTEM directory as well as the C:\NWSERVER directory on each IO_ENGINE. When doing so the dates of the files copied to the C:\NWSERVER directory will change to the date the copy was performed. Method #2 1. Flag old files to N. 2. Copy files to appropriate subdirectory. (e.g. CLIB.NLM to SYS:SYSTEM ). 3. Flag copied files to RO SH. *Note on MATHLIB.NLM and MATHLIBC.NLM This version of CLIB.NLM does not require a MATHLIB.NLM or a MATHLIBC.NLM. There are some application that run on the server that will require these modules to be loaded. There has been a copy of MATHLIB.NLM and MATHLIBC.NLM that have been placed in the ..\CLIB directory that do nothing but satisfy the load requirement of the application. The application will run as usual. The DSAPI.NLM is a Stub only. The logic for DSAPI has been broken into the NLMs contained in the 4.x\DSAPI directory. DSAPI.NLM will auto load the necessary files. *** Note that the internal date displayed using the modules list on the server will not match the date of the actual physical file. This is normal and does not indicate a problem. ISSUE: Changes since Clib 4.11Q (6/2/99) which was released in SupportPack 7 for NetWare 4.11 These are the same clib and dsapi modules as were tested and released with Support Pack 8a. CLIB: Fixed calculations for out of range month days in NormalizeStructTM(). This change only alters how month days greater than 31 and less than 1 are handled. NLMLIB: NWRConvertLocalFileHandle now returns the correct handle for a remote file handle (ported back the NetWare 5 code). Changed the start value for MaximumNumberOfDSConnections to 10000 from 2000. REQUESTR: Set the NDSServer to 0 (previously undefined) in the session on connections to pre 4.x servers. Found a logic error in change 197. If a BADSERVICECONNECTION error came back in the packet we would send back a 0 return code instead of actually sending back CONNECTIONABORTED. This would cause packets to be sent from applications repeatedly, causing high utilization problems on the server being communicated with. Exported _SetCriticalErrorHandler() so that NRS could use it to cause their timing out connections to wait longer. THREADS: Changed the _set_errno() and the _set_NWerrno() to just exit if there is no context on the thread, instead of abending the server. _LLGarbageCollect() was page faulting when it would exit early because module was not initialized, yet we deferenced it. Took the LLFree change from GroupWise out as it was causing high utilization and CPU Hog Abends for all busy GroupWise servers, a much worse condition than the one it was written to fix. Added code to TimedWaitOnLocalSemaphore() and its timeout code SemTimerHandler() that detects when when the timeout fires, but the thread has the semaphore and is waiting on the run queue. Previously this was resulting in a timeout error being returned by the thread actually having the semaphore. NLMs were unloading without deleting all of their threads causing an abend. Changed _TerminateNLM() to wait to return to KillMe until all of the processes were gone. NIT: NWVolumeIsCDROM() would cause abends because it unimported LFSRetMountedVolName() as soon as is used it so that CDROM.NLM could unload. The problem was that the function pointer was a static so we could potentially call an address that was mapped out, or into some other code or data. Defect 200518. Self-Extracting File Name: LIBUPJ4.EXE Files Included Size Date Time ..\ LIBUPJ4.TXT (This file) ICMD.MSG 6298 8-26-1997 11:32:06 am ICMD.NLM 20794 8-26-1997 11:32:38 am LIBIT.IPS 7521 2-23-2000 4:04:20 pm PI_INIT.NLM 1491 3-8-1996 11:38:16 am ..\4.X\ ..\4.X\CLIB\ CLIB.NLM 84240 12-8-1999 6:14:48 pm CLIBAUX.NLM 8809 11-30-1999 3:33:02 pm FPSM.NLM 16504 12-8-1999 6:14:54 pm MATHLIB.NLM 417 12-8-1999 6:14:48 pm MATHLIBC.NLM 426 12-8-1999 6:14:48 pm NIT.NLM 47875 12-8-1999 6:13:12 pm NLMLIB.NLM 93941 12-8-1999 6:12:46 pm NMX.NLM 426 12-8-1999 6:14:48 pm REQUESTR.NLM 47924 12-8-1999 6:11:10 pm STREAMDU.NLM 416 12-8-1999 6:14:48 pm THREADS.NLM 89811 12-8-1999 6:10:48 pm ..\4.X\DSAPI\ AUDNLM32.NLM 10590 9-23-1999 11:48:24 am CALNLM32.NLM 119466 9-23-1999 11:46:00 am CLNNLM32.NLM 8027 9-23-1999 11:38:00 am CLXNLM32.NLM 7280 9-23-1999 11:48:10 am DSAPI.NLM 779 9-23-1999 11:47:56 am DSEVENT.NLM 3306 9-23-1999 11:48:26 am LOCNLM32.NLM 21479 9-23-1999 11:37:36 am NCPNLM32.NLM 134646 9-23-1999 11:42:16 am NETNLM32.NLM 235592 9-23-1999 11:47:56 am ..\4.X\NLS\ ..\4.X\NLS\4\ CLIB.MSG 4275 2-10-1997 10:31:30 pm FPSM.MSG 543 2-10-1997 10:34:56 pm NIT.MSG 957 2-10-1997 10:40:56 pm NLMLIB.MSG 3694 2-10-1997 10:58:58 pm REQUESTR.MSG 897 5-20-1997 6:00:36 pm THREADS.MSG 9047 2-10-1997 11:25:42 pm ..\4.X\UNI\ UNI_1250.NLM 3071 4-2-1998 10:30:20 am UNI_1251.NLM 3027 4-2-1998 10:30:34 am UNI_1252.NLM 3011 4-2-1998 10:30:50 am UNI_1253.NLM 3019 4-2-1998 10:31:14 am UNI_1254.NLM 3063 4-2-1998 10:31:38 am UNI_1255.NLM 3143 4-2-1998 10:32:00 am UNI_1256.NLM 3255 4-2-1998 10:32:24 am UNI_1257.NLM 3075 4-2-1998 10:32:46 am UNI_1258.NLM 3327 4-2-1998 10:33:00 am UNI_437.NLM 3769 4-2-1998 10:23:36 am UNI_737.NLM 3501 4-2-1998 10:23:50 am UNI_775.NLM 3539 4-2-1998 10:24:04 am UNI_850.NLM 3521 4-2-1998 10:24:20 am UNI_852.NLM 3591 4-2-1998 10:24:32 am UNI_855.NLM 3619 4-2-1998 10:24:52 am UNI_857.NLM 3503 4-2-1998 10:25:16 am UNI_860.NLM 3641 4-2-1998 10:25:34 am UNI_861.NLM 3769 4-2-1998 10:26:00 am UNI_862.NLM 3853 4-2-1998 10:26:24 am UNI_863.NLM 3735 4-2-1998 10:26:44 am UNI_864.NLM 3277 4-2-1998 10:27:00 am UNI_865.NLM 3769 4-2-1998 10:27:14 am UNI_866.NLM 3627 4-2-1998 10:27:26 am UNI_874.NLM 2797 4-2-1998 10:27:42 am UNI_932.NLM 64595 4-2-1998 10:28:06 am UNI_936.NLM 60020 4-2-1998 10:28:34 am UNI_949.NLM 77521 4-2-1998 10:29:08 am UNI_950.NLM 78933 4-2-1998 10:29:48 am UNI_MON.NLM 8999 4-2-1998 10:33:14 am UNI_UPR.NLM 9683 4-2-1998 10:33:30 am ----------------------------------------------------------------- Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information. -----------------------------------------------------------------