Partager via


ldap_next_attribute, fonction (winldap.h)

Pour une entrée donnée, la fonction ldap_next_attribute retourne l’attribut suivant.

Syntaxe

WINLDAPAPI PCHAR LDAPAPI ldap_next_attribute(
  [in]      LDAP        *ld,
  [in]      LDAPMessage *entry,
  [in, out] BerElement  *ptr
);

Paramètres

[in] ld

Handle de session.

[in] entry

Entrée dont les attributs doivent être pas à pas, tels que retournés par ldap_first_entry ou ldap_next_entry.

[in, out] ptr

Adresse d’un pointeur utilisé en interne pour suivre la position actuelle dans l’entrée.

Valeur retournée

Si la fonction réussit, elle retourne un pointeur vers une chaîne terminée par null qui contient le nom d’attribut actuel. S’il n’y a plus d’attributs à parcourir, elle retourne NULL. Le paramètre d’erreur de session dans la structure de données LDAP est défini sur 0 dans les deux cas.

Si la fonction échoue, elle retourne NULL et définit le paramètre d’erreur de session dans la structure de données LDAP sur le code d’erreur LDAP.

Remarques

Utilisez ldap_next_attribute conjointement avec ldap_first_attribute pour parcourir la liste des types d’attributs retournés avec une entrée. Vous pouvez ensuite passer ces noms d’attributs dans un appel à ldap_get_values pour récupérer leurs valeurs associées.

Un appel à ldap_next_attribute retourne, via le paramètre ptr , un pointeur vers une structure BerElement . Passez ce pointeur à l’appel suivant à ldap_next_attribute pour suivre la position actuelle dans la liste des attributs. Une fois que vous avez terminé de parcourir une liste d’attributs et que ptr n’a pas la valeur NULL, libérez le pointeur en appelant ber_free (ptr, 0). N’oubliez pas que vous devez passer le deuxième paramètre sous la forme 0 (zéro) dans cet appel.

La fonction ldap_next_attribute retourne un pointeur vers une mémoire tampon allouée en interne qui contient le nom de l’attribut actuel. Libérez cette mémoire tampon, lorsqu’elle n’est plus nécessaire, en appelant ldap_memfree. Étant donné que cette mémoire tampon est remplacée lors de l’appel suivant à ldap_first_attribute ou ldap_next_attribute, l’utilisateur doit effectuer une copie du nom de l’attribut s’il doit être conservé pour traitement.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête winldap.h
Bibliothèque Wldap32.lib
DLL Wldap32.dll

Voir aussi

BerElement

Fonctions

Recherche dans un répertoire

ber_free

ldap_first_attribute

ldap_first_entry

ldap_get_values

ldap_memfree

ldap_next_entry