Summary: Isode provides a number of APIs which allow integrators and product developers to build components that allow client programs to connect to, query and modify data in the directory.
dsapi.h File Reference

Methods for session management and invoking directory operations. More...

Go to the source code of this file.

Functions

DS_Status DS_Initialize (void)
 Initialize the Simple Directory API. More...
 
DS_Status DS_InitializeWithLog (int)
 Initialize the Simple Directory API. More...
 
DS_Status DS_InitializeSecurity (const char *path)
 Initialize the security environment. More...
 
void DS_UninitializeSecurity (void)
 Disable strong operations and release any resources associated with the security environment. More...
 
int DS_Version (void)
 Return the DSAPI library version. More...
 
DS_Status DS_Session_New (const char *address, int force_tls, DS_Session **session_p)
 Create an unbound directory session, validating the specified address. More...
 
DS_Status DS_BindAnonymousSync (DS_Session *session, DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform an anonymous synchronous directory bind. More...
 
DS_Status DS_BindSync_Anonymous (const char *address, DS_Session **session_p) DSAPI_DEPRECATED
 Perform an anonymous synchronous directory bind. More...
 
DS_Status DS_BindSimpleSync (DS_Session *session, const DS_DN *dn, const char *password, DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory bind using simple credentials. More...
 
DS_Status DS_BindSync_Simple (const char *address, const DS_DN *dn, const char *password, DS_Session **session_p) DSAPI_DEPRECATED
 Perform a synchronous directory bind using simple credentials. More...
 
DS_Status DS_BindStrongSync (DS_Session *session, const DS_DN *dsa_dn, const DS_DN *dn, const char *password, DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory bind using strong credentials. More...
 
DS_Status DS_BindSync_Strong (const char *address, const DS_DN *dsa_dn, const DS_DN *dn, const char *password, DS_Session **session_p) DSAPI_DEPRECATED
 Perform a synchronous directory bind using strong credentials. More...
 
const char ** DS_SaslMechList (void)
 Perform a synchronous directory bind using SASL. More...
 
DS_Status DS_BindSASLSync (DS_Session *session, const char *mechanism, const char *userid, const char *secret, DS_CommonArgs *common_args, DS_Indication **indication_p)
 
DS_Status DS_BindSync_SASL (const char *address, const char *mechanism, const char *userid, const char *secret, DS_Session **session_p) DSAPI_DEPRECATED
 Perform a synchronous directory bind using SASL. More...
 
DS_Status DS_BindWithParameters (DS_Session *session, const DS_BindParams *bind_params, DS_CommonArgs *common_args, DS_Indication **indication_p)
 Bind using a set of bind parameters. More...
 
void DS_UnbindSync (DS_Session **session_p)
 Perform a synchronous directory unbind. More...
 
DS_Status DS_GetSessionState (const DS_Session *session_p, DSSessionState *state_p)
 Get the current session state. More...
 
DS_Status DS_GetSessionCertificates (const DS_Session *session_p, DS_AttrValList **av_list_p, int *identity_check_result)
 Get and/or verify certificates that were sent by a server during a strong bind operation. More...
 
DS_Status DS_AllowUnknownAttrs (DS_Session *session, int allow_unknown)
 Turn on or off the flag that allows unknown attributes to be read over LDAP. More...
 
DS_Status DS_GetAllowUnknownAttrs (DS_Session *session, int *allow_unknown_p)
 Get the values of the flag that allows unknown attributes to be read over LDAP. More...
 
DS_Status DS_ReadSync (DS_Session *session, const DS_DN *dn, const char *attr_selection[], DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory read entry operation. More...
 
DS_Status DS_SearchSync (DS_Session *session, const DS_DN *base_dn, const char *filter, DSSearchScope search_scope, const char *attr_selection[], DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory search operation. More...
 
DS_Status DS_NextPageSync (DS_Session *session, DS_Indication *di)
 Request the next page of a paged results search. More...
 
DS_Status DS_AddSync (DS_Session *session, const DS_Entry *entry, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory add operation. More...
 
DS_Status DS_AddSyncByDN (DS_Session *session, const DS_DN *dn, const DS_AttrList *attrs, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory add operation. More...
 
DS_Status DS_DeleteSync (DS_Session *session, const DS_DN *dn, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory delete operation. More...
 
DS_Status DS_ModifySync (DS_Session *session, const DS_Entry *entry, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory modify operation. More...
 
DS_Status DS_ModifySyncByDN (DS_Session *session, const DS_DN *dn, const DS_AttrList *changes, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory modify operation. More...
 
DS_Status DS_RenameSync (DS_Session *session, const DS_DN *old_dn, const DS_DN *new_dn, int delete_old_rdn, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory rename operation. More...
 
DS_Status DS_CompareSync (DS_Session *session, const DS_DN *dn, const DS_Attr *attr, const DS_CommonArgs *common_args, DS_Indication **indication_p)
 Perform a synchronous directory compare operation. More...
 
DS_Status DS_ReadAsync (DS_Session *session, const DS_DN *dn, const char *attr_selection[], DS_CommonArgs *common_args, int *ret_op_id)
 Invoke an asynchronous directory read entry operation. More...
 
DS_Status DS_TxnStartSync (DS_Session *session, DS_Indication **indication_p)
 Perform a synchronous directory transaction start operation. More...
 
DS_Status DS_TxnEndSync (DS_Session *session, unsigned char *txn_id, size_t txn_id_len, char commit, DS_Indication **indication_p)
 Perform a synchronous directory transaction start (commit) operation. More...
 
DS_Status DS_Poll (DS_Session *session, int op_id, DS_Indication **indication_p)
 Poll for an asynchronous operation indication. More...
 
DS_Status DS_Cancel (DS_Session *session, int op_id)
 Cancel a previously issued asynchronous operation. More...
 
DS_Status DS_Indication_GetStatus (DS_Indication *indication, DS_ErrorType *type_p)
 Get the directory (operation) error type. More...
 
DS_Status DS_Indication_GetErrorCodes (DS_Indication *indication, DS_ErrorType *type_p, DS_ErrorValue *value_p)
 Get the directory (operation) error type and value codes. More...
 
DS_Status DS_Indication_GetSignatureError (DS_Indication *indication, int *sign_error_p)
 Determine whether signature verification failed for a signed operation. More...
 
DS_Status DS_Indication_GetLimitProblem (DS_Indication *indication, DSLimitProblem *limit_p)
 Get any limit problem associated with a search result. More...
 
DS_Status DS_Indication_GetEntryCount (DS_Indication *indication, int *ret_num_p)
 Return a count of the set of entries contained in the operation outcome. More...
 
DS_Status DS_Indication_GetEntryList (DS_Indication *indication, const DS_EntryList **entry_list_p)
 Return the set of entries contained in the operation outcome. More...
 
DS_EntryDS_Indication_GetFirstEntry (DS_Indication *indication)
 Return the first entry from an Indication. More...
 
DS_Status DS_Indication_GetCompareResult (DS_Indication *indication, int *matched)
 Return a flag indicating whether a compare operation found a match. More...
 
DS_Status DS_Indication_GetTxnStartResult (DS_Indication *indication, unsigned char **txn_id, size_t *txn_id_len)
 Return the result of a transaction start request. On success the result is an identifier in the form of a set of octets (as an 'unsigned char *). More...
 
DS_Status DS_Indication_GetTxnEndResult (DS_Indication *indication, int *fail_msg_id)
 Return the result of a transaction end request. On success error the message ID of the update request that caused the error is set in fail_msg_id. More...
 
DS_Status DS_Indication_GetContinuationReferences (const DS_Indication *indication, const DS_ReferralList **referral_list_p)
 Return the set of continuation references resulting from a search operation. More...
 
DS_Status DS_Indication_GetReferrals (const DS_Indication *indication, const DS_ReferralList **referral_list_p)
 Return information about an operation for which the directory returned a referral. More...
 
DS_Status DS_Indication_GetPasswordPolicyExpiryWarning (const DS_Indication *indication, int *time_before_expiration_p)
 Return the expiry time of the current account's password. More...
 
DS_Status DS_Indication_GetPasswordPolicyGraceWarning (const DS_Indication *indication, int *grace_authentications_remaining_p)
 Return the number of grace authentications left for the current account's password. More...
 
DS_Status DS_Indication_GetPasswordPolicyErrorCode (const DS_Indication *indication, DS_PasswordPolicyError *error_p)
 Return the error code relating to the current account's password. More...
 
DS_Status DS_Indication_GetExtraErrorText (const DS_Indication *indication, const char **error_text_p)
 Determine the supplementary text string returned by the directory. More...
 
DS_Status DS_Indication_HasMoreResults (const DS_Indication *indication, int *more_pages)
 Check if there are more pages for a paged results search. More...
 
void DS_Indication_Delete (DS_Indication *indication)
 Free a DS_Indication structure. More...
 

Detailed Description

Methods for session management and invoking directory operations.

This is the set of procedures used to invoke operations on the directory and receive any results or errors.

Definition in file dsapi.h.