Adds a new object class definition to the eDirectory schema.
#include <nwnet.h> or #include <nwdssch.h> N_EXTERN_LIBRARY (NWDSCCODE) NWDSDefineClass ( NWDSContextHandle context, pnstr8 className, pClass_Info_T classInfo, pBuf_T classItems);
uses netwin32 Function NWDSDefineClass (context : NWDSContextHandle; className : pnstr8; classInfo : pClass_Info_T; classItems : pBuf_T ) : NWDSCCODE;
(IN) Specifies the NDS context for the request.
(IN) Points to the name of the new object class.
(IN) Points to the class flags and ASN.1 ID for the new class.
(IN) Points to the remaining class definition.
These are common return values.
0x0000 0000 |
SUCCESSFUL |
0x8996 |
SERVER_OUT_OF_MEMORY |
0x89E2 |
TOO_FEW_FRAGMENTS |
0x89E3 |
TOO_MANY_FRAGMENTS |
0x89E4 |
PROTOCOL_VIOLATION |
0x89E5 |
SIZE_LIMIT_EXCEEDED |
0x89FD |
UNKNOWN_REQUEST |
0x89FD |
INVALID_PACKET_LENGTH |
0x89FE |
BAD_PACKET |
0x89FF |
Failure not related to eDirectory |
nonzero value |
Nonzero values indicate errors. See |
The name of the new object class must be unique within the eDirectory schema class definitions. The names of the classes for the base schema are listed in Base Object Class Definitions
. New object classes added by other applications must be read from the schema on a server by calling NWDSReadClassDef.
New object class names should be cleared through Novell Developer Support to guarantee uniqueness.
The classItems parameter points to a request buffer containing additional information that defines the object. This buffer contains a sequence of five lists containing either class names or attribute names. The lists must occur in the following order.
Super Class Names
Containment Class Names
Naming Attribute Names
Mandatory Attribute Names
Optional Attribute Names
For step-by-step instructions, see Creating a Class Definition.