Novell is now a part of Micro Focus

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.

© Copyright Micro Focus or one of its affiliates