### Step 1: Export Object Identifiers for Required Directory Classes and Attributes

In the following code fragment, the OM_EXPORT macro allocates memory for the constants that represent the object classes and attributes required for the add, list, and remove operations:

/* The application has to export the object identifiers */

/* it requires. */

OM_EXPORT (DS_C_AVA)

OM_EXPORT (DS_C_DS_RDN)

OM_EXPORT (DS_C_DS_DN)

OM_EXPORT (DS_C_ENTRY_INFO_SELECTION)

OM_EXPORT (DS_C_ATTRIBUTE)

OM_EXPORT (DS_C_ATTRIBUTE_LIST)

OM_EXPORT (DS_A_COUNTRY_NAME)

OM_EXPORT (DS_A_ORG_NAME)

OM_EXPORT (DS_A_ORG_UNIT_NAME)

OM_EXPORT (DS_A_COMMON_NAME)

OM_EXPORT (DS_A_OBJECT_CLASS)

OM_EXPORT (DS_A_PHONE_NBR)

OM_EXPORT (DS_A_USER_PASSWORD)

OM_EXPORT (DS_A_SURNAME)

OM_EXPORT (DS_O_TOP)

OM_EXPORT (DS_O_PERSON)

OM_EXPORT (DS_O_ORG_PERSON)

###