Merge branch 'moonshot' of ssh://moonshot.suchdamage.org:822/srv/git/libeap into...
[libeap.git] / wpa_supplicant / eap_register.c
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 #ifdef EAP_PWD
134         if (ret == 0)
135                 ret = eap_peer_pwd_register();
136 #endif /* EAP_PWD */
137
138 #ifdef EAP_SERVER_IDENTITY
139         if (ret == 0)
140                 ret = eap_server_identity_register();
141 #endif /* EAP_SERVER_IDENTITY */
142
143 #ifdef EAP_SERVER_MD5
144         if (ret == 0)
145                 ret = eap_server_md5_register();
146 #endif /* EAP_SERVER_MD5 */
147
148 #ifdef EAP_SERVER_TLS
149         if (ret == 0)
150                 ret = eap_server_tls_register();
151 #endif /* EAP_SERVER_TLS */
152
153 #ifdef EAP_SERVER_MSCHAPV2
154         if (ret == 0)
155                 ret = eap_server_mschapv2_register();
156 #endif /* EAP_SERVER_MSCHAPV2 */
157
158 #ifdef EAP_SERVER_PEAP
159         if (ret == 0)
160                 ret = eap_server_peap_register();
161 #endif /* EAP_SERVER_PEAP */
162
163 #ifdef EAP_SERVER_TLV
164         if (ret == 0)
165                 ret = eap_server_tlv_register();
166 #endif /* EAP_SERVER_TLV */
167
168 #ifdef EAP_SERVER_GTC
169         if (ret == 0)
170                 ret = eap_server_gtc_register();
171 #endif /* EAP_SERVER_GTC */
172
173 #ifdef EAP_SERVER_TTLS
174         if (ret == 0)
175                 ret = eap_server_ttls_register();
176 #endif /* EAP_SERVER_TTLS */
177
178 #ifdef EAP_SERVER_SIM
179         if (ret == 0)
180                 ret = eap_server_sim_register();
181 #endif /* EAP_SERVER_SIM */
182
183 #ifdef EAP_SERVER_AKA
184         if (ret == 0)
185                 ret = eap_server_aka_register();
186 #endif /* EAP_SERVER_AKA */
187
188 #ifdef EAP_SERVER_AKA_PRIME
189         if (ret == 0)
190                 ret = eap_server_aka_prime_register();
191 #endif /* EAP_SERVER_AKA_PRIME */
192
193 #ifdef EAP_SERVER_PAX
194         if (ret == 0)
195                 ret = eap_server_pax_register();
196 #endif /* EAP_SERVER_PAX */
197
198 #ifdef EAP_SERVER_PSK
199         if (ret == 0)
200                 ret = eap_server_psk_register();
201 #endif /* EAP_SERVER_PSK */
202
203 #ifdef EAP_SERVER_SAKE
204         if (ret == 0)
205                 ret = eap_server_sake_register();
206 #endif /* EAP_SERVER_SAKE */
207
208 #ifdef EAP_SERVER_GPSK
209         if (ret == 0)
210                 ret = eap_server_gpsk_register();
211 #endif /* EAP_SERVER_GPSK */
212
213 #ifdef EAP_SERVER_VENDOR_TEST
214         if (ret == 0)
215                 ret = eap_server_vendor_test_register();
216 #endif /* EAP_SERVER_VENDOR_TEST */
217
218 #ifdef EAP_SERVER_FAST
219         if (ret == 0)
220                 ret = eap_server_fast_register();
221 #endif /* EAP_SERVER_FAST */
222
223 #ifdef EAP_SERVER_WSC
224         if (ret == 0)
225                 ret = eap_server_wsc_register();
226 #endif /* EAP_SERVER_WSC */
227
228 #ifdef EAP_SERVER_IKEV2
229         if (ret == 0)
230                 ret = eap_server_ikev2_register();
231 #endif /* EAP_SERVER_IKEV2 */
232
233 #ifdef EAP_SERVER_TNC
234         if (ret == 0)
235                 ret = eap_server_tnc_register();
236 #endif /* EAP_SERVER_TNC */
237
238 #ifdef EAP_SERVER_PWD
239         if (ret == 0)
240                 ret = eap_server_pwd_register();
241 #endif /* EAP_SERVER_PWD */
242
243         return ret;
244 }