Structure LDAPModA (winldap.h)
La structure LDAPMod contient les données requises pour effectuer une opération de modification.
Syntaxe
typedef struct ldapmodA {
ULONG mod_op;
PCHAR mod_type;
union {
PCHAR *modv_strvals;
berval **modv_bvals;
} mod_vals;
} LDAPModA, *PLDAPModA;
Membres
mod_op
Spécifie l’une des valeurs suivantes pour indiquer l’opération de modification à effectuer.
Vous pouvez utiliser l’opérateur or au niveau du bit pour combiner la valeur de l’opération avec LDAP_MOD_BVALUES pour indiquer que l’union mod_vals utilise le membre modv_bvals. Si LDAP_MOD_BVALUES n’est pas défini, l’union utilise le membre modv_strvals.
LDAP_MOD_ADD (0x00)
Ajoute une valeur à l’entrée. Les valeurs fournies sont ajoutées aux valeurs existantes dans l’attribut.
LDAP_MOD_DELETE (0x01)
Supprime une valeur dans l’entrée. Les valeurs fournies sont supprimées des valeurs d’attribut actuelles.
LDAP_MOD_REPLACE (0x02)
Remplace une valeur dans l’entrée. Les valeurs fournies remplacent les valeurs d’attribut existantes.
mod_type
Pointeur vers une chaîne terminée par null qui spécifie le nom de l’attribut à modifier.
mod_vals
Pointeur vers un tableau de valeurs, le cas échéant, pour ajouter, supprimer ou remplacer. Si mop_op n’inclut pas l’indicateur de LDAP_MOD_BVALUES, le membre modv_strvals est un pointeur vers un tableau de chaînes terminées par null. Si mop_op inclut LDAP_MOD_BVALUES, le membre modv_bvals est un pointeur vers un tableau de pointeurs berval, ce qui est utile pour spécifier des valeurs binaires.
mod_vals.modv_strvals
Pointeur vers un tableau de chaînes terminées par null. Le dernier élément du tableau doit être un pointeur NULL.
mod_vals.modv_bvals
Pointeur vers un tableaunull
Remarques
Affectez des valeurs aux champs de la structure LDAPMod
ldap_modify* avec l’opération de LDAP_MOD_REPLACE ne supprime pas un attribut lorsqu’il a passé un pointeur Null. Toutefois, LDAP_MOD_DELETE supprime l’attribut entier lorsque mod_vals est défini sur NULL.
Lors du passage d’une structure LDAPMod dans les fonctions ldap_add*, seul l’indicateur LDAP_MOD_BVALUES est significatif. La création d’un objet implique d’y ajouter des valeurs.
Note
L’en-tête winldap.h définit LDAPMod comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows Vista |
serveur minimum pris en charge | Windows Server 2008 |
d’en-tête | winldap.h |