Contains the interfaces that are called from the main handler.
More...
#include "eap_fast.h"
#include "eap_fast_crypto.h"
#include <freeradius-devel/tls/utils.h>
#include <freeradius-devel/util/sha1.h>
#include <freeradius-devel/tls/openssl_user_macros.h>
#include <openssl/rand.h>
#include <openssl/ssl.h>
Go to the source code of this file.
|
static void | eap_fast_append_crypto_binding (request_t *request, fr_tls_session_t *tls_session) |
|
static void | eap_fast_append_result (fr_tls_session_t *tls_session, fr_radius_packet_code_t code) |
|
static fr_radius_packet_code_t | eap_fast_crypto_binding (request_t *request, UNUSED eap_session_t *eap_session, fr_tls_session_t *tls_session, eap_tlv_crypto_binding_tlv_t *binding) |
|
ssize_t | eap_fast_decode_pair (TALLOC_CTX *ctx, fr_pair_list_t *out, fr_dict_attr_t const *parent, uint8_t const *data, size_t data_len, void *decode_ctx) |
| FIXME do something with mandatory. More...
|
|
static fr_radius_packet_code_t | eap_fast_eap_payload (request_t *request, eap_session_t *eap_session, fr_tls_session_t *tls_session, fr_pair_t *tlv_eap_payload) |
|
static void | eap_fast_init_keys (request_t *request, fr_tls_session_t *tls_session) |
| RFC 4851 section 5.1 - EAP-FAST Authentication Phase 1: Key Derivations. More...
|
|
fr_radius_packet_code_t | eap_fast_process (request_t *request, eap_session_t *eap_session, fr_tls_session_t *tls_session) |
|
static fr_radius_packet_code_t | eap_fast_process_tlvs (request_t *request, eap_session_t *eap_session, fr_tls_session_t *tls_session, fr_pair_list_t *fast_vps) |
|
static void | eap_fast_send_error (fr_tls_session_t *tls_session, int error) |
|
static void | eap_fast_send_identity_request (request_t *request, fr_tls_session_t *tls_session, eap_session_t *eap_session) |
|
static void | eap_fast_send_pac_tunnel (request_t *request, fr_tls_session_t *tls_session) |
|
void | eap_fast_tlv_append (fr_tls_session_t *tls_session, fr_dict_attr_t const *tlv, bool mandatory, int length, void const *data) |
|
static void | eap_fast_update_icmk (request_t *request, fr_tls_session_t *tls_session, uint8_t *msk) |
| RFC 4851 section 5.2 - Intermediate Compound Key Derivations. More...
|
|
static int | eap_fast_verify (request_t *request, fr_tls_session_t *tls_session, uint8_t const *data, unsigned int data_len) |
|
static rlm_rcode_t | process_reply (UNUSED eap_session_t *eap_session, fr_tls_session_t *tls_session, request_t *request, fr_packet_t *reply, fr_pair_list_t *reply_list) |
|
Contains the interfaces that are called from the main handler.
- Id
- cf84959a488cf9cfd1a71b796b97c86847de9bc8
- Author
- Alexander Clouter (alex@.nosp@m.digr.nosp@m.iz.or.nosp@m.g.uk)
- Copyright
- 2016 Alan DeKok (aland.nosp@m.@fre.nosp@m.eradi.nosp@m.us.o.nosp@m.rg)
-
2016 The FreeRADIUS server project
Definition in file eap_fast.c.
◆ EAP_FAST_TLV_MAX
◆ EAPTLS_MPPE_KEY_LEN
#define EAPTLS_MPPE_KEY_LEN 32 |
◆ MIN
#define MIN |
( |
|
a, |
|
|
|
b |
|
) |
| (((a)>(b)) ? (b) : (a)) |
◆ RANDFILL
◆ eap_fast_append_crypto_binding()
static void eap_fast_append_crypto_binding |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session |
|
) |
| |
|
static |
◆ eap_fast_append_result()
◆ eap_fast_crypto_binding()
◆ eap_fast_decode_pair()
FIXME do something with mandatory.
Definition at line 428 of file eap_fast.c.
◆ eap_fast_eap_payload()
◆ eap_fast_init_keys()
static void eap_fast_init_keys |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session |
|
) |
| |
|
static |
RFC 4851 section 5.1 - EAP-FAST Authentication Phase 1: Key Derivations.
Definition at line 42 of file eap_fast.c.
◆ eap_fast_process()
◆ eap_fast_process_tlvs()
◆ eap_fast_send_error()
static void eap_fast_send_error |
( |
fr_tls_session_t * |
tls_session, |
|
|
int |
error |
|
) |
| |
|
static |
◆ eap_fast_send_identity_request()
static void eap_fast_send_identity_request |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session, |
|
|
eap_session_t * |
eap_session |
|
) |
| |
|
static |
◆ eap_fast_send_pac_tunnel()
static void eap_fast_send_pac_tunnel |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session |
|
) |
| |
|
static |
◆ eap_fast_tlv_append()
void eap_fast_tlv_append |
( |
fr_tls_session_t * |
tls_session, |
|
|
fr_dict_attr_t const * |
tlv, |
|
|
bool |
mandatory, |
|
|
int |
length, |
|
|
void const * |
data |
|
) |
| |
◆ eap_fast_update_icmk()
static void eap_fast_update_icmk |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session, |
|
|
uint8_t * |
msk |
|
) |
| |
|
static |
RFC 4851 section 5.2 - Intermediate Compound Key Derivations.
Definition at line 77 of file eap_fast.c.
◆ eap_fast_verify()
static int eap_fast_verify |
( |
request_t * |
request, |
|
|
fr_tls_session_t * |
tls_session, |
|
|
uint8_t const * |
data, |
|
|
unsigned int |
data_len |
|
) |
| |
|
static |
◆ process_reply()