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 */ 29 int 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