12 #include "eap_common/eap_sim_common.h" 15 #define EAP_SIM_PERMANENT_PREFIX '1' 16 #define EAP_SIM_PSEUDONYM_PREFIX '3' 17 #define EAP_SIM_REAUTH_ID_PREFIX '5' 18 #define EAP_AKA_PERMANENT_PREFIX '0' 19 #define EAP_AKA_PSEUDONYM_PREFIX '2' 20 #define EAP_AKA_REAUTH_ID_PREFIX '4' 21 #define EAP_AKA_PRIME_PERMANENT_PREFIX '6' 22 #define EAP_AKA_PRIME_PSEUDONYM_PREFIX '7' 23 #define EAP_AKA_PRIME_REAUTH_ID_PREFIX '8' 25 enum eap_sim_db_method {
34 eap_sim_db_init(
const char *
config,
unsigned int db_timeout,
35 void (*get_complete_cb)(
void *ctx,
void *session_ctx),
38 void eap_sim_db_deinit(
void *priv);
41 const char *username,
int max_chal,
42 u8 *_rand, u8 *kc, u8 *sres,
43 void *cb_session_ctx);
45 #define EAP_SIM_DB_FAILURE -1 46 #define EAP_SIM_DB_PENDING -2 49 enum eap_sim_db_method method);
52 enum eap_sim_db_method method);
55 const char *permanent,
char *pseudonym);
57 int eap_sim_db_add_reauth(
struct eap_sim_db_data *data,
const char *permanent,
58 char *reauth_id, u16 counter,
const u8 *mk);
60 const char *permanent,
61 char *reauth_id, u16 counter,
const u8 *k_encr,
62 const u8 *k_aut,
const u8 *k_re);
65 const char *pseudonym);
72 u8 mk[EAP_SIM_MK_LEN];
73 u8 k_encr[EAP_SIM_K_ENCR_LEN];
74 u8 k_aut[EAP_AKA_PRIME_K_AUT_LEN];
75 u8 k_re[EAP_AKA_PRIME_K_RE_LEN];
80 const char *reauth_id);
85 int eap_sim_db_get_aka_auth(
struct eap_sim_db_data *data,
const char *username,
86 u8 *_rand, u8 *autn, u8 *ik, u8 *ck,
87 u8 *res,
size_t *res_len,
void *cb_session_ctx);
90 const char *username,
const u8 *auts,
93 char * sim_get_username(
const u8 *identity,
size_t identity_len);
Definition: eap_sim_db.c:60
Definition: eap_sim_db.h:67