ldap_delete_ext function (winldap.h)

The ldap_delete_ext function is an extended routine that removes a leaf entry from the directory tree.


  [in]  LDAP          *ld,
  [in]  const PSTR    dn,
  [in]  PLDAPControlA *ServerControls,
  [in]  PLDAPControlA *ClientControls,
  [out] ULONG         *MessageNumber


[in] ld

The session handle.

[in] dn

A pointer to a null-terminated string that contains the distinguished name of the entry to delete.

[in] ServerControls

Optional. List of LDAP server controls. If not used, set this parameter to NULL.

[in] ClientControls

Optional. List of client controls. If not used, set this parameter to NULL.

[out] MessageNumber

Message ID for the request.

Return value

If the function succeeds, LDAP_SUCCESS is returned.

If the function fails, an error code is returned. For more information, see Return Values.


The ldap_delete_ext function removes a leaf entry from the directory tree. LDAP does not support deletion of entire subtrees in a single operation, however there is an extended control, LDAP_SERVER_TREE_DELETE_OID, used to perform this operation.

The parameters and effects of ldap_delete_ext include those of ldap_delete. The extended routine includes parameters to support client and server controls and thread safety.

If the operation succeeds, ldap_delete_ext passes the message ID to the caller as a parameter when the operation returns successfully. To get the result of the operation, call ldap_result with the message ID.

To have the function return the results directly, use the synchronous routine ldap_delete_ext_s.

Multithreading: Calls to ldap_delete_ext are thread-safe.


Minimum supported client Windows Vista
Minimum supported server Windows Server 2008
Target Platform Windows
Header winldap.h
Library Wldap32.lib
DLL Wldap32.dll

See also

Extended Controls


Modifying a Directory Entry

Return Values

Using Controls