Each directory object specifies the set of attributes that are stored in a directory entry of that type. Attributes have metadata and one or more values. An attribute’s metadata is represented by a CS_ATTRIBUTE structure, and consists of:
A name that identifies the attribute
Because attribute-naming schemes can vary among directory providers, Client-Library uses an object identifier (or OID) to identify each attribute. Client-Library provides a predefined OID-string macro for each attribute.
A value syntax specifier
This is an integer code that identifies which C datatype holds the attribute’s values.
The number of values in this instance of the attribute
Values are retrieved with a CS_ATTRVALUE union. Applications use the syntax specifier to know which member of the union holds the value.
See “Retrieving object attributes and attribute values” for a description of the CS_ATTRIBUTE and CS_ATTRVALUE structures.