peer_base eliminated

This commit is contained in:
Simon Rozman 2016-08-05 13:40:54 +02:00
parent a60458cdab
commit 91dcc0bbbc
6 changed files with 48 additions and 33 deletions

View File

@ -27,13 +27,6 @@ namespace eap
/// ///
class module; class module;
///
/// EAP peer base class
///
/// A group of methods all EAP peers must or should implement.
///
template <class _Tmeth, class _Tcred, class _Tint, class _Tintres> class peer_base;
/// ///
/// EAP peer base class /// EAP peer base class
/// ///
@ -99,7 +92,7 @@ namespace eap
void free_error_memory(_In_ EAP_ERROR *err); void free_error_memory(_In_ EAP_ERROR *err);
/// ///
/// Makes a new method config for the given method type /// Makes a new method config
/// ///
virtual config_method* make_config_method(); virtual config_method* make_config_method();
@ -660,7 +653,7 @@ namespace eap
template <class _Tmeth, class _Tcred, class _Tint, class _Tintres> template <class _Tmeth, class _Tcred, class _Tint, class _Tintres>
class peer_base : public module class peer : public module
{ {
public: public:
/// ///
@ -689,28 +682,7 @@ namespace eap
/// ///
/// \param[in] eap_method EAP method type ID /// \param[in] eap_method EAP method type ID
/// ///
peer_base(_In_ winstd::eap_type_t eap_method) : module(eap_method) {} peer(_In_ winstd::eap_type_t eap_method) : module(eap_method) {}
///
/// Makes a new method config for the given method type
///
virtual config_method* make_config_method()
{
return new config_method_type(this);
}
};
template <class _Tmeth, class _Tcred, class _Tint, class _Tintres>
class peer : public peer_base<_Tmeth, _Tcred, _Tint, _Tintres>
{
public:
///
/// Constructs a EAP peer module for the given EAP type
///
/// \param[in] eap_method EAP method type ID
///
peer(_In_ winstd::eap_type_t eap_method) : peer_base<_Tmeth, _Tcred, _Tint, _Tintres>(eap_method) {}
/// ///
/// Initializes an EAP peer method for EAPHost. /// Initializes an EAP peer method for EAPHost.

View File

@ -36,15 +36,36 @@ namespace eap
namespace eap namespace eap
{ {
template <class _Tmeth, class _Tcred, class _Tint, class _Tintres> template <class _Tmeth, class _Tcred, class _Tint, class _Tintres>
class peer_ui : public peer_base<_Tmeth, _Tcred, _Tint, _Tintres> class peer_ui : public module
{ {
public:
///
/// Method configuration data type
///
typedef _Tmeth config_method_type;
///
/// Credentials data type
///
typedef _Tcred credentials_type;
///
/// Interactive request data type
///
typedef _Tint interactive_request_type;
///
/// Interactive response data type
///
typedef _Tintres interactive_response_type;
public: public:
/// ///
/// Constructs a EAP UI peer module for the given EAP type /// Constructs a EAP UI peer module for the given EAP type
/// ///
/// \param[in] eap_method EAP method type ID /// \param[in] eap_method EAP method type ID
/// ///
peer_ui(_In_ winstd::eap_type_t eap_method) : peer_base<_Tmeth, _Tcred, _Tint, _Tintres>(eap_method) {} peer_ui(_In_ winstd::eap_type_t eap_method) : module(eap_method) {}
/// ///
/// Raises the EAP method's specific connection configuration user interface dialog on the client. /// Raises the EAP method's specific connection configuration user interface dialog on the client.

View File

@ -43,6 +43,11 @@ namespace eap
/// ///
peer_ttls(); peer_ttls();
///
/// Makes a new method config
///
virtual config_method* make_config_method();
/// ///
/// Initializes an EAP peer method for EAPHost. /// Initializes an EAP peer method for EAPHost.
/// ///

View File

@ -33,6 +33,12 @@ eap::peer_ttls::peer_ttls() : peer<config_method_ttls, credentials_ttls, bool, b
} }
eap::config_method* eap::peer_ttls::make_config_method()
{
return new config_method_ttls(this);
}
bool eap::peer_ttls::initialize(_Out_ EAP_ERROR **ppEapError) bool eap::peer_ttls::initialize(_Out_ EAP_ERROR **ppEapError)
{ {
UNREFERENCED_PARAMETER(ppEapError); UNREFERENCED_PARAMETER(ppEapError);

View File

@ -43,6 +43,11 @@ namespace eap
/// ///
peer_ttls_ui(); peer_ttls_ui();
///
/// Makes a new method config
///
virtual config_method* make_config_method();
/// ///
/// Raises the EAP method's specific connection configuration user interface dialog on the client. /// Raises the EAP method's specific connection configuration user interface dialog on the client.
/// ///

View File

@ -30,6 +30,12 @@ eap::peer_ttls_ui::peer_ttls_ui() : peer_ui<eap::config_method_ttls, eap::creden
} }
eap::config_method* eap::peer_ttls_ui::make_config_method()
{
return new config_method_ttls(this);
}
bool eap::peer_ttls_ui::invoke_config_ui( bool eap::peer_ttls_ui::invoke_config_ui(
_In_ HWND hwndParent, _In_ HWND hwndParent,
_Inout_ config_providers &cfg, _Inout_ config_providers &cfg,