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