radius_server.h
Go to the documentation of this file.00001
00016 #ifndef RADIUS_SERVER_H
00017 #define RADIUS_SERVER_H
00018
00019 struct radius_server_data;
00020 struct eap_user;
00021
00022 struct radius_server_conf {
00023 int auth_port;
00024 char *client_file;
00025 void *conf_ctx;
00026 void *eap_sim_db_priv;
00027 void *ssl_ctx;
00028 u8 *pac_opaque_encr_key;
00029 u8 *eap_fast_a_id;
00030 size_t eap_fast_a_id_len;
00031 char *eap_fast_a_id_info;
00032 int eap_fast_prov;
00033 int pac_key_lifetime;
00034 int pac_key_refresh_time;
00035 int eap_sim_aka_result_ind;
00036 int tnc;
00037 struct wps_context *wps;
00038 int ipv6;
00039 int (*get_eap_user)(void *ctx, const u8 *identity, size_t identity_len,
00040 int phase2, struct eap_user *user);
00041 const char *eap_req_id_text;
00042 size_t eap_req_id_text_len;
00043 };
00044
00045
00046 #ifdef RADIUS_SERVER
00047
00048 struct radius_server_data *
00049 radius_server_init(struct radius_server_conf *conf);
00050
00051 void radius_server_deinit(struct radius_server_data *data);
00052
00053 int radius_server_get_mib(struct radius_server_data *data, char *buf,
00054 size_t buflen);
00055
00056 void radius_server_eap_pending_cb(struct radius_server_data *data, void *ctx);
00057
00058 #else
00059
00060 static inline struct radius_server_data *
00061 radius_server_init(struct radius_server_conf *conf)
00062 {
00063 return NULL;
00064 }
00065
00066 static inline void radius_server_deinit(struct radius_server_data *data)
00067 {
00068 }
00069
00070 static inline int radius_server_get_mib(struct radius_server_data *data,
00071 char *buf, size_t buflen)
00072 {
00073 return 0;
00074 }
00075
00076 static inline void
00077 radius_server_eap_pending_cb(struct radius_server_data *data, void *ctx)
00078 {
00079 }
00080
00081 #endif
00082
00083 #endif
00084