Novell is now a part of Micro Focus

Developer Pointers

Articles and Tips: article

01 Aug 1996


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)

Page Fault in AsyncRelease() NLM Development


Author:

BR

Document ID:

TID100655

Document revision:

A

Date and time:

07/26/96 8:49 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

IADV1.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Detailed Description

Symptom

A developer is using AsyncRead()/AsyncRelease() for file transfers to a client. This has been working fine for the developer under 3.x and 4.x until it was used on a Compaq Prosignia machine (using NetWare 4.x). Certain files cause a page fault in the AsyncRelease call. This behavior has been duplicated on different machines with different files but can be difficult to reproduce at will. The problem only occurs when suballocation is enabled.

Reason

The problem occurs when there is a suballocation misalignment which requires an additional cache read. AsyncRead() was not allocating enough buffer space for the last read resulting in a buffer overflow. Example A shows the results of reading a file which would not cause the abend; Example B shows the results of reading the file when there was misalignment which required the extra read.


A: cache buffer reads

B: cache buffer reads

1E0

1E0

1000

1000

1000

1000

1000

1000

1000

1000

1000

1000

B9B

400

79B

Solution

This problem has been fixed in NLMLIB.NLM dated later than 7-22-96. This NLM is due to be released in LIBUP9.EXE.

File Information

Self-Extracting File Name: IADV1.EXE


Files Included:

Size

Date

Time

IADV1.TXT

(this file)

NWADOpen Audit ID Is Not Documented Correctly


Author:

MM

Document ID:

TID100640

Document revision:

A

Date and time:

07/16/96 5:04 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

IAUDITID.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - DOS

Abstract

NWADOpen

The third parameter auditID depends on the 2nd paramenter auditIDType.

auditIDType (IN) Specifies the type of the auditID parameter:

0 - AUDIT_ID_IS_VOLUME - indicating volume auditing

1 - AUDIT_ID_IS_CONTAINER - indicating container auditing

auditID (IN) Volume auditing - volume number (use NWGetVolumeNumber)

Container auditing - object ID of the DS Audit File Object (use NWAuditGetObjectID)

File Information

Self-Extracting File Name: IAUDITID.EXE


Files Included:

Size

Date

Time

IAUDITID.TXT

(this file)

AUDITID.DOC

1,254

7-11-96

9:51 AM

Pre-release NLM Libs/Modular CLIB


Author:

AJ

Document ID:

TID100647

Document revision:

A

Date and time:

07/19/96 10:53 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

PLIB1.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Detailed Description

07/17/96 pre-release builds of NLM libraries for NetWare 4.x 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.

Files


File listing:

Size

Date

Time

A3112.NLM

16,547

2-08-96

6:15 PM

AFTER311.NLM

16,924

2-08-96

6:14 PM

AIO.NLM

11,052

9-21-94

6:29 PM

AUDNLM32.NLM

9,219

7-01-96

11:19 PM

CALNLM32.NLM

88,756

7-01-96

11:03 PM

CLIB.NLM

81,351

7-15-96

12:29 PM

CLNNLM32.NLM

5,248

7-01-96

10:11 PM

CLXNLM32.NLM

3,699

7-01-96

11:17 PM

DSAPI.NLM

620

7-01-96

11:15 PM

DSEVENT.NLM

1,794

8-10-95

8:46 AM

FPSM.NLM

16,547

7-09-96

3:10 PM

IPXS.NLM

10,134

10-20-94

1:53 PM

LOCNLM32.NLM

4,128

7-01-96

10:08 PM

LSAPI.NLM

57,493

7-02-96

1:27 AM

MATHLIB.NLM

417

10-06-95

3:22 PM

MATHLIBC.NLM

426

10-06-95

3:21 PM

NCPNLM32.NLM

103,363

7-01-96

10:37 PM

NETNLM32.NLM

152,707

7-01-96

11:15 PM

NIT.NLM

47,957

7-09-96

3:17 PM

NLMDEBUG.NLM

29,829

7-09-96

3:23 PM

NLMLIB.NLM

88,681

7-15-96

1:42 PM

NLSAPI.NLM

59,742

7-02-96

1:41 AM

NWPSRV.NLM

92,451

7-02-96

2:57 PM

NWSNUT.NLM

58,327

7-01-96

3:45 PM

REQUESTR.NLM

46,171

7-09-96

3:14 PM

SPXS.NLM

41,407

3-06-96

11:40 AM

STREAMS.NLM

63,344

8-01-95

11:46 AM

THREADS.NLM

84,760

7-15-96

12:40 PM

TLI.NLM

24,751

1-30-95

9:33 AM

File Information

Self-Extracting File Name: PLIB1.EXE


Files Included:

Size

Date

Time

PLIB1.TXT

(this file)

A3112.NLM

16,547

2-8-96

6:15 PM

AFTER311.NLM

16,924

2-8-96

6:14 PM

AIO.NLM

11,052

9-21-94

6:29 PM

AUDNLM32.NLM

9,219

7-1-96

11:19 PM

CALNLM32.NLM

88,756

7-1-96

11:03 PM

CLIB.NLM

81,351

7-15-96

12:29 PM

CLNNLM32.NLM

5,248

7-1-96

10:11 PM

CLXNLM32.NLM

3,699

7-1-96

11:17 PM

DSAPI.NLM

620

7-1-96

11:15 PM

DSEVENT.NLM

1,794

8-10-95

8:46 AM

FPSM.NLM

16,547

7-9-96

3:10 PM

IPXS.NLM

10,134

10-20-94

1:53 PM

LOCNLM32.NLM

4,128

7-1-96

10:08 PM

LSAPI.NLM

57,493

7-2-96

1:27 AM

MATHLIB.NLM

417

10-6-95

3:22 PM

MATHLIBC.NLM

426

10-6-95

3:21 PM

NCPNLM32.NLM

103,363

7-1-96

10:37 PM

NETNLM32.NLM

152,707

7-1-96

11:15 PM

NIT.NLM

47,957

7-9-96

3:17 PM

NLMDEBUG.NLM

29,829

7-9-96

3:23 PM

NLMLIB.NLM

88,681

7-15-96

1:42 PM

NLSAPI.NLM

59,742

7-2-96

1:41 AM

NWPSRV.NLM

92,451

7-2-96

2:57 PM

NWSNUT.NLM

58,327

7-1-96

3:45 PM

REQUESTR.NLM

46,171

7-9-96

3:14 PM

SPXS.NLM

41,407

3-6-96

11:40 AM

STREAMS.NLM

63,344

8-1-95

11:46 AM

THREADS.NLM

84,760

7-15-96

12:40 PM

TLI.NLM

24,751

1-30-95

9:33 AM

Add Security Equivalence - DS


Document ID:

TID100508

Document revision:

A

Date and time:

05/29/96 8:19 AM

Alert status:

Yellow

Infomation type:

Issue

Readme for:

ADDEQUAL.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Directory Services

Abstract

This sample is intended to demonstrate the proper steps to add a security equivalence in Directory Services. The compiler used was Borland C 4.52, but the code should compile without any problems on any compiler supporting the SEH constructs used.

File Information

Self-Extracting File Name: ADDEQUAL.EXE


Files Included:

Size

Date

Time

ADDEQUAL.C

8,255

5-29-96

3:59 PM

ADDEQUAL.MAK

1,584

5-29-96

3:01 PM

ADDEQUAL.TXT

(this file)

Document - Public IPX SAP Types Listing


Document ID:

TID100416

Document revision:

A

Date and time:

01/30/96 10:51 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

DSAP1A.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

LAN Protocols

Abstract

This contains a text file which lists all publicly exposed IPX SAP types.

File Information

Self-Extracting File Name: DSAP1A.EXE


Files Included:

Size

Date

Time

SERVER.LST

146,926

1-19-96

12:20 PM

DSAP1A.TXT

(this file)

MKDIR Fails with Long Volume Name


Document ID:

TID100541

Document:

A

Date and time:

06/19/96 10:17 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

MAKEDIR.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN32

Abstract

If you have the win95 client installed and try to make a directory using the Borland MKDIR or the Microsoft _MKDIR DOS commands on a volume with a name of more than 7 characters (LONGNAME, for example), the MKDIR call will fail. There is also an issue with the file server name when it becomes too long.

File Information

Self-Extracting File Name: MAKEDIR.EXE


Files Included:

Size

Date

Time

MKDIR.TXT

918

6-19-96

10:16 AM

MAKEDIR.TXT

(this file)

ATT Private Data Compiler Requirements


Document ID:

TID100524

Document revision:

A

Date and time:

06/06/96 3:57 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

ATTPRVOP.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Telephony SDK

Abstract

There is a possible problem with some ATTPRIV.DLL exported functions if the compiler setting is incorrect.

File Information

Self-Extracting File Name: ATTPRVOP.EXE


Files Included:

Size

Date

Time

ATTPRIVO

273

6-06-96

2:54 PM

ATTPRVOP.TXT

(this file)

NWDSGetBinderyContext() Returns First Context


Document ID:

TID100422

Document revision:

B

Date and time:

02/20/96 12:16 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

GTBNDCXT.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

General Business

Abstract

NWDSGetBinderyContext()will only return the first bindery context even if multiple bindery contexts are enabled.

File Information

Self-Extracting File Name: GTBNDCXT.EXE


Files Included:

Size

Date

Time

JACKTID.TXT

292

2-08-96

10:56 AM

GARBAGE.TXT

134

2-20-96

12:16 PM

GTBNDCXT.TXT

(this file)

Information: Guide to NetWare 4.0 NLM Programming


Document ID:

TID100370

Document revision:

A

Date and time:

01/18/96 3:08 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

INLM4PG.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Abstract

In the publication Novells Guide to NetWare 4.0 NLM Programming [Michael Day, Michael Koontz, and Daniel Marshall; Novell Press-SYBEX], page xxi, there are instructions on how to obtain the books sample code electronically. That information is outdated. The sample code is currently found in the NDEVSUP forum, Library #17 [Publications] and is called NLM4PG.EXE.

File Information

Self-Extracting File Name: INLM4PG.EXE


Files Included:

Size

Date

Time

ABSTRACT

385

1-18-96

3:08 PM

INLM4PG.TXT

(this file)

Information - NLMs Must Have a Data Segment


Document ID:

TID100414

Document revision:

A

Date and time:

01/30/96 12:06 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

INLMA02.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Abstract

All NLMs must have a data segment. See the file listed below for details.

File Information

Self-Extracting File Name: INLMA02.EXE


Files Included:

Size

Date

Time

NLMDS.TXT

682

1-30-96

12:04 PM

INLMA02.TXT

(this file)

Document - IPX Static (Well-Known) Sockets


Document ID:

TID100375

Document revision:

A

Date and time:

01/19/96 3:27 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

DSOC1A.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

LAN Protocols

Abstract

Contains file SOCKET.LST which lists the publicly exposed Well-known IPX static sockets.

File Information

Self-Extracting File Name: DSOC1A.EXE


Files Included:

Size

Date

Time

SOCKET.LST

275,825

1-19-96

12:44 PM

DSOC1A.TXT

(this file)

FEsopen() Fails To Read Compressed Files


Author:

BD

Document ID:

TID100643

Document revision:

A

Date and time:

07/18/96 9:21 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

RDCMPFE.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Abstract

FEsopen() returns -1 when ENABLE_IO_ON_COMPRESSED_DATA_BIT flag bit is used.

Detailed Description

Problem

Customer wanted to do compressed file I/O with the following call:

fh=FEsopen("SYS:MYFILE", O_RDWR, SH_COM PAT,0, ENABLE_IO_ON_COMPRESSED_DATA_BIT | LEAVE_FILE_COMPRESSED_DATA_BIT, PrimaryDataStream);

FEsopen() returned always -1, errno = 6 and NetWareErrno = 144. If the ENABLE_IO_ON_COMPRESSED_DATA_BIT flag was removed the call succeeded, but obviously getting uncompressed data.

Solution

To open for compressed I/O, the file has to be opened in exclusive mode, using SH_DENYRW mode instead of SH_COMPAT. If you are simply reading from the file, you probably want to have an access mode of O_RDONLY. If you are writing it, you probably want O_WRONLY.

File Information

Self-Extracting File Name: RDCMPFE.EXE


Files Included:

Size

Date

Time

RDCMPFE.TXT

(this file)

Error 73 with AT&T G3 PBX


Author:

SP

Document ID:

TID100613

Document revision:

A

Date and time:

07/15/96 3:01 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

NTS073.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Telephony SDK

Abstract

Describes information regarding Error 73 with AT&T G3 PBX that supplements documented actions.

File Information

Self-Extracting File Name: NTS073.EXE


Files Included:

Size

Date

Time

NTS073.TXT

(this file)

NTSER73.TXT

682

7-15-96

1:05 PM

Document - AIO Hardware Driver Types


Document ID:

TID100377

Document revision:

A

Date and time:

01/19/96 10:06 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

DAIO1.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Server

Abstract

This contains AIODTYPE.TXT, which is a listing of all the public AIO hardware device driver types (numbers). Although these numbers are issued by Novell Labs to developers of AIO device drivers, not all the drivers listed have been certified by Novell Labs.

File Information

Self-Extracting File Name: DAIO1.EXE


Files Included:

Size

Date

Time

AIODTYPE.TXT

5,133

7-24-95

1:34 PM

DAIO1.TXT

(this file)

How To Execute a Login Script from Win95


Author:

KB

Document ID:

TID100664

Document revision:

A

Date and time:

07/29/96 9:10 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

LOGSCRPT.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN32

Detailed Description

The current NetWare SDK (Release 8) does not provide a login API that will execute a login script. The Novell Client32 GUI login WLOGIN95.EXE can be executed with appropriate command line parameters to execute a login script.

This allows software developers to write their own login utility and launch Novells WLOGIN95.EXE just to execute the script. Use the Win32 API CreateProcess() to spawn WLOGIN95.EXE with the following syntax:

WLOGIN95 SERVER_NAME/USER_NAME /NA /CONT

The two command line parameters indicate to WLOGIN95 that the user specified on the command line is already authenticated to the specified server and to continue without displaying the GUI login dialog. The script window will be displayed as the script is executed and then closed.

File Information

Self-Extracting File Name: LOGSCRPT.EXE


Files Included:

Size

Date

Time

LOGSCRPT.TXT

(this file)

NWSIPX.DLL Initialization Fails for NT


Author:

JG

Document ID:

TID100666

Document revision:

A

Date and time:

07/29/96 9:48 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

NTDLLF.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN32

Abstract

The message DLL Initialization Fails occurs when using the NT version of NWSIPX.DLL shipped with SDK8. This DLL dated 2-16-96 with file size 20480 must be used with the NetWare Client for NT dated 7-23-96 or later. Earlier versions of the NetWare Client for NT will not work.

File Information

Self-Extracting File Name: NTDLLF.EXE


Files Included:

Size

Date

Time

NTDLLF.TXT

(this file)

BEVO.TXT

280

7-29-96

9:42 AM

Microsoft Emulator vs. Netware 3.12


Author:

MM

Document ID:

TID100645

Document revision:

A

Date and time:

07/18/96 3:43 PM

Alert status:

Yellow

Information:

Issue

Readme for:

IEMULATE.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - DOS

Abstract

Currently there is no way distinguish a Microsoft NetWare emulator from a real NetWare 3.x server. The emulator may not support all of the NCPs so applications fail when run against a Microsoft emulator as opposed to a NetWare server.

Detailed Description

Microsoft shipped an emulator for NetWare 3.12 with win95 OS which can make a workstation appear as a NetWare server. The emulator is installed through the File and Print Services. Microsoft has reverse engineered the Get File Server Information NCP and it responds as if it is a 3.x server.

Currently you cannot distinguish the emulator from a real NetWare 3.x server. The emulator may not support all of the NCPs so applications fail when run against a Microsoft emulator as opposed to a NetWare server.

File Information

Self-Extracting File Name: IEMULATE.EXE


Files Included:

Size

Date

Time

IEMULATE.TXT

(this file)

cstaSetAgentState Function Details


Author:

SP

Document ID:

TID100653

Document revision

A

Date and time:

07/24/96 3:14 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

AGSTAT.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Telephony SDK

Abstract

Further details on cstaSetAgentState function.

Detailed Description

The documentation is not too specific about the cstaSetAgentState function. Following is some additional information. Contact the PBX vendor for PBX-specific implementations of this function. The Set Agent State function takes an agent Login and Password.

These parameters are optional and only used when the PBX includes EAS. EAS is Expert Agent Selection, which allows for logical agents to be set up. When EAS is not available, the developer should use an empty string to specify agent ID and password.

File Information

Self-Extracting File Name: AGSTAT.EXE


Files Included:

Size

Date

Time

AGSTAT.TXT

(this file)

NWSetDriveBase GPFs Windows with NETX


Author:

RM

Document ID:

TID100657

Document revision:

A

Date and time:

07/29/96 8:48 AM

Alert status:

Yellow

Information type:

Issue

Readme for:

R001.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN16

Abstract

NWSetDriveBase will cause a GPF in CLNWIN16.DLL if NETX is being used as the shell on the workstation. The resolution to this problem is to upgrade to VLMs.

File Information

Self-Extracting File Name: R001.EXE


Files Included:

Size

Date

Time

R001.TXT

(this file)

16-bit DLLs from New NetWare Client


Author:

WS

Document ID:

TID100635

Document revision:

A

Date and time:

07/16/96 2:59 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

DLL16.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN16

Abstract

The Delphi 1.0 units contained in the NetWare SDK require access to the 16-bit DLLs. These are contained in the new NetWare Client 32, but you are not required to install the complete client.

To compile/run the 16-bit Delphi applications, it is sufficient to copy the 16-bit DLLs into the Windows system directory. This file is a subset of the NetWare Client 32 containing just the new 16-bit DLLs. They may be used on 16-bit or 32-bit Windows platforms.

File Information

Self-Extracting File Name: DLL16.EXE


Files Included:

Size

Date

Time

DLL16.TXT

(this file)

AUDWIN16.DLL

13,299

1-10-96

7:46 PM

CALWIN16.DLL

101,317

1-11-96

10:58 AM

CLNWIN16.DLL

63,343

1-10-96

12:23 PM

CLXWIN16.DLL

6,995

1-10-96

7:34 PM

LOCWIN16.DLL

58,435

1-10-96

11:21 AM

NCPWIN16.DLL

138,067

1-11-96

10:34 AM

NETWIN16.DLL

175,221

1-10-96

7:11 PM

PRTWIN16.DLL

279,260

1-26-96

12:10 AM

README.TXT

22,404

1-31-96

11:43 AM

New DLLs for Cross Platform APIs


Document ID:

TID100470

Document revision:

A

Date and time:

04/25/96 2:56 PM

Alert status:

Yellow

Information type:

Issue

Readme for:

REL7DLLS.EXE

Novell product class:

NetWare API

Novell product & version:

NetWare SDK 1.0e

Category:

Client SDK - WIN16

Abstract

These are the DLLs contained in release 7 for Windows 3.1 applications to be used by customers running applications using the new cross platform libraries.

File Information

Self-Extracting File Name: REL7DLLS.EXE


Files Included:

Size

Date

Time

AUDWIN16.DLL

13,299

1-10-96

7:46 PM

CALWIN16.DLL

101,317

1-11-96

10:58 AM

CLNWIN16.DLL

63,343

1-10-96

12:23 PM

CLXWIN16.DLL

6,995

1-10-96

7:34 PM

LOCWIN16.DLL

58,435

1-10-96

11:21 AM

NCPWIN16.DLL

138,067

1-11-96

10:34 AM

NETWIN16.DLL

175,221

1-10-96

7:11 PM

NWAPP16.DLL

85,008

1-12-96

3:33 PM

NWIPXSPX.DLL

41,088

1-09-96

2:17 PM

PRTWIN16.DLL

279,260

1-26-96

0:10 AM

TLI_SPX.DLL

52,837

12-13-95

11:24 AM

TLI_TCP.DLL

17,673

7-14-93

4:54 PM

TLI_WIN.DLL

15,713

8-07-95

4:56 PM

REL7DLLS.TXT

(this file)


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