Developer Pointers
Articles and Tips: article
01 Jul 1997
Novell Technical Information Documents
All of the Technical Information Documents (TIDs) discussed below are available at the following locations:
The Novell Technical Solutions Database on CompuServe (GO NTID)
The DeveloperNet Support World Wide Web site (http://devsup.novell.com)
The DeveloperNet Support Bulletin Board (801-861-5836)
Writing NetBasic CGI Scripts for the Web
Author: |
BA |
Document ID: |
TID101223 |
Date: |
4/22/97 3:50 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
D24D.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
This BrainShare codebreak lab was designed to help novice programmers understand the basics of writing CGI scripts in NetBasic.
It contains sample code, a NetBasic presentation in HTML, and a lab workbook.
Detailed Description
In the BrainShare codebreak session we built a simple Hello World script to generate a Hello World web page.
hworld.bas - A hello world script |
We then built two NetBasic CGI scripts:
webpiz1.bas - Which generated a pizza order form |
|
webpiz2.bas - Which retrieved the pizza order data and displayedit |
This document also includes an HTML and Powerpoint presentation on the basics of NetBasic.
File Information
Self-Extracting File Name: D24D.EXE
Files Included: |
Size |
Date |
Time |
D24D.TXT |
(this file) |
||
WEBPIZ2.BAS |
2979 |
4-22-97 |
2:35 PM |
ACTIVEM.GIF |
237 |
4-22-97 |
2:35 PM |
WEBPIZ.EXE |
8621 |
4-22-97 |
2:35 PM |
TEXT.GIF |
239 |
4-22-97 |
2:35 PM |
SPACE.GIF |
117 |
4-22-97 |
2:35 PM |
SIZEBTN.HTM |
280 |
4-22-97 |
2:35 PM |
README.TXT |
940 |
4-22-97 |
2:35 PM |
PREV.GIF |
221 |
4-22-97 |
2:35 PM |
PPTANI.GIF |
9163 |
4-22-97 |
2:35 PM |
PPFRAME.HTM |
4393 |
4-22-97 |
2:35 PM |
OUTLINEE.HTM |
6099 |
4-22-97 |
2:35 PM |
IMG016.HTM |
234 |
4-22-97 |
2:35 PM |
IMG016.GIF |
20709 |
4-22-97 |
2:35 PM |
IMG015.HTM |
234 |
4-22-97 |
2:35 PM |
IMG015.GIF |
20030 |
4-22-97 |
2:35 PM |
IMG014.HTM |
234 |
4-22-97 |
2:35 PM |
NEXT.GIF |
226 |
4-22-97 |
2:35 PM |
NDS.BAS |
18132 |
4-22-97 |
2:35 PM |
NBSAMP.EXE |
16019 |
4-22-97 |
2:35 PM |
NBINTRO.PPT |
2972672 |
4-22-97 |
2:35 PM |
NBINTRO.HTM |
1545 |
4-22-97 |
2:35 PM |
NBIDE.GIF |
18084 |
4-22-97 |
2:35 PM |
NAVBTN.HTM |
588 |
4-22-97 |
2:35 PM |
LISTDSW.BAS |
13987 |
4-22-97 |
2:35 PM |
LAST.GIF |
242 |
4-22-97 |
2:35 PM |
INFO.GIF |
248 |
4-22-97 |
2:35 PM |
INDEX.HTM |
15569 |
4-22-97 |
2:35 PM |
NOTE010.HTM |
1155 |
4-22-97 |
2:35 PM |
NOTE009.HTM |
1240 |
4-22-97 |
2:35 PM |
NOTE008.HTM |
1011 |
4-22-97 |
2:35 PM |
NOTE007.HTM |
1192 |
4-22-97 |
2:35 PM |
NOTE006.HTM |
446 |
4-22-97 |
2:35 PM |
NOTE005.HTM |
434 |
4-22-97 |
2:35 PM |
NOTE004.HTM |
963 |
4-22-97 |
2:35 PM |
NOTE003.HTM |
211 |
4-22-97 |
2:35 PM |
NOTE002.HTM |
211 |
4-22-97 |
2:35 PM |
NOTE001.HTM |
211 |
4-22-97 |
2:35 PM |
IMG011.GIF |
18603 |
4-22-97 |
2:35 PM |
IMG010.HTM |
234 |
4-22-97 |
2:35 PM |
IMG010.GIF |
21350 |
4-22-97 |
2:35 PM |
IMG009.HTM |
234 |
4-22-97 |
2:35 PM |
IMG009.GIF |
20170 |
4-22-97 |
2:35 PM |
IMG019.GIF |
24606 |
4-22-97 |
2:35 PM |
IMG018.HTM |
234 |
4-22-97 |
2:35 PM |
IMG018.GIF |
19411 |
4-22-97 |
2:35 PM |
IMG017.HTM |
234 |
4-22-97 |
2:35 PM |
IMG017.GIF |
19628 |
4-22-97 |
2:35 PM |
COLLAPSE.GIF |
237 |
4-22-97 |
2:35 PM |
ACTIVEP.GIF |
243 |
4-22-97 |
2:35 PM |
WEBPIZ1.BAS |
4185 |
4-22-97 |
2:35 PM |
D24D.MSG |
210 |
4-22-97 |
2:35 PM |
IMG014.GIF |
21660 |
4-22-97 |
2:35 PM |
IMG013.HTM |
234 |
4-22-97 |
2:35 PM |
IMG013.GIF |
21834 |
4-22-97 |
2:35 PM |
IMG012.HTM |
234 |
4-22-97 |
2:35 PM |
IMG012.GIF |
21106 |
4-22-97 |
2:35 PM |
IMG011.HTM |
234 |
4-22-97 |
2:35 PM |
IMG008.HTM |
234 |
4-22-97 |
2:35 PM |
IMG008.GIF |
22085 |
4-22-97 |
2:35 PM |
IMG007.HTM |
234 |
4-22-97 |
2:35 PM |
IMG007.GIF |
20522 |
4-22-97 |
2:35 PM |
IMG006.HTM |
234 |
4-22-97 |
2:35 PM |
IMG006.GIF |
19258 |
4-22-97 |
2:35 PM |
IMG005.HTM |
234 |
4-22-97 |
2:35 PM |
IMG005.GIF |
17560 |
4-22-97 |
2:35 PM |
IMG004.HTM |
234 |
4-22-97 |
2:35 PM |
IMG004.GIF |
20510 |
4-22-97 |
2:35 PM |
IMG003.HTM |
234 |
4-22-97 |
2:35 PM |
IMG019.HTM |
234 |
4-22-97 |
2:35 PM |
IMG003.GIF |
19475 |
4-22-97 |
2:35 PM |
IMG002.HTM |
234 |
4-22-97 |
2:35 PM |
IMG002.GIF |
11276 |
4-22-97 |
2:35 PM |
IMG001.HTM |
234 |
4-22-97 |
2:35 PM |
IMG001.GIF |
24602 |
4-22-97 |
2:35 PM |
IELOGO.GIF |
8562 |
4-22-97 |
2:35 PM |
HWORLD.BAS |
347 |
4-22-97 |
2:35 PM |
HOME.GIF |
243 |
4-22-97 |
2:35 PM |
FIRST.GIF |
243 |
4-22-97 |
2:35 PM |
EXPAND.GIF |
244 |
4-22-97 |
2:35 PM |
OUTLINEC.HTM |
1648 |
4-22-97 |
2:35 PM |
NOTE019.HTM |
211 |
4-22-97 |
2:35 PM |
NOTE018.HTM |
211 |
4-22-97 |
2:35 PM |
NOTE017.HTM |
211 |
4-22-97 |
2:35 PM |
NOTE016.HTM |
707 |
4-22-97 |
2:35 PM |
NOTE015.HTM |
1094 |
4-22-97 |
2:35 PM |
NOTE014.HTM |
581 |
4-22-97 |
2:35 PM |
NOTE013.HTM |
841 |
4-22-97 |
2:35 PM |
NOTE012.HTM |
859 |
4-22-97 |
2:35 PM |
NOTE011.HTM |
652 |
4-22-97 |
2:35 PM |
Differences between NetBasic 4.11 and NetBasic 6.0
Author: |
BA |
Document ID: |
TID101237 |
Date: |
5/1/97 12:22 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
XNTB01.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
There are many differences between NetBasic 4.11 and NetBasic 6.0. This document will point out a few critical differences that you need to know.
Detailed Description
NetBasic v4.11 ships with IntranetWare and NetWare 4.11. NetBasic v6.0, at the present time, is in Beta and is available from the Hitecsoft Web site (www.hitecsoft.com) or from the DeveloperNet essentials CD distributed at BrainShare and Java One in early 1997.
The differences between the two versions may cause existing scripts to function improperly or not function at all.
Location of Web Scripts
In v4.11 you could place web scripts anywhere under
SYS:NetBasic/Web
(ie. SYS:NetBasic/Web/Mystuff/test.bas)
In v6.0 this is prohibited because of other features that were added which will be discussed later. All web scripts MUST be placed in SYS:NetBasic/Web. For example, SYS:NetBasic/Web/test.bas
Calling Web Scripts from Browsers
Another critical difference is the way the scripts are called from a Web browser.
In v4.11, you could call the script with or without specifying the .BAS extension.
In v6.0, if the script is not compiled (another feature that will be discussed later), you must call the script by specifying the .BAS extension. For example, http://myserver/netbasic/test.bas.
Otherwise, NetBasic will not be able to find the script.
Calling Subroutines
Another added feature with v6.0 that makes the calling convention different, is the ability to call individual Subroutines within a script. This feature gives you the ability to have one script perform several CGI functions, ie. one subroutine to generate a form, another to process the form, etc. In v4.11 this functionality was possible only through a complex method of If statements and Query Strings.
Example:
If you had a script named, WEBPIZZA.BAS that had three subroutines:
Main (required) |
|
PaintForm (used to generate a pizza order form) |
|
ProcessOrder (used to retrieve the order data and processit) |
You could generate the form with the URL:
http://myserver/netbasic/webpizza/PaintForm
The form would specify the URL to process the data as:
http://myserver/netbasic/webpizza.bas/ProcessOrder
See the NetBasic documentation on URI (Universal Resource Identifier) in the NetBasic IDE Tutorial contained in the User's Guide. The URI macro defined in doc.h eliminates the need to know whether or not the script is compiled and should be used to reference all NetBasic scripts/NLMS that reference other NetBasic scripts/NLMs.
Compiling
NetBasic v6.0 allows you to compile your script into an NLM. Once a script is compiled, it is placed in the SYS:System/NMX directory. It is then called from a browser with the same calling convention as a normal script, except the .BAS extension is eliminated.
See the NetBasic documentation on URI (Universal Resource Identifier) in the NetBasic IDE Tutorial contained in the User's Guide. The URI macro defined in doc.h eliminates the need to know whether or not the script is compiled and should be used to reference all NetBasic scripts/NLMS that reference other NetBasic scripts/NLMs.
New APIs
Several new APIs were added in NetBasic v6.0. Many were added to the DOC class (for Frames, Tables, multi-valued CGI variables, etc), and various additions are also found in many other classes.
File Information
Self-Extracting File Name: XNTB01.EXE
Files Included: |
Size |
Date |
Time |
XNTB01.TXT |
(this file) |
||
XNTB01.MSG |
142 |
5-1-97 |
12:15 PM |
Sample - Adding a User Object in NetBasic
Author: |
BA |
Document ID: |
TID101238 |
Date: |
5/1/97 1:19 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
XNTBNDS4.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
This TID demonstrates adding a User object and several attributes for the User object in NDS using NetBasic.
File Information
Self-Extracting File Name: XNTBNDS4.EXE
Files Included: |
Size |
Date |
Time |
XNTBNDS4.TXT |
(this file) |
||
ADDUSER.BAS |
10979 |
5-1-97 |
1:19 PM |
XNTBNDS4.MSG |
101 |
5-1-97 |
1:19 PM |
NWGetFileServerDateAndTime() Failing with 0x8909 on the Local Server
Author: |
BR |
Document ID: |
TID101236 |
Date: |
5/1/97 12:15 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
ISESR1.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
When calling NWGetFileServerDateAndTime() on a local server, the error code 0x8909 is always returned. The call works correctly if accessing a remote server. The problem exists in the currently released server libraries, LIBUPC.EXE. The problem has been verified by Novell engineering.
File Information
Self-Extracting File Name: ISESR1.EXE
Files Included: |
Size |
Date |
Time |
ISESR1.TXT |
(this file) |
||
ISESR1.MSG |
292 |
5-1-97 |
12:15 PM |
Writing NMX Libraries
Author: |
BA |
Document ID: |
TID101224 |
Date: |
4/22/97 3:51 PM |
Alert status: |
Yellow |
Information: |
Issue |
Readme for: |
D25D.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
This BrainShare codebreak session discusses the necessary components of writing an NMX library. It contains all source files and a lab workbook.
It assumes you are working with Watcom 10.6 and SDK version 11.
File Information
Self-Extracting File Name: D25D.EXE
Files Included: |
Size |
Date |
Time |
D25D.TXT |
(this file) |
||
NWDOS.NLM |
7067 |
4-22-97 |
2:36 PM |
NWDOS.C |
22113 |
4-22-97 |
2:36 PM |
ALL.IMP |
1148 |
4-22-97 |
2:36 PM |
NMXLIB.GIF |
13915 |
4-22-97 |
2:36 PM |
NMXLIB.EXE |
22381 |
4-22-97 |
2:36 PM |
MAKEINIT |
3601 |
4-22-97 |
2:36 PM |
INDEX.HTM |
15825 |
4-22-97 |
2:36 PM |
DOSDIR.BAS |
9649 |
4-22-97 |
2:36 PM |
NMXLIB.H |
10724 |
4-22-97 |
2:36 PM |
D25D.MSG |
214 |
4-22-97 |
2:36 PM |
Preserving Name Space Entries When Copying Files
Author: |
HW |
Document ID: |
TID101217 |
Date: |
4/21/97 1:15 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
IHWNSPRS.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
This issue describes how to work around a bug in FEsopen when copying files to a long name space, i.e. OS/2 or NT.
Detailed Description
The normal procedure to copy files on a server involves scanning the source directory using readdir, opening the files using FEsopen, and copying them using FileServerFileCopy.
This assumes the correct source and target name space have been set using SetCurrentNameSpace() and SetTargetNameSpace().
There is no problem with this as long as the files are owned by the DOS name space and do not have a long name. With the SDK CD Vol.9, the readdir function has some added functionality to return the long name for a file, if it is not owned by DOS. This name could then in theory be used to generate the file in the target name space.
Unfortunately, the FEsopen call uses the default (DOS) name parser when generating the new files, causing all names to be converted to uppercase.
For case-sensitive applications, this poses a problem. Also, you cannot simply go and update the target using opendir() with the source name to determine if the file exists, as the two names no longer match.
The solution is to iterate through the loaded name spaces on the source location and copy the name space entries one-by-one to the destination, using NWGetNameSpaceEntryName and NWSetNameSpaceEntryName, respectively.
File Information
Self-Extracting File Name: IHWNSPRS.EXE
Files Included: |
Size |
Date |
Time |
IHWNSPRS.TXT |
(this file) |
||
IHWNSPRS.MSG |
116 |
4-21-97 |
11:19 AM |
NLM Library Pre-release Updates
Author: |
AJ |
Document ID: |
TID101225 |
Date: |
4/22/97 3:52 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
PLIB4X06.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
04-22-97 Pre-release builds of NLM libraries for NetWare 4.x. These files are not fully tested and should not be used in production environments. Rather, they are intended to be used by NLM developers to test applications for compatibility.
Current system time: Tuesday 4-22-97 2:21:02 pm
Updates since PLIB4X05 include the following
Modular CLIB Updates |
ATM\TEST: CLIB.NLM |
ATM\TEST: FPSM.NLM |
ATM\TEST: MATHLIB.NLM |
ATM\TEST: MATHLIBC.NLM |
ATM\TEST: NIT.NLM |
ATM\TEST: NLMLIB.NLM |
ATM\TEST: REQUESTR.NLM |
ATM\TEST: THREADS.NLM |
Cross Platform (XPLAT) Updates |
ATM\TEST: AUDNLM32.NLM |
ATM\TEST: CALNLM32.NLM |
ATM\TEST: CLNNLM32.NLM |
ATM\TEST: CLXNLM32.NLM |
ATM\TEST: LOCNLM32.NLM |
ATM\TEST: NCPNLM32.NLM |
ATM\TEST: NETNLM32.NLM |
ATM\TEST: DSAPI.NLM |
Printing Services Updates |
ATM\TEST: NWPSRV.NLM |
File Information
Self-Extracting File Name: PLIB4X06.EXE
Files Included: |
Size |
Date |
Time |
|
PLIB4X06.TXT |
(this file) |
|||
A3112.NLM |
15906 |
4-22-97 |
2:34 PM |
|
AUDNLM32.NLM |
9207 |
4-22-97 |
2:34 PM |
|
APPLETLK.NLM |
376741 |
4-22-97 |
2:34 PM |
|
AIOWNIM.NLM |
16136 |
4-22-97 |
2:34 PM |
|
AIODGXI.NLM |
38707 |
4-22-97 |
2:34 PM |
|
AIODGMEM.NLM |
1705 |
4-22-97 |
2:34 PM |
|
AIODGCX.NLM |
99104 |
4-22-97 |
2:34 PM |
|
AIOCOMX.NLM |
17500 |
4-22-97 |
2:34 PM |
|
AIOACI.NLM |
22020 |
4-22-97 |
2:34 PM |
|
AIO.NLM |
134169 |
4-22-97 |
2:34 PM |
|
AFTER311.NLM |
16127 |
4-22-97 |
2:34 PM |
|
NWSNUT.NLM |
58327 |
4-22-97 |
2:34 PM |
|
NWPSRV.NLM |
92696 |
4-22-97 |
2:34 PM |
|
NLSAPI.NLM |
19810 |
4-22-97 |
2:34 PM |
|
NLMLIB.NLM |
89578 |
4-22-97 |
2:34 PM |
|
NLMDEBUG.NLM |
29132 |
4-22-97 |
2:34 PM |
|
STREAMS.NLM |
63751 |
4-22-97 |
2:34 PM |
|
PLIB4X06.MSG |
254 |
4-22-97 |
2:34 PM |
|
ADSP.NLM |
76207 |
4-22-97 |
2:34 PM |
|
CALNLM32.NLM |
89786 |
4-22-97 |
2:34 PM |
|
NETNLM32.NLM |
162011 |
4-22-97 |
2:34 PM |
|
DSEVENT.NLM |
2116 |
4-22-97 |
2:34 PM |
|
DSAPI.NLM |
628 |
4-22-97 |
2:34 PM |
|
CLXNLM32.NLM |
5853 |
4-22-97 |
2:34 PM |
|
CLNNLM32.NLM |
5445 |
4-22-97 |
2:34 PM |
|
LOCNLM32.NLM |
4441 |
4-22-97 |
2:34 PM |
|
TLI.NLM |
24751 |
4-22-97 |
2:34 PM |
|
THREADS.NLM |
86877 |
4-22-97 |
2:34 PM |
|
NIT.NLM |
48012 |
4-22-97 |
2:34 PM |
|
SPXS.NLM |
42293 |
4-22-97 |
2:34 PM |
|
REQUESTR.NLM |
47029 |
4-22-97 |
2:34 PM |
|
NCPNLM32.NLM |
104443 |
4-22-97 |
2:34 PM |
|
MATHLIBC.NLM |
426 |
4-22-97 |
2:34 PM |
|
MATHLIB.NLM |
417 |
4-22-97 |
2:34 PM |
|
LSAPI.NLM |
18364 |
4-22-97 |
2:34 PM |
|
CLIB.NLM |
80274 |
4-22-97 |
2:34 PM |
|
IPXS.NLM |
10134 |
4-22-97 |
2:34 PM |
|
FPSM.NLM |
16546 |
4-22-97 |
2:34 PM |
|
PLIB4X06.TXT |
4195 |
4-22-97 |
3:50 PM |
Sample Code: Extending the NDS Schema
Author: |
KB |
Document ID: |
TID101220 |
Date: |
4/21/97 1:15 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
XNDSSCHE.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
The enclosed two sample programs will illustrate how to extend the NDS schema.
Detailed Description
The following two sample programs will illustrate how to extend the NDS schema. The first program, SCHEMA.C, will add a new class definition to the NDS schema, create a new attribute definition, create a new object using these definitions, and populate the new attribute with a new value. The program will then pause and allow you to switch to the second program, READSCHM.C, via the NetWare server console, which will display the value in the new attribute. Lastly you can switch back to the original program which will delete the new object, attribute definition, and class definition.
File Information
Self-Extracting File Name: XNDSSCHE.EXE
Files Included: |
Size |
Date |
Time |
XNDSSCHE.TXT |
(this file) |
||
SCHEMA.C |
27544 |
4-21-97 |
11:21 AM |
SCHEMA.NLM |
8892 |
4-21-97 |
11:21 AM |
READSCHM.C |
10511 |
4-21-97 |
11:21 AM |
READSCHM.NLM |
4255 |
4-21-97 |
11:21 AM |
XNDSSCHE.MSG |
80 |
4-21-97 |
11:21 AM |
Developing to The NetWare Cross-Platform SDK
Author: |
HH |
Document ID: |
TID101240 |
Date: |
5/1/97 5:00 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
D07D.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
This is part one of a two parts BrainShare presentation. This part is designed to provide general information about "How To" for new developers.
Detailed Description
In addition to the general information, it will include a sample code that uses the new "Connection Services" APIs to connect to a server.
It will then use "File Server Environment Service," "Print Server Services," "Queue Management Services," and "Print Services" to demonstrate how to create, delete, and display print servers, print queues, and printers. Finally, it will send a print job to a network printer and print the job.
File Information
Self-Extracting File Name: D07D.EXE
Files Included: |
Size |
Date |
Time |
D07D.TXT |
(this file) |
||
TEXT.GIF |
244 |
5-1-97 |
4:59 PM |
SPACE.GIF |
117 |
5-1-97 |
4:59 PM |
SIZEBTN.HTM |
279 |
5-1-97 |
4:59 PM |
PREV.GIF |
232 |
5-1-97 |
4:59 PM |
PPTANI.GIF |
9163 |
5-1-97 |
4:59 PM |
PPFRAME.HTM |
4400 |
5-1-97 |
4:59 PM |
OUTLINEE.HTM |
3594 |
5-1-97 |
4:59 PM |
OUTLINEC.HTM |
1097 |
5-1-97 |
4:59 PM |
NOTE013.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE012.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE011.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE010.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE009.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE008.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE007.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE006.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE005.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE004.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE003.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE002.HTM |
211 |
5-1-97 |
4:59 PM |
NOTE001.HTM |
211 |
5-1-97 |
4:59 PM |
NEXT.GIF |
232 |
5-1-97 |
4:59 PM |
NAVBTN.HTM |
677 |
5-1-97 |
4:59 PM |
LAST.GIF |
251 |
5-1-97 |
4:59 PM |
INFO.GIF |
248 |
5-1-97 |
4:59 PM |
INDEX.HTM |
1462 |
5-1-97 |
4:59 PM |
IMG013.HTM |
234 |
5-1-97 |
4:59 PM |
IMG013.GIF |
24713 |
5-1-97 |
4:59 PM |
IMG012.HTM |
363 |
5-1-97 |
4:59 PM |
IMG012.GIF |
18881 |
5-1-97 |
4:59 PM |
IMG011.HTM |
383 |
5-1-97 |
4:59 PM |
IMG011.GIF |
19455 |
5-1-97 |
4:59 PM |
IMG010.HTM |
234 |
5-1-97 |
4:59 PM |
IMG010.GIF |
19726 |
5-1-97 |
4:59 PM |
IMG009.HTM |
381 |
5-1-97 |
4:59 PM |
IMG009.GIF |
18911 |
5-1-97 |
4:59 PM |
IMG008.HTM |
511 |
5-1-97 |
4:59 PM |
IMG008.GIF |
20895 |
5-1-97 |
4:59 PM |
IMG007.HTM |
369 |
5-1-97 |
4:59 PM |
IMG007.GIF |
20533 |
5-1-97 |
4:59 PM |
IMG006.HTM |
570 |
5-1-97 |
4:59 PM |
IMG006.GIF |
19287 |
5-1-97 |
4:59 PM |
IMG005.HTM |
383 |
5-1-97 |
4:59 PM |
IMG005.GIF |
18843 |
5-1-97 |
4:59 PM |
IMG004.HTM |
393 |
5-1-97 |
4:59 PM |
IMG004.GIF |
19239 |
5-1-97 |
4:59 PM |
IMG003.HTM |
393 |
5-1-97 |
4:59 PM |
IMG003.GIF |
17571 |
5-1-97 |
4:59 PM |
IMG002.HTM |
234 |
5-1-97 |
4:59 PM |
ACTIVEM.GIF |
239 |
5-1-97 |
4:59 PM |
IMG001.HTM |
234 |
5-1-97 |
4:59 PM |
IMG001.GIF |
24656 |
5-1-97 |
4:59 PM |
IELOGO.GIF |
8562 |
5-1-97 |
4:59 PM |
HOME.GIF |
253 |
5-1-97 |
4:59 PM |
FIRST.GIF |
247 |
5-1-97 |
4:59 PM |
EXPAND.GIF |
250 |
5-1-97 |
4:59 PM |
COLLAPSE.GIF |
249 |
5-1-97 |
4:59 PM |
ACTIVEP.GIF |
251 |
5-1-97 |
4:59 PM |
IMG002.GIF |
11578 |
5-1-97 |
4:59 PM |
D07D.MSG |
147 |
5-1-97 |
4:59 PM |
New SETJMP.OBJ For NLM Development
Author: |
BR |
Document ID: |
TID101235 |
Date: |
5/1/97 12:14 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
PLIBOBJ1.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
In SDK Release 11, NWSDK\IMPORTS\SETJMP.OBJ was compiled with references to the debug symbol _BumpFunctionCount.
This problem has been fixed for SDK Release 12.
File Information
Self-Extracting File Name: PLIBOBJ1.EXE
Files Included: |
Size |
Date |
Time |
PLIBOBJ1.TXT |
(this file) |
||
SETJMP.OBJ |
277 |
5-1-97 |
12:14 PM |
PLIBOBJ1.MSG |
165 |
5-1-97 |
12:14 PM |
NLS APIs Containing serverName Parameter Documented Incorrectly
Author: |
BR |
Document ID: |
TID101233 |
Date: |
5/1/97 12:09 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
NLSR5.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
The following APIs are documented incorrectly because the serverName parameter is now the context name parameter.
NLSAddProductInformation() |
|
NLSAvailable() |
|
NLSInstallCertificate() |
|
NLSInstalled() |
|
NLSInUse() |
|
NLSUsers() |
|
NLSAddProductInformation() |
Detailed Description
Below is a typical NLS management API. Note how the serverName parameter has been replaced by the contextName parameter.
LS_STATUS_CODENLSAddProductInformation( |
|||
LS_STR |
*licenseSystem, |
||
LS_STR |
*contextName, /* was serverName */ |
||
LS_STR |
*publisherName, |
||
LS_STR |
*productName, |
||
LS_STR |
*version, |
||
LS_ULONG |
licenseUnits, |
||
LS_ULONG |
attributesLength, |
||
LS_VOID |
*licenseAttributes); |
LS_STR contextName
(IN) Points to the NDS context in which the license certificate should be placed or LS_ANY. If LS_ANY is specified the current connection must be authenticated to NDS and the current underlying NDS context will be used.
Example: "DSD.Novell"
When licenses were moved from a BTRIEVE database to NDS, this serverName parameter is now used for NDS context information. Use NWDSLogin() and NWDSAuthenticate() to establish identity.
This has been corrected for the SDK Rel. 12 documentation.
File Information
Self-Extracting File Name: INLSR5.EXE
Files Included: |
Size |
Date |
Time |
INLSR5.TXT |
(this file) |
||
INLSR5.MSG |
263 |
5-1-97 |
12:08 PM |
Getting Intermittent Errors from NLS APIs When Called from an NLM
Author: |
BR |
Document ID: |
TID101232 |
Date: |
5/1/97 12:07 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
INLSR4.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
Developers have reported occasional and intermittent errors when using Novell Licensing Services (NLS) APIs from an NLM. Among them are the following:
NLSInstallCertificate() is returning 0xC000100E; LS_BAD_ARG. NLSInstalled() is returning 0xC0001000B; LS_BAD_INDEX (when the index is 0) the second time after execution. If NLS.NLM is unloaded and loaded, it works correctly again for one execution.
Detailed Description
The problems were a result of the underlying NLM connection not having sufficient NDS rights. If you are going to write an NLM and use any NLS APIs you need to do an NWDSLogin() and NWDSAuthenticate() to establish identity. The example code LSAPIDM on the SDK has been corrected to perform an NWDSLogin() and NWDSAuthenticate() when running as an NLM.
File Information
Self-Extracting File Name: INLSR4.EXE
Files Included: |
Size |
Date |
Time |
INLSR4.TXT |
(this file) |
||
INLSR4.MSG |
411 |
5-1-97 |
12:06 PM |
System() API Is Available for NetWare 3.x
Author: |
BR |
Document ID: |
TID101242 |
Date: |
5/7/97 1:58 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
ITSR.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
The NWSDK documentation, NLM Specific Function Reference, Section 32 Thread Services documents the system() API as being only available for NetWare 4.x.
The system() API is available on NetWare 3.x and is exported by CLIB 3.12j.
File Information
Self-Extracting File Name: ITSR.EXE
Files Included: |
Size |
Date |
Time |
ITSR.TXT |
(this file) |
||
ITSR.MSG |
236 |
5-7-97 |
1:57 PM |
NWDSReturnBlockOfTrees Returned 89fc for NT and OS2
Author: |
MM |
Document ID: |
TID101230 |
Date: |
5/1/97 12:04 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
IDSRTREE.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
NWDSReturnBlockOfTrees returned 89fc for NT and OS2 if NETOS2.DLL or NETWIN32.DLL on SDK release 10 or release 11 are being used. The problem should be fixed on release 12.
File Information
Self-Extracting File Name: IDSRTREE.EXE
Files Included: |
Size |
Date |
Time |
IDSRTREE.TXT |
(this file) |
||
IDSRTREE.MSG |
174 |
5-1-97 |
12:03 PM |
Pre-release NLM Libs for NW 4.x
Author: |
AJ |
Document ID: |
TID101241 |
Date: |
5/2/97 4:04 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
PLIB4X07.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
05-02-97 Pre-release builds of NLM libraries for NetWare 4.x. These files are not fully tested and should not be used in production environments. Rather, they are intended to be used by NLM developers to test applications for compatibility.
Detailed Description
Pre-release builds of NLM libraries for NetWare 4.x. These files are not fully tested and should not be used in production environments. Rather, they are intended to be used by NLM developers to test applications for compatibility.
Current system time: Friday 5-02-97 2:22:18 pm
Updates since PLIB4X06:
*** AIO Updates ***
*** Modular CLIB Updates *** |
ATM\TEST: CLIB.NLM |
ATM\TEST: FPSM.NLM |
ATM\TEST: MATHLIB.NLM |
ATM\TEST: MATHLIBC.NLM |
ATM\TEST: NIT.NLM |
ATM\TEST: NLMLIB.NLM |
ATM\TEST: REQUESTR.NLM |
ATM\TEST: THREADS.NLM |
*** Cross Platform (XPLAT) Updates ***
*** NWSNUT Updates ***
*** Transport Updates ***
*** Novell Licensing Updates ***
*** Printing Services Updates *** |
ATM\TEST: NWPSRV.NLM |
File Information
Self-Extracting File Name: PLIB4X07.EXE
Files Included: |
Size |
Date |
Time |
PLIB4X07.TXT |
(this file) |
||
A3112.NLM |
15906 |
5-2-97 |
4:04 PM |
AIOCOMX.NLM |
17500 |
5-2-97 |
4:04 PM |
AIOACI.NLM |
22020 |
5-2-97 |
4:04 PM |
AIO.NLM |
134169 |
5-2-97 |
4:04 PM |
AFTER311.NLM |
16127 |
5-2-97 |
4:04 PM |
ADSP.NLM |
76207 |
5-2-97 |
4:04 PM |
AIODGCX.NLM |
99104 |
5-2-97 |
4:04 PM |
AIODGMEM.NLM |
1705 |
5-2-97 |
4:04 PM |
BUILD.LOG |
914 |
5-2-97 |
4:04 PM |
AUDNLM32.NLM |
9207 |
5-2-97 |
4:04 PM |
APPLETLK.NLM |
376741 |
5-2-97 |
4:04 PM |
AIOWNIM.NLM |
16136 |
5-2-97 |
4:04 PM |
AIODGXI.NLM |
38707 |
5-2-97 |
4:04 PM |
CALNLM32.NLM |
89786 |
5-2-97 |
4:04 PM |
CLIB.NLM |
80087 |
5-2-97 |
4:04 PM |
DSEVENT.NLM |
2116 |
5-2-97 |
4:04 PM |
DSAPI.NLM |
628 |
5-2-97 |
4:04 PM |
CLXNLM32.NLM |
5853 |
5-2-97 |
4:04 PM |
CLNNLM32.NLM |
5445 |
5-2-97 |
4:04 PM |
FPSM.NLM |
16478 |
5-2-97 |
4:04 PM |
REQUESTR.NLM |
46890 |
5-2-97 |
4:04 PM |
NWSNUT.NLM |
58327 |
5-2-97 |
4:04 PM |
NWPSRV.NLM |
92696 |
5-2-97 |
4:04 PM |
NLSAPI.NLM |
19810 |
5-2-97 |
4:04 PM |
NLMLIB.NLM |
88101 |
5-2-97 |
4:04 PM |
NLMDEBUG.NLM |
29132 |
5-2-97 |
4:04 PM |
IPXS.NLM |
10134 |
5-2-97 |
4:04 PM |
NETNLM32.NLM |
162011 |
5-2-97 |
4:04 PM |
NCPNLM32.NLM |
104443 |
5-2-97 |
4:04 PM |
MATHLIBC.NLM |
426 |
5-2-97 |
4:04 PM |
MATHLIB.NLM |
417 |
5-2-97 |
4:04 PM |
LSAPI.NLM |
18364 |
5-2-97 |
4:04 PM |
LOCNLM32.NLM |
4441 |
5-2-97 |
4:04 PM |
NIT.NLM |
47798 |
5-2-97 |
4:04 PM |
SPXS.NLM |
42293 |
5-2-97 |
4:04 PM |
THREADS.NLM |
83897 |
5-2-97 |
4:04 PM |
STREAMS.NLM |
63751 |
5-2-97 |
4:04 PM |
TLI.NLM |
24751 |
5-2-97 |
4:04 PM |
PLIB4X07.MSG |
254 |
5-2-97 |
4:04 PM |
NLSAddProductInformation() Returning LS_BAD_ARG in ADDPINFO Example
Author: |
BR |
Document ID: |
TID101234 |
Date: |
5/1/97 12:12 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
INLSR6.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
Using the NLS example ADDPINFO.C on the SDK results in NLSAddProductInformation() returning 0xC000100E, LS_BAD_ARG.
Detailed Description
Recently, engineering put a check in many of the NLS APIs to return an LS_BAD_ARG when a NULL was passed in as a parameter. However, for this API, a NULL makes sense when the attributesLength is 0 and no licenseAttributes will be used. This problem has been reported to engineering.
A work-around to the problem is to pass into NLSAddProductInformation() a buffer to licenseAttributes and an attributesLength of 0.
Partial Example:
char |
atrBuff[255]; |
|
result = NLSAddProductInformation(LS_ANY, LS_ANY,publisher, product, version,numUnits, 0, (LS_VOID *)atrBuff); |
File Information
Self-Extracting File Name: INLSR6.EXE
Files Included: |
Size |
Date |
Time |
INLSR6.TXT |
(this file) |
||
INLSR6.MSG |
118 |
5-1-97 |
12:12 PM |
How to Specify WildCard Search for NWDSReturnBlockOfAvailableTrees
Author: |
MM |
Document ID: |
TID101231 |
Date: |
5/1/97 12:04 PM |
Alert status: |
Yellow |
Information type: |
Issue |
Readme for: |
IRTREE2.EXE |
Novell product class: |
NetWare API |
Novell product andversion: |
NetWare SDK |
Category: |
None |
Abstract
If an application passes in a wildcard character '*' for the scanFilter for NWDSReturnBlockOfAvailableTrees, a NULL should be passed in the endBoundStr parameter so that the numberOfTrees value will be accurate.
Detailed Description
The fifth parameter, endBoundString, should be set to NULL if you want all trees that meet the scanFilter criteria to be returned. endBoundString is used to compare against each tree name to see if the tree name comes before endBoundString. The documentation said that "a * can be passed in endBoundString". This is misleading and in fact if a * is passed in, the numberOfTrees will be 0 because the * character comes before all of the valid tree name characters.
Also the difference between numberOfNames and totalUniqueTrees is that numberOfNames is the number of trees returned in arrayOfNames and totalUniqueTrees is the number of trees that were found. This is not very clear in the documentation.
File Information
Self-Extracting File Name: IRTREE2.EXE
Files Included: |
Size |
Date |
Time |
IRTREE2.TXT |
(this file) |
||
IRTREE2.MSG |
213 |
5-1-97 |
12:02 PM |
Disclaimer
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.