Technical Information Document
Updated CLIB and DSAPI v4.11r libraries - TID2955814 (last modified 23FEB2000)
2955814 2955814
associated file

Click filename to download:
libupj4.exe; 977416 bytes; Date/Time: 02-23-2000/04:23PM

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.

installation

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", <Enter>.

5. Select the drive. <Enter> if installing from floppy on the file server or <F4> from a workstation using RCONSOLE.

6. Select the proper path containing the LIBUPJ4.EXE files.

7. Press <F10> 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.

contents

Self-Extracting File Name:  libupj4.exe

Files Included       Size   Date         Time    Version   Checksum

\
      ICMD.MSG       6298   08-26-1997   11:32AM
      ICMD.NLM      20794   08-26-1997   11:32AM
     LIBIT.IPS       7521   02-23-2000   04:04PM
   LIBUPJ4.TXT       9878   02-23-2000   04:23PM
   PI_INIT.NLM       1491   03-08-1996   11:38AM
\4.X\CLIB
      CLIB.NLM      84240   12-08-1999   06:14PM
   CLIBAUX.NLM       8809   11-30-1999   03:33PM
      FPSM.NLM      16504   12-08-1999   06:14PM
   MATHLIB.NLM        417   12-08-1999   06:14PM
  MATHLIBC.NLM        426   12-08-1999   06:14PM
       NIT.NLM      47875   12-08-1999   06:13PM
    NLMLIB.NLM      93941   12-08-1999   06:12PM
       NMX.NLM        426   12-08-1999   06:14PM
  REQUESTR.NLM      47924   12-08-1999   06:11PM
  STREAMDU.NLM        416   12-08-1999   06:14PM
   THREADS.NLM      89811   12-08-1999   06:10PM
\4.X\DSAPI
  AUDNLM32.NLM      10590   09-23-1999   11:48AM
  CALNLM32.NLM     119466   09-23-1999   11:46AM
  CLNNLM32.NLM       8027   09-23-1999   11:38AM
  CLXNLM32.NLM       7280   09-23-1999   11:48AM
     DSAPI.NLM        779   09-23-1999   11:47AM
   DSEVENT.NLM       3306   09-23-1999   11:48AM
  LOCNLM32.NLM      21479   09-23-1999   11:37AM
  NCPNLM32.NLM     134646   09-23-1999   11:42AM
  NETNLM32.NLM     235592   09-23-1999   11:47AM
\4.X\NLS\4
      CLIB.MSG       4275   02-10-1997   10:31PM
      FPSM.MSG        543   02-10-1997   10:34PM
       NIT.MSG        957   02-10-1997   10:40PM
    NLMLIB.MSG       3694   02-10-1997   10:58PM
  REQUESTR.MSG        897   05-20-1997   06:00PM
   THREADS.MSG       9047   02-10-1997   11:25PM
\4.X\UNI
  UNI_1250.NLM       3071   04-02-1998   10:30AM
  UNI_1251.NLM       3027   04-02-1998   10:30AM
  UNI_1252.NLM       3011   04-02-1998   10:30AM
  UNI_1253.NLM       3019   04-02-1998   10:31AM
  UNI_1254.NLM       3063   04-02-1998   10:31AM
  UNI_1255.NLM       3143   04-02-1998   10:32AM
  UNI_1256.NLM       3255   04-02-1998   10:32AM
  UNI_1257.NLM       3075   04-02-1998   10:32AM
  UNI_1258.NLM       3327   04-02-1998   10:33AM
   UNI_437.NLM       3769   04-02-1998   10:23AM
   UNI_737.NLM       3501   04-02-1998   10:23AM
   UNI_775.NLM       3539   04-02-1998   10:24AM
   UNI_850.NLM       3521   04-02-1998   10:24AM
   UNI_852.NLM       3591   04-02-1998   10:24AM
   UNI_855.NLM       3619   04-02-1998   10:24AM
   UNI_857.NLM       3503   04-02-1998   10:25AM
   UNI_860.NLM       3641   04-02-1998   10:25AM
   UNI_861.NLM       3769   04-02-1998   10:26AM
   UNI_862.NLM       3853   04-02-1998   10:26AM
   UNI_863.NLM       3735   04-02-1998   10:26AM
   UNI_864.NLM       3277   04-02-1998   10:27AM
   UNI_865.NLM       3769   04-02-1998   10:27AM
   UNI_866.NLM       3627   04-02-1998   10:27AM
   UNI_874.NLM       2797   04-02-1998   10:27AM
   UNI_932.NLM      64595   04-02-1998   10:28AM
   UNI_936.NLM      60020   04-02-1998   10:28AM
   UNI_949.NLM      77521   04-02-1998   10:29AM
   UNI_950.NLM      78933   04-02-1998   10:29AM
   UNI_MON.NLM       8999   04-02-1998   10:33AM
   UNI_UPR.NLM       9683   04-02-1998   10:33AM
Document Title: Updated CLIB and DSAPI v4.11r libraries
Document ID: 2955814
Creation Date: 23FEB2000
Modified Date: 23FEB2000
Document Revision: 1
Novell Product Class: NetWare
Novell Product and Version: NetWare 4.1

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.

Any trademarks referenced in this document are the property of their respective owners. Consult your product manuals for complete trademark information.