Functions to perform SASL binds against an LDAP directory.
More...
#include "ldap.h"
#include <freeradius-devel/radiusd.h>
#include <freeradius-devel/rad_assert.h>
#include <sasl/sasl.h>
Go to the source code of this file.
|
static int | _sasl_interact (UNUSED LDAP *handle, UNUSED unsigned flags, void *ctx, void *sasl_callbacks) |
| Callback for ldap_sasl_interactive_bind. More...
|
|
ldap_rcode_t | rlm_ldap_sasl_interactive (rlm_ldap_t const *inst, REQUEST *request, ldap_handle_t *conn, char const *identity, char const *password, ldap_sasl *sasl, LDAPControl **serverctrls, LDAPControl **clientctrls, char const **error, char **extra) |
| Initiate an LDAP interactive bind. More...
|
|
Functions to perform SASL binds against an LDAP directory.
- Id:
- 04af92c82870f791347122dd74376eb6b6493ec8
- Author
- Arran Cudbard-Bell a.cud.nosp@m.bard.nosp@m.b@fre.nosp@m.erad.nosp@m.ius.o.nosp@m.rg
- Copyright
- 2015 Arran Cudbard-Bell a.cud.nosp@m.bard.nosp@m.b@fre.nosp@m.erad.nosp@m.ius.o.nosp@m.rg
-
2015 The FreeRADIUS Server Project.
Definition in file sasl.c.
Data passed to the _sasl interact callback.
Definition at line 36 of file sasl.c.
Data Fields |
ldap_sasl * |
extra |
Extra fields (realm and proxy id). |
char const * |
identity |
User's DN or identity. |
rlm_ldap_t const * |
inst |
LDAP instance. |
char const * |
password |
Bind password. |
REQUEST * |
request |
The current request. |
Data passed to the _sasl interact callback.
static int _sasl_interact |
( |
UNUSED LDAP * |
handle, |
|
|
UNUSED unsigned |
flags, |
|
|
void * |
ctx, |
|
|
void * |
sasl_callbacks |
|
) |
| |
|
static |
Callback for ldap_sasl_interactive_bind.
- Parameters
-
handle | used for the SASL bind. |
flags | data as provided to ldap_sasl_interactive_bind. |
ctx | Our context data, containing the identity, password, realm and various other things. |
sasl_callbacks | Array of challenges to provide responses for. |
- Returns
- SASL_OK.
Definition at line 54 of file sasl.c.
ldap_rcode_t rlm_ldap_sasl_interactive |
( |
rlm_ldap_t const * |
inst, |
|
|
REQUEST * |
request, |
|
|
ldap_handle_t * |
conn, |
|
|
char const * |
identity, |
|
|
char const * |
password, |
|
|
ldap_sasl * |
sasl, |
|
|
LDAPControl ** |
serverctrls, |
|
|
LDAPControl ** |
clientctrls, |
|
|
char const ** |
error, |
|
|
char ** |
extra |
|
) |
| |
Initiate an LDAP interactive bind.
- Parameters
-
[in] | inst | rlm_ldap configuration. |
[in] | request | Current request, this may be NULL, in which case all debug logging is done with radlog. |
[in] | conn | to use. May change as this function calls functions which auto re-connect. |
[in] | identity | of the user. |
[in] | password | of the user. |
[in] | sasl | mechanism to use for bind, and additional parameters. |
[in] | serverctrls | Search controls to pass to the server. May be NULL. |
[in] | clientctrls | Search controls for ldap_sasl_interactive. May be NULL. |
[out] | error | message resulting from bind. |
[out] | extra | information about the error. |
- Returns
- One of the LDAP_PROC_* (ldap_rcode_t) values.
Definition at line 105 of file sasl.c.