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_bindparams.h File Reference

API methods for handling a structure used to manage bind parameters. More...

#include <stddef.h>
#include <sys/stat.h>
#include <isode/ds/dsapi/dsapi_cdecl.h>
#include <isode/ds/dsapi/dsapi_types.h>
#include <openssl/evp.h>
#include <isode/crypto/x509.h>

Go to the source code of this file.

Macros

#define DS_SASL_BEST_SSF   (65535)
 

Enumerations

enum  DSBindType { DSAnonymous = 0, DSSimple = 1, DSStrong = 2, DSSASL = 3 }
 

Functions

DS_Status DS_BindParams_New (DS_BindParams **params_p)
 Create a bind parameters structure. More...
 
void DS_BindParams_Delete (DS_BindParams *params)
 Delete a bind parameters object. More...
 
DS_Status DS_BindParams_Copy (const DS_BindParams *in, DS_BindParams **copy_p)
 Copy a DS_BindParams structure. More...
 
DS_Status DS_BindParams_GetBindType (const DS_BindParams *params, DSBindType *bind_type)
 Get the bind type for this bind params. More...
 
DS_Status DS_BindParams_SetIdentity (DS_BindParams *params, const DS_Identity *id)
 Set or clear the identity for this bind params. More...
 
DS_Status DS_BindParams_SetCertificateServer (DS_BindParams *params, const char *ldap_host, long ldap_port, int check_crls)
 Set or clear the details for the LDAP server that holds certificates and/or CRLs. More...
 
DS_Status DS_BindParams_GetIdentity (const DS_BindParams *params, const DS_Identity **id_p)
 identity for this bind params. More...
 
DS_Status DS_BindParams_GetCertificateServer (const DS_BindParams *params, const char **ldap_host, long *ldap_port, int *check_crls)
 Get the details of the LDAP server used to locate certificates and/or CRLs. More...
 
DS_Status DS_BindParams_SetAnonymous (DS_BindParams *params)
 Mark this set of bind parameters as being for an anonymous bind. More...
 
DS_Status DS_BindParams_SetSimple (DS_BindParams *params, const DS_DN *bind_dn, const char *password)
 Mark this set of bind parameters as being for a simple bind. More...
 
DS_Status DS_BindParams_SetStrong (DS_BindParams *params, const DS_Identity *id, const DS_DN *dsa_dn)
 Mark this set of bind parameters as being for a strong bind. More...
 
DS_Status DS_BindParams_SetSASL (DS_BindParams *params, const char *sasl_mechs, const DS_SASLProps *sasl_props, const char *sasl_authentication, const char *sasl_secret)
 Mark this set of bind parameters as being for a SASL bind. It only makes sense to do SASL binds on an LDAP connection (not DAP) More...
 
DS_Status DS_SASLProps_New (DS_SASLProps **props_p)
 Allocate a new DS_SASLProps structure. More...
 
void DS_SASLProps_Delete (DS_SASLProps *props)
 Delete a DS_SASLProps structure. More...
 
DS_Status DS_SASLProps_Copy (const DS_SASLProps *in, DS_SASLProps **copy_p)
 Copy a DS_SASLProps structure. More...
 
DS_Status DS_SASLProps_SetSSF (DS_SASLProps *props, int min_ssf, int max_ssf)
 Set or clear the security strength factor (SSF) associated with this SASLProps. More...
 
DS_Status DS_SASLProps_GetSSF (const DS_SASLProps *props, int *min_ssf_p, int *max_ssf_p)
 Determine the security strength factor (SSF) associated with this SASLProps. More...
 
DS_Status DS_SASLProps_SetMaxBufferSize (DS_SASLProps *props, int maxbufsize)
 Set the security layer maximum buffer size associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetNoPlaintext (DS_SASLProps *props, int noplain)
 Set the "NoPlaintext" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetNoActive (DS_SASLProps *props, int noactive)
 Set the "NoActive" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetNoDictionary (DS_SASLProps *props, int nodict)
 Set the "NoDictionary" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetForwardSecrecy (DS_SASLProps *props, int forwardsec)
 Set the "ForwardSecrecy" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetNoAnonymous (DS_SASLProps *props, int noanonymous)
 Set the "NoAnonymous" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetPassCredentials (DS_SASLProps *props, int passcred)
 Set the "PassCredentials" flag associated with with this SASLProps. More...
 
DS_Status DS_SASLProps_SetADcompat (DS_SASLProps *props, int enable)
 Set or clear the "Active Directory compatibility" flag associated with this SASLProps. More...
 

Detailed Description

API methods for handling a structure used to manage bind parameters.

Bind parameters are used to specify various different combinations of options to perform bind operations, and are intended to provide a more flexible and extensible mechanism than the dedicated "anon", "simple" and "strong" bind APIs.

Unless specified, all types and functions declared in this module are

Since
DSAPI_VERSION 2040

Definition in file dsapi_bindparams.h.