LDAP extension for reading eDirectory universal password.
More...
#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/ldap/base.h>
Go to the source code of this file.
|
static int | ber_decode_login_data (struct berval *reply_bv, int *server_version, void *out, size_t *outlen) |
| Converts the reply into server version and a return code. More...
|
|
static int | ber_encode_request_data (char const *dn, struct berval **request_bv) |
| Takes the object DN and BER encodes the data into the BER value which is used as part of the request. More...
|
|
char const * | fr_ldap_edir_errstr (int code) |
|
unlang_action_t | fr_ldap_edir_get_password (request_t *request, char const *dn, fr_ldap_thread_trunk_t *ttrunk, fr_dict_attr_t const *password_da) |
| Initiate retrieval of the universal password from Novell eDirectory. More...
|
|
static void | ldap_edir_get_password_cancel (UNUSED request_t *request, UNUSED fr_signal_t action, void *uctx) |
| Cancel an in progress Universal Password lookup. More...
|
|
static unlang_action_t | ldap_edir_get_password_resume (rlm_rcode_t *p_result, UNUSED int *priority, request_t *request, void *uctx) |
| Handle results of retrieving Universal Password. More...
|
|
static unlang_action_t | ldap_edir_get_password_start (UNUSED rlm_rcode_t *p_result, UNUSED int *priority, request_t *request, void *uctx) |
| Submit LDAP extended operation to retrieve Universal Password. More...
|
|
LDAP extension for reading eDirectory universal password.
- Id
- 547cbf3d2d0ffb753d83eaf071c59c2d15ff559f
To contact Novell about this file by physical or electronic mail, you may find current contact information at www.novell.com.
- Copyright
- 2012 Olivier Beytrison (olivi.nosp@m.er@h.nosp@m.elios.nosp@m.net..nosp@m.org)
-
2012 Alan DeKok (aland.nosp@m.@fre.nosp@m.eradi.nosp@m.us.o.nosp@m.rg)
-
2002-2004 Novell, Inc.
Definition in file edir.c.
◆ ldap_edir_ctx_t
◆ NMAS_E_ACCESS_NOT_ALLOWED
◆ NMAS_E_BASE
◆ NMAS_E_FRAG_FAILURE
◆ NMAS_E_INSUFFICIENT_MEMORY
◆ NMAS_E_INVALID_PARAMETER
◆ NMAS_E_INVALID_SPM_REQUEST
◆ NMAS_E_INVALID_VERSION
◆ NMAS_E_NOT_SUPPORTED
◆ NMAS_E_SYSTEM_RESOURCES
◆ NMAS_LDAP_EXT_VERSION
#define NMAS_LDAP_EXT_VERSION 1 |
◆ NMASLDAP_GET_PASSWORD_REQUEST
#define NMASLDAP_GET_PASSWORD_REQUEST "2.16.840.1.113719.1.39.42.100.13" |
◆ NMASLDAP_GET_PASSWORD_RESPONSE
#define NMASLDAP_GET_PASSWORD_RESPONSE "2.16.840.1.113719.1.39.42.100.14" |
◆ ber_decode_login_data()
static int ber_decode_login_data |
( |
struct berval * |
reply_bv, |
|
|
int * |
server_version, |
|
|
void * |
out, |
|
|
size_t * |
outlen |
|
) |
| |
|
static |
Converts the reply into server version and a return code.
This function takes the reply BER Value and decodes the NMAS server version and return code and if a non null retData buffer was supplied, tries to decode the the return data and length.
ResponseBer contents:
server_version INTEGER
error INTEGER
data OCTET STRING
- Parameters
-
[in] | reply_bv | reply data from extended request. |
[out] | server_version | that responded. |
[out] | out | data. |
[out] | outlen | Length of data written to out. |
- Returns
- 0 on success.
- < 0 on error.
Definition at line 134 of file edir.c.
◆ ber_encode_request_data()
static int ber_encode_request_data |
( |
char const * |
dn, |
|
|
struct berval ** |
request_bv |
|
) |
| |
|
static |
Takes the object DN and BER encodes the data into the BER value which is used as part of the request.
RequestBer contents:
clientVersion INTEGER
targetObjectDN OCTET STRING
- Parameters
-
[out] | request_bv | where to write the request BER value (must be freed with ber_bvfree). |
[in] | dn | to query for. |
- Returns
- 0 on success.
- < 0 on error.
Definition at line 76 of file edir.c.
◆ fr_ldap_edir_errstr()
char const* fr_ldap_edir_errstr |
( |
int |
code | ) |
|
◆ fr_ldap_edir_get_password()
Initiate retrieval of the universal password from Novell eDirectory.
- Parameters
-
[in] | request | Current request. |
[in] | dn | of the user whose password is to be retrieved. |
[in] | ttrunk | on which to send the LDAP request. |
[in] | password_da | DA to use when creating password attribute. |
- Returns
- UNLANG_ACTION_PUSHED_CHILD on success.
- UNLANG_ACTION_FAIL on failure.
Definition at line 295 of file edir.c.
◆ ldap_edir_get_password_cancel()
Cancel an in progress Universal Password lookup.
Definition at line 276 of file edir.c.
◆ ldap_edir_get_password_resume()
Handle results of retrieving Universal Password.
- Parameters
-
p_result | Result of current operation. |
priority | Unused. |
request | Current request. |
uctx | eDir lookup context. |
- Returns
- One of the RLM_MODULE_* values.
Definition at line 184 of file edir.c.
◆ ldap_edir_get_password_start()
Submit LDAP extended operation to retrieve Universal Password.
- Parameters
-
p_result | Result of current operation. |
priority | Unused. |
request | Current request. |
uctx | eDir lookup context. |
- Returns
- One of the RLM_MODULE_* values.
Definition at line 168 of file edir.c.