18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/*
28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * EAP server method registration
38d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright (c) 2004-2009, Jouni Malinen <j@w1.fi>
48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt *
5c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * This software may be distributed under the terms of the BSD license.
6c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * See README for more details.
78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt */
88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef EAP_SERVER_METHODS_H
108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#define EAP_SERVER_METHODS_H
118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#include "eap_common/eap_defs.h"
138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtconst struct eap_method * eap_server_get_eap_method(int vendor,
158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt						    EapType method);
168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstruct eap_method * eap_server_method_alloc(int version, int vendor,
178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt					    EapType method, const char *name);
188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid eap_server_method_free(struct eap_method *method);
198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_method_register(struct eap_method *method);
208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
218d520ff1dc2da35cdca849e982051b86468016d8Dmitry ShmidtEapType eap_server_get_type(const char *name, int *vendor);
228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtvoid eap_server_unregister_methods(void);
238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtconst char * eap_server_get_name(int vendor, EapType type);
248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/* EAP server method registration calls for statically linked in methods */
268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_identity_register(void);
278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_md5_register(void);
288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_tls_register(void);
2961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtint eap_server_unauth_tls_register(void);
308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_mschapv2_register(void);
318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_peap_register(void);
328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_tlv_register(void);
338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_gtc_register(void);
348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_ttls_register(void);
358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_sim_register(void);
368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_aka_register(void);
378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_aka_prime_register(void);
388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_pax_register(void);
398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_psk_register(void);
408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_sake_register(void);
418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_gpsk_register(void);
428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_vendor_test_register(void);
438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_fast_register(void);
448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_wsc_register(void);
458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_ikev2_register(void);
468d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_tnc_register(void);
478d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint eap_server_pwd_register(void);
4834af306c42b7ccf956508e7cd23f0ba90606e360Dmitry Shmidtint eap_server_eke_register(void);
498d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt
508d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* EAP_SERVER_METHODS_H */
51