Inter-Corporate Computer & Network Services, inc.

Products   →   Freeware   →   ICELIB0.NLM   →   Frequently Answered Questions

Inter-Corporate Extended Library
Frequently Answered Questions

A. General information
    A.1. Does freeware really mean "free?"
    A.2. Which development languages are supported?
    A.3. Compatibility with future updates
    A.4. How can I test my NLMs with older versions?
    A.5. Why not use the file's date and time to determine the version?

B. Development issues
    B.1. Library version checking

 

A. General information

A.1. Does freeware really mean "free?"

Yes.  And you may distribute this library with your own free or commercial products, as long as ICELIB0.NLM is not modified in any way.

A.2. Which development languages are supported?

The same C/C++ used to develop NetWare Loadable Modules, which are destined to execute on Novell's NetWare OS.

Assembler is also supported, but the C calling convention must be used.  If you are not developing NLMs with TASM (Borland's Turbo Assembler), then your source code may not appear the same as in our online documentation (a good understanding of the C calling conventions is highly recommended for assembler programmers).

A.3. Compatibility with future updates

It is intended that existing functions in this library will not change in future releases.  When new features are added to functions, developers must indicate to the function (usually through a "flag" -- see online documentation) that this feature should be enabled.

A.4. How can I test my NLMs with older versions?

Older versions of our NLMs are available at http://www.inter-corporate.com/products/freeware/icelib/archive/.  We recommend you review the history to determine the oldest version your NLM will be compatible with.

A.5. Why not use the file's date and time to determine the version?

File dates and times are easily changed for a variety of reasons, including bugs in software or design shortcomings with some file transfer protocols, and are therefore totally unreliable.

Since version numbers on NetWare are embedded in the NLM, safe from bugs and design flaws, the network administrator can accurately determine the version number by loading the NLM at the console prompt, and the software developer can accurately determine the version number by calling a function.

 

B. Development issues

B.1. Library version checking

When checking for a minimum version of ICELIB0.NLM to ensure some needed features exist for your application, or to avoid a bug that causes a problem for your application, use the ICE_GetLibraryVersion() function, then compare to ensure it returned a value equal to or greater than the version number you are expecting.

A common pitfall for developers is to check for a specific version number, which excludes newer versions of the library.  Since backward compatibility is considered in the design of ICELIB0.NLM, this should not be an issue.

Solutions Services Support Products Home Login Company Contact
Copyright © 1992-2024 Inter-Corporate Computer & Network Services, Inc.  All rights reserved.  All trademarks are the property of their respective owners.  The information provided on this internet site does not constitute a contract with any person or entity unless otherwise specified.  Although reasonable efforts are made to present accurate information, we do not guarantee it.  Information may change without prior notice.