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. 
 | 
|  | 
| 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. 
 | 
|  | 
| char const * | fr_ldap_edir_errstr (int code) | 
|  | 
| unlang_action_t | fr_ldap_edir_get_password (unlang_result_t *p_result, 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. 
 | 
|  | 
| 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. 
 | 
|  | 
| static unlang_action_t | ldap_edir_get_password_resume (unlang_result_t *p_result, request_t *request, void *uctx) | 
|  | Handle results of retrieving Universal Password. 
 | 
|  | 
| static unlang_action_t | ldap_edir_get_password_start (UNUSED unlang_result_t *p_result, request_t *request, void *uctx) | 
|  | Submit LDAP extended operation to retrieve Universal Password. 
 | 
|  | 
LDAP extension for reading eDirectory universal password. 
- Id
- 190832cadf77462637abc94691e19a01ec8782f3 
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
- 
  
    | [out] | p_result | Where to write the result of the operation. |  | [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 292 of file edir.c.
 
 
◆ ldap_edir_get_password_cancel()
Cancel an in progress Universal Password lookup. 
Definition at line 272 of file edir.c.
 
 
◆ ldap_edir_get_password_resume()
Handle results of retrieving Universal Password. 
- Parameters
- 
  
    | p_result | Result of current operation. |  | request | Current request. |  | uctx | eDir lookup context. |  
 
- Returns
- One of the RLM_MODULE_* values. 
Definition at line 181 of file edir.c.
 
 
◆ ldap_edir_get_password_start()
Submit LDAP extended operation to retrieve Universal Password. 
- Parameters
- 
  
    | p_result | Result of current operation. |  | request | Current request. |  | uctx | eDir lookup context. |  
 
- Returns
- One of the RLM_MODULE_* values. 
Definition at line 167 of file edir.c.