1/* 2 * EAP method registration 3 * Copyright (c) 2004-2009, Jouni Malinen <j@w1.fi> 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License version 2 as 7 * published by the Free Software Foundation. 8 * 9 * Alternatively, this software may be distributed under the terms of BSD 10 * license. 11 * 12 * See README and COPYING for more details. 13 */ 14 15#include "includes.h" 16 17#include "common.h" 18#include "eap_peer/eap_methods.h" 19#include "eap_server/eap_methods.h" 20 21 22/** 23 * eap_register_methods - Register statically linked EAP methods 24 * Returns: 0 on success, -1 or -2 on failure 25 * 26 * This function is called at program initialization to register all EAP 27 * methods that were linked in statically. 28 */ 29int eap_register_methods(void) 30{ 31 int ret = 0; 32 33#ifdef EAP_MD5 34 if (ret == 0) 35 ret = eap_peer_md5_register(); 36#endif /* EAP_MD5 */ 37 38#ifdef EAP_TLS 39 if (ret == 0) 40 ret = eap_peer_tls_register(); 41#endif /* EAP_TLS */ 42 43#ifdef EAP_MSCHAPv2 44 if (ret == 0) 45 ret = eap_peer_mschapv2_register(); 46#endif /* EAP_MSCHAPv2 */ 47 48#ifdef EAP_PEAP 49 if (ret == 0) 50 ret = eap_peer_peap_register(); 51#endif /* EAP_PEAP */ 52 53#ifdef EAP_TTLS 54 if (ret == 0) 55 ret = eap_peer_ttls_register(); 56#endif /* EAP_TTLS */ 57 58#ifdef EAP_GTC 59 if (ret == 0) 60 ret = eap_peer_gtc_register(); 61#endif /* EAP_GTC */ 62 63#ifdef EAP_OTP 64 if (ret == 0) 65 ret = eap_peer_otp_register(); 66#endif /* EAP_OTP */ 67 68#ifdef EAP_SIM 69 if (ret == 0) 70 ret = eap_peer_sim_register(); 71#endif /* EAP_SIM */ 72 73#ifdef EAP_LEAP 74 if (ret == 0) 75 ret = eap_peer_leap_register(); 76#endif /* EAP_LEAP */ 77 78#ifdef EAP_PSK 79 if (ret == 0) 80 ret = eap_peer_psk_register(); 81#endif /* EAP_PSK */ 82 83#ifdef EAP_AKA 84 if (ret == 0) 85 ret = eap_peer_aka_register(); 86#endif /* EAP_AKA */ 87 88#ifdef EAP_AKA_PRIME 89 if (ret == 0) 90 ret = eap_peer_aka_prime_register(); 91#endif /* EAP_AKA_PRIME */ 92 93#ifdef EAP_FAST 94 if (ret == 0) 95 ret = eap_peer_fast_register(); 96#endif /* EAP_FAST */ 97 98#ifdef EAP_PAX 99 if (ret == 0) 100 ret = eap_peer_pax_register(); 101#endif /* EAP_PAX */ 102 103#ifdef EAP_SAKE 104 if (ret == 0) 105 ret = eap_peer_sake_register(); 106#endif /* EAP_SAKE */ 107 108#ifdef EAP_GPSK 109 if (ret == 0) 110 ret = eap_peer_gpsk_register(); 111#endif /* EAP_GPSK */ 112 113#ifdef EAP_WSC 114 if (ret == 0) 115 ret = eap_peer_wsc_register(); 116#endif /* EAP_WSC */ 117 118#ifdef EAP_IKEV2 119 if (ret == 0) 120 ret = eap_peer_ikev2_register(); 121#endif /* EAP_IKEV2 */ 122 123#ifdef EAP_VENDOR_TEST 124 if (ret == 0) 125 ret = eap_peer_vendor_test_register(); 126#endif /* EAP_VENDOR_TEST */ 127 128#ifdef EAP_TNC 129 if (ret == 0) 130 ret = eap_peer_tnc_register(); 131#endif /* EAP_TNC */ 132 133 134#ifdef EAP_SERVER_IDENTITY 135 if (ret == 0) 136 ret = eap_server_identity_register(); 137#endif /* EAP_SERVER_IDENTITY */ 138 139#ifdef EAP_SERVER_MD5 140 if (ret == 0) 141 ret = eap_server_md5_register(); 142#endif /* EAP_SERVER_MD5 */ 143 144#ifdef EAP_SERVER_TLS 145 if (ret == 0) 146 ret = eap_server_tls_register(); 147#endif /* EAP_SERVER_TLS */ 148 149#ifdef EAP_SERVER_MSCHAPV2 150 if (ret == 0) 151 ret = eap_server_mschapv2_register(); 152#endif /* EAP_SERVER_MSCHAPV2 */ 153 154#ifdef EAP_SERVER_PEAP 155 if (ret == 0) 156 ret = eap_server_peap_register(); 157#endif /* EAP_SERVER_PEAP */ 158 159#ifdef EAP_SERVER_TLV 160 if (ret == 0) 161 ret = eap_server_tlv_register(); 162#endif /* EAP_SERVER_TLV */ 163 164#ifdef EAP_SERVER_GTC 165 if (ret == 0) 166 ret = eap_server_gtc_register(); 167#endif /* EAP_SERVER_GTC */ 168 169#ifdef EAP_SERVER_TTLS 170 if (ret == 0) 171 ret = eap_server_ttls_register(); 172#endif /* EAP_SERVER_TTLS */ 173 174#ifdef EAP_SERVER_SIM 175 if (ret == 0) 176 ret = eap_server_sim_register(); 177#endif /* EAP_SERVER_SIM */ 178 179#ifdef EAP_SERVER_AKA 180 if (ret == 0) 181 ret = eap_server_aka_register(); 182#endif /* EAP_SERVER_AKA */ 183 184#ifdef EAP_SERVER_AKA_PRIME 185 if (ret == 0) 186 ret = eap_server_aka_prime_register(); 187#endif /* EAP_SERVER_AKA_PRIME */ 188 189#ifdef EAP_SERVER_PAX 190 if (ret == 0) 191 ret = eap_server_pax_register(); 192#endif /* EAP_SERVER_PAX */ 193 194#ifdef EAP_SERVER_PSK 195 if (ret == 0) 196 ret = eap_server_psk_register(); 197#endif /* EAP_SERVER_PSK */ 198 199#ifdef EAP_SERVER_SAKE 200 if (ret == 0) 201 ret = eap_server_sake_register(); 202#endif /* EAP_SERVER_SAKE */ 203 204#ifdef EAP_SERVER_GPSK 205 if (ret == 0) 206 ret = eap_server_gpsk_register(); 207#endif /* EAP_SERVER_GPSK */ 208 209#ifdef EAP_SERVER_VENDOR_TEST 210 if (ret == 0) 211 ret = eap_server_vendor_test_register(); 212#endif /* EAP_SERVER_VENDOR_TEST */ 213 214#ifdef EAP_SERVER_FAST 215 if (ret == 0) 216 ret = eap_server_fast_register(); 217#endif /* EAP_SERVER_FAST */ 218 219#ifdef EAP_SERVER_WSC 220 if (ret == 0) 221 ret = eap_server_wsc_register(); 222#endif /* EAP_SERVER_WSC */ 223 224#ifdef EAP_SERVER_IKEV2 225 if (ret == 0) 226 ret = eap_server_ikev2_register(); 227#endif /* EAP_SERVER_IKEV2 */ 228 229#ifdef EAP_SERVER_TNC 230 if (ret == 0) 231 ret = eap_server_tnc_register(); 232#endif /* EAP_SERVER_TNC */ 233 234 return ret; 235} 236