Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef EAP_METHODS_H
00016 #define EAP_METHODS_H
00017
00018 #include "eap_common/eap_defs.h"
00019
00020 const struct eap_method * eap_peer_get_eap_method(int vendor, EapType method);
00021 const struct eap_method * eap_peer_get_methods(size_t *count);
00022
00023 struct eap_method * eap_peer_method_alloc(int version, int vendor,
00024 EapType method, const char *name);
00025 void eap_peer_method_free(struct eap_method *method);
00026 int eap_peer_method_register(struct eap_method *method);
00027
00028
00029 #ifdef IEEE8021X_EAPOL
00030
00031 EapType eap_peer_get_type(const char *name, int *vendor);
00032 const char * eap_get_name(int vendor, EapType type);
00033 size_t eap_get_names(char *buf, size_t buflen);
00034 char ** eap_get_names_as_string_array(size_t *num);
00035 void eap_peer_unregister_methods(void);
00036
00037 #else
00038
00039 static inline EapType eap_peer_get_type(const char *name, int *vendor)
00040 {
00041 *vendor = EAP_VENDOR_IETF;
00042 return EAP_TYPE_NONE;
00043 }
00044
00045 static inline const char * eap_get_name(int vendor, EapType type)
00046 {
00047 return NULL;
00048 }
00049
00050 static inline size_t eap_get_names(char *buf, size_t buflen)
00051 {
00052 return 0;
00053 }
00054
00055 static inline int eap_peer_register_methods(void)
00056 {
00057 return 0;
00058 }
00059
00060 static inline void eap_peer_unregister_methods(void)
00061 {
00062 }
00063
00064 static inline char ** eap_get_names_as_string_array(size_t *num)
00065 {
00066 return NULL;
00067 }
00068
00069 #endif
00070
00071
00072 #ifdef CONFIG_DYNAMIC_EAP_METHODS
00073
00074 int eap_peer_method_load(const char *so);
00075 int eap_peer_method_unload(struct eap_method *method);
00076
00077 #else
00078
00079 static inline int eap_peer_method_load(const char *so)
00080 {
00081 return 0;
00082 }
00083
00084 static inline int eap_peer_method_unload(struct eap_method *method)
00085 {
00086 return 0;
00087 }
00088
00089 #endif
00090
00091
00092 int eap_peer_md5_register(void);
00093 int eap_peer_tls_register(void);
00094 int eap_peer_mschapv2_register(void);
00095 int eap_peer_peap_register(void);
00096 int eap_peer_ttls_register(void);
00097 int eap_peer_gtc_register(void);
00098 int eap_peer_otp_register(void);
00099 int eap_peer_sim_register(void);
00100 int eap_peer_leap_register(void);
00101 int eap_peer_psk_register(void);
00102 int eap_peer_aka_register(void);
00103 int eap_peer_aka_prime_register(void);
00104 int eap_peer_fast_register(void);
00105 int eap_peer_pax_register(void);
00106 int eap_peer_sake_register(void);
00107 int eap_peer_gpsk_register(void);
00108 int eap_peer_wsc_register(void);
00109 int eap_peer_ikev2_register(void);
00110 int eap_peer_vendor_test_register(void);
00111 int eap_peer_tnc_register(void);
00112
00113 #endif