Welcome to the White Pages Application course. This is one of a series of DeveloperNet University courses which helps you learn Novell Directory Services (NDS) programming.
This course takes you through the process of programming a "White Pages" application. The purpose of a "White Pages" application is to allow developers to build a Hello World application, Internet access, and NDS development.
CodeWarrior is used in each of these examples to create an NLM:
- The Hello.NLM is used to verify that the install of tools was successful and that the developer can quickly build, load, and unload an NLM on a NetWare server.
- The ServSock.NLM opens a server socket that will communicate to programs on the Internet with a TCP/IP connection.
- The BookMark.NLM builds attributes in NDS and then creates a class in NDS.
- The NDS.NLM authenticates, sets context, creates, modifies, and then deletes the object in Novell's Directory Services using DSAPIs.
Course Objective |
This course will introduce you to NLM programming and NLM programming tools.
|
Course Description |
This course takes you through the process of programming a basic hello world NLM followed by other NLMs providing Internet and NDS access.
|
Estimated Time to Take this Course |
This course takes the average C programmer about 10 hours to complete. |

|

|
|
Prerequisites |
- Entry level C programming skills.
- The ability use a development environment to build C-based Win32 applications and DLLs.
- A DeveloperNet subscription. (The Electronic Level subscription is free!)
|
Required Items |
See "Required Setup". |
Optional Items |
None. |
Required Setup |
- A 200 MHZ Pentium-based workstation with 64 MB RAM, running Windows NT 4.0, and the NetWare Client for NT 4.60.
- A NetWare 5.0 or greater file server.
- Metrowerks* CodeWarrior, Professional Edition, and CodeWarrior PDK for NetWare development environments.
|
Development Environment |
Metrowerks* CodeWarrior, Professional Edition, and CodeWarrior PDK for NetWare development environments. |

|

|
|
|
Table of Contents
This course consists of lessons,
exercises, and optional self-assessment tests.
|
Things You Should Know |
The introduction is what you are reading now. |
Description & Requirements |
The configuration that is needed to complete this course. |
When to Write an NLM |
When to use an NLM is explained. NLMs modify the NetWare Operating System for a developers needs. |
CodeWarrior |
The projects that are generated for building NLMs need to be downloaded and used with CodeWarrior. |
NLM Compared to a DLL |
A discussion that compares a NetWare Loadable module to a windows Dynamic Link Library. |
Starting NLM Programming |
Building the projects from the download file NLM.EXE. All projects must be available in CodeWarrior after installation. |
Coding Example One |
The first coding example will display Hello World on a NetWare server. |
A Simple Debug Decision |
A simple discussion about debugging NLMs on NetWare. |
Coding Example Two |
An NLM example that connects to an Internet socket. Includes a brief discussion of ports and IP addresses. |
Create A Class in NDS |
Bookmark.NLM and NDS.NLM modify the directory. Use ConsoleOne to verify that NDS objects were modified. |
Directory Concepts |
NDS concepts that will help in understanding issues involved in programming. |
Using NDS |
An overview of NDS.mcp and the related code. |
Include Files |
An explanation of which files are used in NDS programming. |
Threads |
A simple explanation of multi-processing in a NetWare server. |
Context |
An example of context and how it applies to NDS. |
Authenticate |
Getting user name and password for an NDS connection. |
Create an Attribute |
NDS has fields that are called attributes. These attributes are created in NDS in this example. |
Create A Class |
Examining code that creates a class in NDS. |
Adding An Attribute |
Adding a attribute or field to an existing NDS class. |
Creating Data |
Adding an object to NDS with its associated data. |
Changing an Object Name |
Changing the relative distinguished name of an object in NDS. |
Changing an Object |
Modifying the data in an NDS object. Use ConsoleOne to verify that data has been modified correctly. |
Searching |
Finding an object from a specified context. |
Removing an Object |
Deleting an object from NDS. |
Cleanup |
Understanding resources that have been used and verifying that the resources have been released for other programs. |
NLM Certification |
Novell's tools and procedures that check NLMs for quality. |

|

|
|
Click the next button to go to the next page.