#include "includes.h"
#include "common.h"
#include "crypto/ms_funcs.h"
#include "common/wpa_ctrl.h"
#include "mschapv2.h"
#include "eap_i.h"
#include "eap_config.h"
Go to the source code of this file.
Classes | |
struct | eap_mschapv2_data |
struct | eap_mschapv2_hdr |
struct | ms_change_password |
struct | ms_response |
Defines | |
#define | ERROR_ACCT_DISABLED 647 |
#define | ERROR_AUTHENTICATION_FAILURE 691 |
#define | ERROR_CHANGING_PASSWORD 709 |
#define | ERROR_NO_DIALIN_PERMISSION 649 |
#define | ERROR_PASSWD_EXPIRED 648 |
#define | ERROR_RESTRICTED_LOGON_HOURS 646 |
#define | MSCHAPV2_KEY_LEN 16 |
#define | MSCHAPV2_OP_CHALLENGE 1 |
#define | MSCHAPV2_OP_CHANGE_PASSWORD 7 |
#define | MSCHAPV2_OP_FAILURE 4 |
#define | MSCHAPV2_OP_RESPONSE 2 |
#define | MSCHAPV2_OP_SUCCESS 3 |
#define | PASSWD_CHANGE_CHAL_LEN 16 |
Functions | |
static struct wpabuf * | eap_mschapv2_challenge (struct eap_sm *sm, struct eap_mschapv2_data *data, struct eap_method_ret *ret, const struct eap_mschapv2_hdr *req, size_t req_len, u8 id) |
static struct wpabuf * | eap_mschapv2_challenge_reply (struct eap_sm *sm, struct eap_mschapv2_data *data, u8 id, u8 mschapv2_id, const u8 *auth_challenge) |
static struct wpabuf * | eap_mschapv2_change_password (struct eap_sm *sm, struct eap_mschapv2_data *data, struct eap_method_ret *ret, const struct eap_mschapv2_hdr *req, u8 id) |
static int | eap_mschapv2_check_config (struct eap_sm *sm) |
static int | eap_mschapv2_check_mslen (struct eap_sm *sm, size_t len, const struct eap_mschapv2_hdr *ms) |
static void | eap_mschapv2_copy_challenge (struct eap_mschapv2_data *data, const struct wpabuf *reqData) |
static void | eap_mschapv2_deinit (struct eap_sm *sm, void *priv) |
static struct wpabuf * | eap_mschapv2_failure (struct eap_sm *sm, struct eap_mschapv2_data *data, struct eap_method_ret *ret, const struct eap_mschapv2_hdr *req, size_t req_len, u8 id) |
static int | eap_mschapv2_failure_txt (struct eap_sm *sm, struct eap_mschapv2_data *data, char *txt) |
static u8 * | eap_mschapv2_getKey (struct eap_sm *sm, void *priv, size_t *len) |
static void * | eap_mschapv2_init (struct eap_sm *sm) |
static Boolean | eap_mschapv2_isKeyAvailable (struct eap_sm *sm, void *priv) |
static void | eap_mschapv2_password_changed (struct eap_sm *sm, struct eap_mschapv2_data *data) |
static struct wpabuf * | eap_mschapv2_process (struct eap_sm *sm, void *priv, struct eap_method_ret *ret, const struct wpabuf *reqData) |
static struct wpabuf * | eap_mschapv2_success (struct eap_sm *sm, struct eap_mschapv2_data *data, struct eap_method_ret *ret, const struct eap_mschapv2_hdr *req, size_t req_len, u8 id) |
int | eap_peer_mschapv2_register (void) |
Variables | |
struct eap_mschapv2_hdr | STRUCT_PACKED |
#define ERROR_ACCT_DISABLED 647 |
Definition at line 73 of file eap_mschapv2.c.
#define ERROR_AUTHENTICATION_FAILURE 691 |
Definition at line 76 of file eap_mschapv2.c.
#define ERROR_CHANGING_PASSWORD 709 |
Definition at line 77 of file eap_mschapv2.c.
#define ERROR_NO_DIALIN_PERMISSION 649 |
Definition at line 75 of file eap_mschapv2.c.
#define ERROR_PASSWD_EXPIRED 648 |
Definition at line 74 of file eap_mschapv2.c.
#define ERROR_RESTRICTED_LOGON_HOURS 646 |
Definition at line 72 of file eap_mschapv2.c.
#define MSCHAPV2_KEY_LEN 16 |
Definition at line 80 of file eap_mschapv2.c.
#define MSCHAPV2_OP_CHALLENGE 1 |
Definition at line 66 of file eap_mschapv2.c.
#define MSCHAPV2_OP_CHANGE_PASSWORD 7 |
Definition at line 70 of file eap_mschapv2.c.
#define MSCHAPV2_OP_FAILURE 4 |
Definition at line 69 of file eap_mschapv2.c.
#define MSCHAPV2_OP_RESPONSE 2 |
Definition at line 67 of file eap_mschapv2.c.
#define MSCHAPV2_OP_SUCCESS 3 |
Definition at line 68 of file eap_mschapv2.c.
#define PASSWD_CHANGE_CHAL_LEN 16 |
Definition at line 79 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_challenge | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
struct eap_method_ret * | ret, | ||
const struct eap_mschapv2_hdr * | req, | ||
size_t | req_len, | ||
u8 | id | ||
) | [static, read] |
eap_mschapv2_process - Process an EAP-MSCHAPv2 challenge message : Pointer to EAP state machine allocated with eap_peer_sm_init() : Pointer to private EAP method data from eap_mschapv2_init() : Return values from EAP request validation and processing : Pointer to EAP-MSCHAPv2 header from the request : Length of the EAP-MSCHAPv2 data : EAP identifier used in the request Returns: Pointer to allocated EAP response packet (eapRespData) or NULL if no reply available
Definition at line 244 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_challenge_reply | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
u8 | id, | ||
u8 | mschapv2_id, | ||
const u8 * | auth_challenge | ||
) | [static, read] |
Definition at line 152 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_change_password | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
struct eap_method_ret * | ret, | ||
const struct eap_mschapv2_hdr * | req, | ||
u8 | id | ||
) | [static, read] |
Definition at line 501 of file eap_mschapv2.c.
static int eap_mschapv2_check_config | ( | struct eap_sm * | sm | ) | [static] |
Definition at line 691 of file eap_mschapv2.c.
static int eap_mschapv2_check_mslen | ( | struct eap_sm * | sm, |
size_t | len, | ||
const struct eap_mschapv2_hdr * | ms | ||
) | [static] |
Definition at line 711 of file eap_mschapv2.c.
static void eap_mschapv2_copy_challenge | ( | struct eap_mschapv2_data * | data, |
const struct wpabuf * | reqData | ||
) | [static] |
Definition at line 735 of file eap_mschapv2.c.
static void eap_mschapv2_deinit | ( | struct eap_sm * | sm, |
void * | priv | ||
) | [static] |
Definition at line 142 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_failure | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
struct eap_method_ret * | ret, | ||
const struct eap_mschapv2_hdr * | req, | ||
size_t | req_len, | ||
u8 | id | ||
) | [static, read] |
eap_mschapv2_process - Process an EAP-MSCHAPv2 failure message : Pointer to EAP state machine allocated with eap_peer_sm_init() : Pointer to private EAP method data from eap_mschapv2_init() : Return values from EAP request validation and processing : Pointer to EAP-MSCHAPv2 header from the request : Length of the EAP-MSCHAPv2 data : EAP identifier used in th erequest Returns: Pointer to allocated EAP response packet (eapRespData) or NULL if no reply available
Definition at line 630 of file eap_mschapv2.c.
static int eap_mschapv2_failure_txt | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
char * | txt | ||
) | [static] |
Definition at line 398 of file eap_mschapv2.c.
static u8* eap_mschapv2_getKey | ( | struct eap_sm * | sm, |
void * | priv, | ||
size_t * | len | ||
) | [static] |
Definition at line 825 of file eap_mschapv2.c.
static void* eap_mschapv2_init | ( | struct eap_sm * | sm | ) | [static] |
Definition at line 109 of file eap_mschapv2.c.
static Boolean eap_mschapv2_isKeyAvailable | ( | struct eap_sm * | sm, |
void * | priv | ||
) | [static] |
Definition at line 818 of file eap_mschapv2.c.
static void eap_mschapv2_password_changed | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data | ||
) | [static] |
Definition at line 302 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_process | ( | struct eap_sm * | sm, |
void * | priv, | ||
struct eap_method_ret * | ret, | ||
const struct wpabuf * | reqData | ||
) | [static, read] |
eap_mschapv2_process - Process an EAP-MSCHAPv2 request : Pointer to EAP state machine allocated with eap_peer_sm_init() : Pointer to private EAP method data from eap_mschapv2_init() : Return values from EAP request validation and processing : EAP request to be processed (eapReqData) Returns: Pointer to allocated EAP response packet (eapRespData) or NULL if no reply available
Definition at line 756 of file eap_mschapv2.c.
static struct wpabuf* eap_mschapv2_success | ( | struct eap_sm * | sm, |
struct eap_mschapv2_data * | data, | ||
struct eap_method_ret * | ret, | ||
const struct eap_mschapv2_hdr * | req, | ||
size_t | req_len, | ||
u8 | id | ||
) | [static, read] |
eap_mschapv2_process - Process an EAP-MSCHAPv2 success message : Pointer to EAP state machine allocated with eap_peer_sm_init() : Pointer to private EAP method data from eap_mschapv2_init() : Return values from EAP request validation and processing : Pointer to EAP-MSCHAPv2 header from the request : Length of the EAP-MSCHAPv2 data : EAP identifier used in th erequest Returns: Pointer to allocated EAP response packet (eapRespData) or NULL if no reply available
Definition at line 342 of file eap_mschapv2.c.
int eap_peer_mschapv2_register | ( | void | ) |
eap_peer_mschapv2_register - Register EAP-MSCHAPv2 peer method Returns: 0 on success, -1 on failure
This function is used to register EAP-MSCHAPv2 peer method into the EAP method list.
Definition at line 861 of file eap_mschapv2.c.
struct ms_change_password STRUCT_PACKED |