Directory Services


The ldap_add_s function initiates a synchronous add operation that adds an entry to a tree. The parent of the entry being added must already exist or the parent must be empty (equal to the root distinguished name) for an add operation to succeed.

ULONG ldap_add_s(
  LDAP* ld,
  PCHAR dn,
  LDAPMod* attrs[]


[in] The session handle.
[in] A pointer to a null-terminated string that contains the distinguished name of the entry to add.
[in] An array of pointers to LDAPMod structures. Each structure specifies a single attribute. See Remarks for more information.

Return Values

If the function succeeds, the return value is LDAP_SUCCESS.

If the function fails, it returns an error code. See Return Values for more information.


Before calling ldap_add_s. 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. See Modifying a Directory Entry for more information.

Upon completion of the add operation, ldap_add_s returns to the caller. Use ldap_add if you prefer to have the operation carried out asynchronously.

Multithreading: Calls to ldap_add_s are thread-safe.

Note  When connecting to an LDAP 2 server, the application must perform a bind operation (by calling one of the ldap_bind or ldap_simple_bind routines) before attempting any other operations.


Client: Included in Windows XP and Windows 2000 Professional.
Server: Included in Windows Server 2003 and Windows 2000 Server.
Redistributable: Requires Active Directory Client Extension on Windows NT 4.0 SP6a and Windows 95/98/Me.
Unicode: Implemented as Unicode and ANSI versions on all platforms.
Header: Declared in Winldap.h.
Library: Use Wldap32.lib.

See Also

Functions, ldap_add, ldap_bind, ldap_simple_bind, LDAPMod, Modifying a Directory Entry, Return Values