eap_sim_common.c File Reference

EAP peer/server: EAP-SIM/AKA/AKA' shared routines. More...

#include "includes.h"
#include "common.h"
#include "eap_common/eap_defs.h"
#include "sha1.h"
#include "sha256.h"
#include "crypto.h"
#include "aes_wrap.h"
#include "wpabuf.h"
#include "eap_common/eap_sim_common.h"

Data Structures

struct  eap_sim_msg

Defines

#define EAP_SIM_INIT_LEN   128

Functions

void eap_sim_derive_mk (const u8 *identity, size_t identity_len, const u8 *nonce_mt, u16 selected_version, const u8 *ver_list, size_t ver_list_len, int num_chal, const u8 *kc, u8 *mk)
void eap_aka_derive_mk (const u8 *identity, size_t identity_len, const u8 *ik, const u8 *ck, u8 *mk)
int eap_sim_derive_keys (const u8 *mk, u8 *k_encr, u8 *k_aut, u8 *msk, u8 *emsk)
int eap_sim_derive_keys_reauth (u16 _counter, const u8 *identity, size_t identity_len, const u8 *nonce_s, const u8 *mk, u8 *msk, u8 *emsk)
int eap_sim_verify_mac (const u8 *k_aut, const struct wpabuf *req, const u8 *mac, const u8 *extra, size_t extra_len)
void eap_sim_add_mac (const u8 *k_aut, const u8 *msg, size_t msg_len, u8 *mac, const u8 *extra, size_t extra_len)
int eap_sim_parse_attr (const u8 *start, const u8 *end, struct eap_sim_attrs *attr, int aka, int encr)
u8 * eap_sim_parse_encr (const u8 *k_encr, const u8 *encr_data, size_t encr_data_len, const u8 *iv, struct eap_sim_attrs *attr, int aka)
struct eap_sim_msgeap_sim_msg_init (int code, int id, int type, int subtype)
struct wpabufeap_sim_msg_finish (struct eap_sim_msg *msg, const u8 *k_aut, const u8 *extra, size_t extra_len)
void eap_sim_msg_free (struct eap_sim_msg *msg)
u8 * eap_sim_msg_add_full (struct eap_sim_msg *msg, u8 attr, const u8 *data, size_t len)
u8 * eap_sim_msg_add (struct eap_sim_msg *msg, u8 attr, u16 value, const u8 *data, size_t len)
u8 * eap_sim_msg_add_mac (struct eap_sim_msg *msg, u8 attr)
int eap_sim_msg_add_encr_start (struct eap_sim_msg *msg, u8 attr_iv, u8 attr_encr)
int eap_sim_msg_add_encr_end (struct eap_sim_msg *msg, u8 *k_encr, int attr_pad)
void eap_sim_report_notification (void *msg_ctx, int notification, int aka)

Detailed Description

EAP peer/server: EAP-SIM/AKA/AKA' shared routines.

Copyright
Copyright (c) 2004-2008, Jouni Malinen <j@w1.fi>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Alternatively, this software may be distributed under the terms of BSD license.

See README and COPYING for more details.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on Sat Nov 28 23:07:50 2009 for wpa_supplicant/hostapd by  doxygen 1.6.1