/* * Copyright (C) 2006 Martin Willi * Hochschule fuer Technik Rapperswil * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. See . * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * for more details. */ #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}, {"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", "EAP_SUCCESS", "EAP_FAILURE", ); ENUM(eap_code_short_names, EAP_REQUEST, EAP_FAILURE, "REQ", "RES", "SUCC", "FAIL", ); ENUM(eap_role_names, EAP_SERVER, EAP_PEER, "EAP_SERVER", "EAP_PEER", );