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.


DS_Status DS_Identity_New (DS_Identity **identity_p, const char *authz, const char *pkcs12_file, const char *pkcs12_pphr)
 Create an identity. More...
DS_Status DS_Identity_Copy (const DS_Identity *source_identity, DS_Identity **copy_p)
 Copy a DS_Identity structure. More...
DS_Status DS_Identity_get_authz (DS_Identity *identity, const char **authz)
 Get the authz identity [in] Handle authz [out] authz (may be NULL)
DS_Status DS_Identity_get_ident (DS_Identity *identity, X509_IDENTITY **id)
 Get the underlying X509_IDENTITY identity [in] Handle id [out] underlying identity.
DS_Status DS_Identity_get_cert_ctx (DS_Identity *identity, X509_CERT_CTX **ctx)
 Get the underlying X509_CERT_CTX. This generates one if necessary (from the identity and the application certificates) identity [in] Handle ctx [out] underlying certificate context.
void DS_Identity_Delete (DS_Identity *identity)
 Delete identity. More...
DS_Status DS_Identity_get_user_certificate (DS_Identity *identity, X509 **cert)
 Extract the certificate identity [in] Handle cert [out] cert.
DS_Status DS_Identity_get_trust_anchors (DS_Identity *identity, DS_AttrValList **av_list_p)
 Get trust anchors identity [in] Handle av_list_p [out] certificates.
DS_Status DS_Identity_get_certificates (DS_Identity *identity, DS_AttrValList **av_list_p)
 Get untrusted certificates identity [in] Handle av_list_p [out] certificates.

Detailed Description

Function Documentation

◆ DS_Identity_New()

DS_Status DS_Identity_New ( DS_Identity **  identity_p,
const char *  authz,
const char *  pkcs12_file,
const char *  pkcs12_pphr 

Create an identity.

identity_p[out] Returned handle or NULL on error
authz[in] AUTHZ parameter to use in SASL or NULL (if n/a)
pkcs12_file[in] Name of the PKCS#12 file
pkcs12_pphr[in] Passphrase
Return values
DS_E_BADPARAMidentity_p or pkcs12_file or pkcs12_pphr was NULL
DS_E_INTERNALthere was some internal error
DS_E_NOERRORA valid handle was returned

◆ DS_Identity_Copy()

DS_Status DS_Identity_Copy ( const DS_Identity source_identity,
DS_Identity **  copy_p 

Copy a DS_Identity structure.

source_identity[in] the DS_Identity to copy
copy_p[out] Pointer to returned copy.
Return values
DS_E_BADPARAMidentity or copy_p was NULL
DS_E_MOMEMORYAn internal memory allocation failed
DS_E_INTERNALAn internal error occurred
DS_E_NOERRORA valid handle was returned

◆ DS_Identity_Delete()

void DS_Identity_Delete ( DS_Identity identity)

Delete identity.

identity [in] Handle to delete