]> git.ipfire.org Git - thirdparty/hostap.git/blob - hostapd/eap_register.c
hostapd: Fix client reassociation after disconnect due to ACK failure
[thirdparty/hostap.git] / hostapd / eap_register.c
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_server/eap_methods.h"
13 #include "eap_register.h"
14
15
16 /**
17 * eap_server_register_methods - Register statically linked EAP server methods
18 * Returns: 0 on success, -1 or -2 on failure
19 *
20 * This function is called at program initialization to register all EAP
21 * methods that were linked in statically.
22 */
23 int eap_server_register_methods(void)
24 {
25 int ret = 0;
26
27 #ifdef EAP_SERVER_IDENTITY
28 if (ret == 0)
29 ret = eap_server_identity_register();
30 #endif /* EAP_SERVER_IDENTITY */
31
32 #ifdef EAP_SERVER_MD5
33 if (ret == 0)
34 ret = eap_server_md5_register();
35 #endif /* EAP_SERVER_MD5 */
36
37 #ifdef EAP_SERVER_TLS
38 if (ret == 0)
39 ret = eap_server_tls_register();
40 #endif /* EAP_SERVER_TLS */
41
42 #ifdef EAP_SERVER_UNAUTH_TLS
43 if (ret == 0)
44 ret = eap_server_unauth_tls_register();
45 #endif /* EAP_SERVER_TLS */
46
47 #ifdef EAP_SERVER_MSCHAPV2
48 if (ret == 0)
49 ret = eap_server_mschapv2_register();
50 #endif /* EAP_SERVER_MSCHAPV2 */
51
52 #ifdef EAP_SERVER_PEAP
53 if (ret == 0)
54 ret = eap_server_peap_register();
55 #endif /* EAP_SERVER_PEAP */
56
57 #ifdef EAP_SERVER_TLV
58 if (ret == 0)
59 ret = eap_server_tlv_register();
60 #endif /* EAP_SERVER_TLV */
61
62 #ifdef EAP_SERVER_GTC
63 if (ret == 0)
64 ret = eap_server_gtc_register();
65 #endif /* EAP_SERVER_GTC */
66
67 #ifdef EAP_SERVER_TTLS
68 if (ret == 0)
69 ret = eap_server_ttls_register();
70 #endif /* EAP_SERVER_TTLS */
71
72 #ifdef EAP_SERVER_SIM
73 if (ret == 0)
74 ret = eap_server_sim_register();
75 #endif /* EAP_SERVER_SIM */
76
77 #ifdef EAP_SERVER_AKA
78 if (ret == 0)
79 ret = eap_server_aka_register();
80 #endif /* EAP_SERVER_AKA */
81
82 #ifdef EAP_SERVER_AKA_PRIME
83 if (ret == 0)
84 ret = eap_server_aka_prime_register();
85 #endif /* EAP_SERVER_AKA_PRIME */
86
87 #ifdef EAP_SERVER_PAX
88 if (ret == 0)
89 ret = eap_server_pax_register();
90 #endif /* EAP_SERVER_PAX */
91
92 #ifdef EAP_SERVER_PSK
93 if (ret == 0)
94 ret = eap_server_psk_register();
95 #endif /* EAP_SERVER_PSK */
96
97 #ifdef EAP_SERVER_SAKE
98 if (ret == 0)
99 ret = eap_server_sake_register();
100 #endif /* EAP_SERVER_SAKE */
101
102 #ifdef EAP_SERVER_GPSK
103 if (ret == 0)
104 ret = eap_server_gpsk_register();
105 #endif /* EAP_SERVER_GPSK */
106
107 #ifdef EAP_SERVER_VENDOR_TEST
108 if (ret == 0)
109 ret = eap_server_vendor_test_register();
110 #endif /* EAP_SERVER_VENDOR_TEST */
111
112 #ifdef EAP_SERVER_FAST
113 if (ret == 0)
114 ret = eap_server_fast_register();
115 #endif /* EAP_SERVER_FAST */
116
117 #ifdef EAP_SERVER_WSC
118 if (ret == 0)
119 ret = eap_server_wsc_register();
120 #endif /* EAP_SERVER_WSC */
121
122 #ifdef EAP_SERVER_IKEV2
123 if (ret == 0)
124 ret = eap_server_ikev2_register();
125 #endif /* EAP_SERVER_IKEV2 */
126
127 #ifdef EAP_SERVER_TNC
128 if (ret == 0)
129 ret = eap_server_tnc_register();
130 #endif /* EAP_SERVER_TNC */
131
132 #ifdef EAP_SERVER_PWD
133 if (ret == 0)
134 ret = eap_server_pwd_register();
135 #endif /* EAP_SERVER_PWD */
136
137 return ret;
138 }