xref: /freebsd/contrib/wpa/hostapd/eap_register.c (revision f05cddf9)
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 }
139