Поделиться через


Структура LDAPModA (winldap.h)

Структура LDAPMod содержит данные, необходимые для выполнения операции изменения.

Синтаксис

typedef struct ldapmodA {
  ULONG mod_op;
  PCHAR mod_type;
  union {
    PCHAR  *modv_strvals;
    berval **modv_bvals;
  } mod_vals;
} LDAPModA, *PLDAPModA;

Члены

mod_op

Указывает одно из следующих значений, чтобы указать операцию изменения для выполнения.

С помощью побитового оператора OR можно объединить значение операции с LDAP_MOD_BVALUES, чтобы указать, что объединение mod_vals использует элемент modv_bvals. Если LDAP_MOD_BVALUES не задано, объединение использует элемент modv_strvals.

LDAP_MOD_ADD (0x00)

Добавляет значение в запись. Указанные значения добавляются к существующим значениям в атрибуте.

LDAP_MOD_DELETE (0x01)

Удаляет значение в записи. Указанные значения удаляются из текущих значений атрибутов.

LDAP_MOD_REPLACE (0x02)

Заменяет значение в записи. Указанные значения заменяют существующие значения атрибутов.

mod_type

Указатель на строку, завершающую значение NULL, которая указывает имя атрибута для изменения.

mod_vals

Указатель на массив значений, если таковые есть, для добавления, удаления или замены. Если mop_op не включает флаг LDAP_MOD_BVALUES, элемент modv_strvals является указателем на массив строк, завершающих значение NULL. Если mop_op включает LDAP_MOD_BVALUES, элемент modv_bvals является указателем на массив указателей berval, что полезно для указания двоичных значений.

mod_vals.modv_strvals

Указатель на массив строк, завершаемых значением NULL. Последний элемент массива должен быть указателем NULL.

mod_vals.modv_bvals

Указатель на массив NULL-завершенный массив указателей berval. Последний элемент массива должен быть указателем NULL.

Замечания

Назначьте значения полям структуры LDAPMod перед вызовом функции изменения (ldap_add*или ldap_modify*).

ldap_modify* с операцией LDAP_MOD_REPLACE не удаляет атрибут при передаче указателя NULL. Однако LDAP_MOD_DELETE удаляет весь атрибут, если mod_vals задано значение NULL.

При передаче структуры LDAPMod в функции ldap_add** флаг LDAP_MOD_BVALUES имеет важное значение. Создание нового объекта подразумевает добавление значений в него.

Заметка

Заголовок winldap.h определяет LDAPMod как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista
минимальный поддерживаемый сервер Windows Server 2008
заголовка winldap.h

См. также

структуры данных

изменение записи каталога

berval

ldap_add

ldap_modify

ldap_modify_s