PreviousNext

The DS_C_ATTRIBUTE_LIST Object

A DS_C_ATTRIBUTE_LIST class object is required as input to ds_add_entry( ). The object contains a list of the directory attributes you want associated with the entry that is to be added.

Its general structure is as follows:

· Attribute List class type attribute

· Zero or more Attribute objects:

- Attribute class type attribute

- Attribute Type attribute

- Zero or more Attribute Value(s)

Thus, a DS_C_ATTRIBUTE_LIST object containing one attribute consists of two object descriptor arrays because each additional attribute in the list requires an additional descriptor array to represent it. The subobject arrays' names (that is, addresses) are the contents of the value fields in the DS_ATTRIBUTES object descriptors.

The following figure shows the attributes of the DS_C_ATTRIBUTE_LIST object.


The DS_C_ATTRIBUTE_LIST Object

· OM_CLASS

The value of this attribute is an OID string that identifies the object's class; its value is always DS_C_ATTRIBUTE_LIST.

· DS_ATTRIBUTES

This is an attribute whose value is another object of class DS_C_ATTRIBUTE (see The DS_C_ATTRIBUTE Object). The attribute is defined by a separate array of object descriptors whose base address is the value of the DS_ATTRIBUTES attribute. Note that there can be any number of instances of this attribute, and therefore any number of subobjects.