ldap_add

This function initiates an asynchronous add operation to a tree. For an add operation to succeed, the parent of the entry being added must already exist or the parent must be empty (equal to the distinguished name of the root).

ULONG ldap_add(
  LDAP* ld,
  UNICODE PTCHAR dn,
  LDAPMod* attrs[]
);

Parameters

  • ld
    [in] Session handle.
  • dn
    [in] Distinguished name of the entry to add.
  • attrs
    [in] Null-terminated array of pointers to LDAPMod structures. Each structure specifies a single attribute.

Return Values

If this function succeeds, the return value is the message identifier of the add operation.

If this function fails, it returns –1 and sets the session error parameters in the LDAP data structure.

Remarks

Before calling this function, you must create an entry by specifying its attributes in LDAPMod structures. Set the mod_op member of each structure to LDAP_MOD_ADD, and set the mod_type and mod_vals members as appropriate for your entry.

As an asynchronous function, this function returns a message identifier for the operation. Call the ldap_result function with the message identifier to get the result of the operation. To cancel an asynchronous add operation before it has been completed, call the ldap_abandon function.

If you prefer to have the results returned directly, use the synchronous function ldap_add_s. Use ldap_add_ext or ldap_add_ext_s if you need support for LDAP 3 server and client controls.

In a multithreading environment, calls to this function are not thread-safe because it returns a message identifier rather than the return code. To determine whether the call returned an error value, you have to retrieve the return code from the connection block. It is possible for another thread to overwrite the return code before you retrieve it. Use ldap_add_ext or ldap_add_ext_s, both of which are thread-safe.

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: Winldap.h.
Link Library: Wldap32.lib.

See Also

ldap_abandon | ldap_add_ext | ldap_add_ext_s | ldap_add_s | ldap_bind | ldap_result | ldap_simple_bind | LDAP | LDAPMod

 Last updated on Friday, April 09, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.