blob: b3faaa1d2c1d79871b46f2a438b8a89a4fbffa6c [file] [log] [blame]
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -07001/*
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"
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080020#include "wpa_supplicant_i.h"
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070021
22
23/**
24 * eap_register_methods - Register statically linked EAP methods
25 * Returns: 0 on success, -1 or -2 on failure
26 *
27 * This function is called at program initialization to register all EAP
28 * methods that were linked in statically.
29 */
30int eap_register_methods(void)
31{
32 int ret = 0;
33
34#ifdef EAP_MD5
35 if (ret == 0)
36 ret = eap_peer_md5_register();
37#endif /* EAP_MD5 */
38
39#ifdef EAP_TLS
40 if (ret == 0)
41 ret = eap_peer_tls_register();
42#endif /* EAP_TLS */
43
44#ifdef EAP_MSCHAPv2
45 if (ret == 0)
46 ret = eap_peer_mschapv2_register();
47#endif /* EAP_MSCHAPv2 */
48
49#ifdef EAP_PEAP
50 if (ret == 0)
51 ret = eap_peer_peap_register();
52#endif /* EAP_PEAP */
53
54#ifdef EAP_TTLS
55 if (ret == 0)
56 ret = eap_peer_ttls_register();
57#endif /* EAP_TTLS */
58
59#ifdef EAP_GTC
60 if (ret == 0)
61 ret = eap_peer_gtc_register();
62#endif /* EAP_GTC */
63
64#ifdef EAP_OTP
65 if (ret == 0)
66 ret = eap_peer_otp_register();
67#endif /* EAP_OTP */
68
69#ifdef EAP_SIM
70 if (ret == 0)
71 ret = eap_peer_sim_register();
72#endif /* EAP_SIM */
73
74#ifdef EAP_LEAP
75 if (ret == 0)
76 ret = eap_peer_leap_register();
77#endif /* EAP_LEAP */
78
79#ifdef EAP_PSK
80 if (ret == 0)
81 ret = eap_peer_psk_register();
82#endif /* EAP_PSK */
83
84#ifdef EAP_AKA
85 if (ret == 0)
86 ret = eap_peer_aka_register();
87#endif /* EAP_AKA */
88
89#ifdef EAP_AKA_PRIME
90 if (ret == 0)
91 ret = eap_peer_aka_prime_register();
92#endif /* EAP_AKA_PRIME */
93
94#ifdef EAP_FAST
95 if (ret == 0)
96 ret = eap_peer_fast_register();
97#endif /* EAP_FAST */
98
99#ifdef EAP_PAX
100 if (ret == 0)
101 ret = eap_peer_pax_register();
102#endif /* EAP_PAX */
103
104#ifdef EAP_SAKE
105 if (ret == 0)
106 ret = eap_peer_sake_register();
107#endif /* EAP_SAKE */
108
109#ifdef EAP_GPSK
110 if (ret == 0)
111 ret = eap_peer_gpsk_register();
112#endif /* EAP_GPSK */
113
114#ifdef EAP_WSC
115 if (ret == 0)
116 ret = eap_peer_wsc_register();
117#endif /* EAP_WSC */
118
119#ifdef EAP_IKEV2
120 if (ret == 0)
121 ret = eap_peer_ikev2_register();
122#endif /* EAP_IKEV2 */
123
124#ifdef EAP_VENDOR_TEST
125 if (ret == 0)
126 ret = eap_peer_vendor_test_register();
127#endif /* EAP_VENDOR_TEST */
128
129#ifdef EAP_TNC
130 if (ret == 0)
131 ret = eap_peer_tnc_register();
132#endif /* EAP_TNC */
133
134#ifdef EAP_PWD
135 if (ret == 0)
136 ret = eap_peer_pwd_register();
137#endif /* EAP_PWD */
138
139#ifdef EAP_SERVER_IDENTITY
140 if (ret == 0)
141 ret = eap_server_identity_register();
142#endif /* EAP_SERVER_IDENTITY */
143
144#ifdef EAP_SERVER_MD5
145 if (ret == 0)
146 ret = eap_server_md5_register();
147#endif /* EAP_SERVER_MD5 */
148
149#ifdef EAP_SERVER_TLS
150 if (ret == 0)
151 ret = eap_server_tls_register();
152#endif /* EAP_SERVER_TLS */
153
154#ifdef EAP_SERVER_MSCHAPV2
155 if (ret == 0)
156 ret = eap_server_mschapv2_register();
157#endif /* EAP_SERVER_MSCHAPV2 */
158
159#ifdef EAP_SERVER_PEAP
160 if (ret == 0)
161 ret = eap_server_peap_register();
162#endif /* EAP_SERVER_PEAP */
163
164#ifdef EAP_SERVER_TLV
165 if (ret == 0)
166 ret = eap_server_tlv_register();
167#endif /* EAP_SERVER_TLV */
168
169#ifdef EAP_SERVER_GTC
170 if (ret == 0)
171 ret = eap_server_gtc_register();
172#endif /* EAP_SERVER_GTC */
173
174#ifdef EAP_SERVER_TTLS
175 if (ret == 0)
176 ret = eap_server_ttls_register();
177#endif /* EAP_SERVER_TTLS */
178
179#ifdef EAP_SERVER_SIM
180 if (ret == 0)
181 ret = eap_server_sim_register();
182#endif /* EAP_SERVER_SIM */
183
184#ifdef EAP_SERVER_AKA
185 if (ret == 0)
186 ret = eap_server_aka_register();
187#endif /* EAP_SERVER_AKA */
188
189#ifdef EAP_SERVER_AKA_PRIME
190 if (ret == 0)
191 ret = eap_server_aka_prime_register();
192#endif /* EAP_SERVER_AKA_PRIME */
193
194#ifdef EAP_SERVER_PAX
195 if (ret == 0)
196 ret = eap_server_pax_register();
197#endif /* EAP_SERVER_PAX */
198
199#ifdef EAP_SERVER_PSK
200 if (ret == 0)
201 ret = eap_server_psk_register();
202#endif /* EAP_SERVER_PSK */
203
204#ifdef EAP_SERVER_SAKE
205 if (ret == 0)
206 ret = eap_server_sake_register();
207#endif /* EAP_SERVER_SAKE */
208
209#ifdef EAP_SERVER_GPSK
210 if (ret == 0)
211 ret = eap_server_gpsk_register();
212#endif /* EAP_SERVER_GPSK */
213
214#ifdef EAP_SERVER_VENDOR_TEST
215 if (ret == 0)
216 ret = eap_server_vendor_test_register();
217#endif /* EAP_SERVER_VENDOR_TEST */
218
219#ifdef EAP_SERVER_FAST
220 if (ret == 0)
221 ret = eap_server_fast_register();
222#endif /* EAP_SERVER_FAST */
223
224#ifdef EAP_SERVER_WSC
225 if (ret == 0)
226 ret = eap_server_wsc_register();
227#endif /* EAP_SERVER_WSC */
228
229#ifdef EAP_SERVER_IKEV2
230 if (ret == 0)
231 ret = eap_server_ikev2_register();
232#endif /* EAP_SERVER_IKEV2 */
233
234#ifdef EAP_SERVER_TNC
235 if (ret == 0)
236 ret = eap_server_tnc_register();
237#endif /* EAP_SERVER_TNC */
238
239#ifdef EAP_SERVER_PWD
240 if (ret == 0)
241 ret = eap_server_pwd_register();
242#endif /* EAP_SERVER_PWD */
243
244 return ret;
245}