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