moved eap_from_string() fomr libcharon to libstrongswan to make it available in starter
This commit is contained in:
parent
e643da585b
commit
87799b0c00
|
@ -15,38 +15,6 @@
|
|||
|
||||
#include "eap_method.h"
|
||||
|
||||
/*
|
||||
* See header
|
||||
*/
|
||||
eap_type_t eap_type_from_string(char *name)
|
||||
{
|
||||
int i;
|
||||
static struct {
|
||||
char *name;
|
||||
eap_type_t type;
|
||||
} types[] = {
|
||||
{"identity", EAP_IDENTITY},
|
||||
{"md5", EAP_MD5},
|
||||
{"otp", EAP_OTP},
|
||||
{"gtc", EAP_GTC},
|
||||
{"tls", EAP_TLS},
|
||||
{"ttls", EAP_TTLS},
|
||||
{"sim", EAP_SIM},
|
||||
{"aka", EAP_AKA},
|
||||
{"mschapv2", EAP_MSCHAPV2},
|
||||
{"radius", EAP_RADIUS},
|
||||
};
|
||||
|
||||
for (i = 0; i < countof(types); i++)
|
||||
{
|
||||
if (strcaseeq(name, types[i].name))
|
||||
{
|
||||
return types[i].type;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
ENUM(eap_code_names, EAP_REQUEST, EAP_FAILURE,
|
||||
"EAP_REQUEST",
|
||||
"EAP_RESPONSE",
|
||||
|
@ -66,6 +34,3 @@ ENUM(eap_role_names, EAP_SERVER, EAP_PEER,
|
|||
"EAP_PEER",
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -41,14 +41,6 @@ enum eap_role_t {
|
|||
*/
|
||||
extern enum_name_t *eap_role_names;
|
||||
|
||||
/**
|
||||
* Lookup the EAP method type from a string.
|
||||
*
|
||||
* @param name EAP method name (such as "md5", "aka")
|
||||
* @return method type, 0 if unkown
|
||||
*/
|
||||
eap_type_t eap_type_from_string(char *name);
|
||||
|
||||
/**
|
||||
* EAP code, type of an EAP message
|
||||
*/
|
||||
|
|
|
@ -93,6 +93,38 @@ ENUM(auth_rule_names, AUTH_RULE_IDENTITY, AUTH_HELPER_SUBJECT_HASH_URL,
|
|||
"HELPER_SUBJECT_HASH_URL",
|
||||
);
|
||||
|
||||
/*
|
||||
* See header
|
||||
*/
|
||||
eap_type_t eap_type_from_string(char *name)
|
||||
{
|
||||
int i;
|
||||
static struct {
|
||||
char *name;
|
||||
eap_type_t type;
|
||||
} types[] = {
|
||||
{"identity", EAP_IDENTITY},
|
||||
{"md5", EAP_MD5},
|
||||
{"otp", EAP_OTP},
|
||||
{"gtc", EAP_GTC},
|
||||
{"tls", EAP_TLS},
|
||||
{"ttls", EAP_TTLS},
|
||||
{"sim", EAP_SIM},
|
||||
{"aka", EAP_AKA},
|
||||
{"mschapv2", EAP_MSCHAPV2},
|
||||
{"radius", EAP_RADIUS},
|
||||
};
|
||||
|
||||
for (i = 0; i < countof(types); i++)
|
||||
{
|
||||
if (strcaseeq(name, types[i].name))
|
||||
{
|
||||
return types[i].type;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
typedef struct private_auth_cfg_t private_auth_cfg_t;
|
||||
|
||||
/**
|
||||
|
|
|
@ -81,6 +81,14 @@ extern enum_name_t *eap_type_names;
|
|||
*/
|
||||
extern enum_name_t *eap_type_short_names;
|
||||
|
||||
/**
|
||||
* Lookup the EAP method type from a string.
|
||||
*
|
||||
* @param name EAP method name (such as "md5", "aka")
|
||||
* @return method type, 0 if unkown
|
||||
*/
|
||||
eap_type_t eap_type_from_string(char *name);
|
||||
|
||||
/**
|
||||
* Authentication config to use during authentication process.
|
||||
*
|
||||
|
|
|
@ -671,39 +671,8 @@ static void load_conn(starter_conn_t *conn, kw_list_t *kw, starter_config_t *cfg
|
|||
}
|
||||
break;
|
||||
}
|
||||
if (streq(kw->value, "aka"))
|
||||
{
|
||||
conn->eap_type = 23;
|
||||
}
|
||||
else if (streq(kw->value, "sim"))
|
||||
{
|
||||
conn->eap_type = 18;
|
||||
}
|
||||
else if (streq(kw->value, "md5"))
|
||||
{
|
||||
conn->eap_type = 4;
|
||||
}
|
||||
else if (streq(kw->value, "gtc"))
|
||||
{
|
||||
conn->eap_type = 6;
|
||||
}
|
||||
else if (streq(kw->value, "tls"))
|
||||
{
|
||||
conn->eap_type = 13;
|
||||
}
|
||||
else if (streq(kw->value, "ttls"))
|
||||
{
|
||||
conn->eap_type = 21;
|
||||
}
|
||||
else if (streq(kw->value, "mschapv2"))
|
||||
{
|
||||
conn->eap_type = 26;
|
||||
}
|
||||
else if (streq(kw->value, "radius"))
|
||||
{ /* pseudo-type */
|
||||
conn->eap_type = 253;
|
||||
}
|
||||
else
|
||||
conn->eap_type = eap_type_from_string(kw->value);
|
||||
if (conn->eap_type == 0)
|
||||
{
|
||||
conn->eap_type = atoi(kw->value);
|
||||
if (conn->eap_type == 0)
|
||||
|
|
Loading…
Reference in New Issue