EAP_NOTIFICATION = 2,
EAP_NAK = 3,
EAP_MD5 = 4,
- EAP_ONE_TIME_PASSWORD = 5,
- EAP_TOKEN_CARD = 6,
+ EAP_OTP = 5,
+ EAP_GTC = 6,
EAP_SIM = 18,
EAP_AKA = 23,
+ EAP_MSCHAPV2 = 26,
EAP_EXPANDED = 254,
EAP_EXPERIMENTAL = 255,
};
* authentication. Even if a mutual EAP method is used, the traditional
* AUTH payloads are required. Only these include the nonces and messages from
* ike_sa_init and therefore prevent man in the middle attacks.
+ * The EAP method must use an initial EAP identifier value != 0, as a preceding
+ * EAP-Identity exchange always uses identifier 0.
*/
struct eap_method_t {
/**
* Get the MSK established by this EAP method.
*
- * Not all EAP methods establish a shared secret.
+ * Not all EAP methods establish a shared secret. For implementations of
+ * the EAP-Identity method, get_msk() returns the received identity.
*
* @param msk chunk receiving internal stored MSK
* @return
* Constructors for server and peers are identical, to support both roles
* of a EAP method, a plugin needs register two constructors in the
* eap_manager_t.
+ * The passed identites are of type ID_EAP and valid only during the
+ * constructor invocation.
*
* @param server ID of the server to use for credential lookup
* @param peer ID of the peer to use for credential lookup