eapol/eapol_framework/eapol_symbian/am/type/generic/symbian/plugin/src/EapGeneric.cpp
branchRCL_3
changeset 46 c74b3d9f6b9e
parent 45 bad0cc58d154
child 55 9c2aa05919d9
--- a/eapol/eapol_framework/eapol_symbian/am/type/generic/symbian/plugin/src/EapGeneric.cpp	Tue Aug 31 15:16:37 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1179 +0,0 @@
-/*
-* Copyright (c) 2001-2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  EAP and WLAN authentication protocols.
-*
-*/
-
-/*
-* %version: 57 %
-*/
-
-// This is enumeration of EAPOL source code.
-#if defined(USE_EAP_MINIMUM_RELEASE_TRACES)
-	#undef EAP_FILE_NUMBER_ENUM
-	#define EAP_FILE_NUMBER_ENUM 739 
-	#undef EAP_FILE_NUMBER_DATE 
-	#define EAP_FILE_NUMBER_DATE 1127594498 
-#endif //#if defined(USE_EAP_MINIMUM_RELEASE_TRACES)
-
-
-// INCLUDE FILES
-
-#include "EapGeneric.h"
-#include "EapConversion.h"
-#include "eap_base_type.h"
-#include "eap_method_settings.h"
-#include "eap_am_assert.h"
-#include <EapTypeInfo.h>
-#include "abs_eap_am_tools.h"
-#include "eap_automatic_variable.h"
-#include <utf.h>                           // for CnvUtfConverter
-#include "abs_eap_plugin_message.h"
-#include "eap_plugin_message_base.h"
-#include "abs_eap_am_message_if.h"
-#include "eap_am_message_if.h"
-#include "eap_automatic_variable.h"
-#include "eap_plugin_client_message_if.h"
-#include "eap_am_message_if_symbian.h"
-#include "EapTraceSymbian.h"
-
-// LOCAL CONSTANTS
-
-// The version number of this interface.
-const TUint KInterfaceVersion = 1;
-
-
-// ================= MEMBER FUNCTIONS =======================
-
-
-CEapGeneric::CEapGeneric(
-	const TIndexType aIndexType,	
-	const TInt aIndex,
-	const TEapExpandedType aEapType)
-: m_am_tools(abs_eap_am_tools_c::new_abs_eap_am_tools_c())
-, m_server(eap_plugin_message_base_c::new_eap_plugin_client_message_if_c(
-		m_am_tools,
-		this))
-, iIndexType(aIndexType)
-, iIndex(aIndex)
-, iEapType(aEapType)
-, iTunnelingType(eap_type_none)
-, iTunnelingTypePresent(false)
-, iWaitState(eap_generic_wait_state_none)
-, iCompletionStatus(eap_status_process_general_error)
-
-, ipEAPSettings(0)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::CEapGeneric(): this=0x%08x, aIndexType=%d, aIndex=%d.\n"),
-		this,
-		aIndexType,
-		aIndex));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::CEapGeneric()");
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::ConstructL()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::ConstructL(): this=0x%08x.\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::ConstructL()");
-
-	if (m_am_tools == 0
-		|| m_am_tools->get_is_valid() == false
-		|| m_server == 0
-		|| m_server->get_is_valid() == false)
-	{
-		abs_eap_am_tools_c::delete_abs_eap_am_tools_c(m_am_tools);
-		delete m_server;
-
-		User::Leave(KErrNoMemory);
-	}
-
-	eap_status_e status = m_server->configure();
-	if (status != eap_status_ok)
-	{
-		abs_eap_am_tools_c::delete_abs_eap_am_tools_c(m_am_tools);
-		delete m_server;
-
-		User::Leave(KErrNoMemory);
-	}
-}
-
-// ----------------------------------------------------------
-
-CEapGeneric* CEapGeneric::NewL(SIapInfo *aIapInfo)
-{
-	CEapGeneric* self = new(ELeave) CEapGeneric(aIapInfo->indexType, aIapInfo->index, aIapInfo->aEapType);
-
-	CleanupStack::PushL(self);
-
-	self->ConstructL();
-
-	CleanupStack::Pop();
-
-	return self;
-}
-
-// ----------------------------------------------------------
-
-CEapGeneric::~CEapGeneric()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::~CEapGeneric(): this=0x%08x.\n"),
-		this));
-
-	// Do not use m_am_tools, because it will be destroyed before return.
-	EAP_TRACE_RETURN_STRING_SYMBIAN(_L("returns: CEapGeneric::~CEapGeneric()"));
-
-	if (m_server != 0)
-	{
-		m_server->shutdown();
-	}
-	delete m_server;
-
-	abs_eap_am_tools_c::delete_abs_eap_am_tools_c(m_am_tools);
-}
-
-// ----------------------------------------------------------
-
-#ifdef USE_EAP_SIMPLE_CONFIG
-
-eap_base_type_c* CEapGeneric::GetStackInterfaceL(abs_eap_am_tools_c* const aTools, 
-											   abs_eap_base_type_c* const /* aPartner */,
-											   const bool /* is_client_when_true */,
-											   const eap_am_network_id_c * const /* receive_network_id */,
-											   abs_eap_configuration_if_c * const /*configuration_if*/)
-	
-#else
-	
-eap_base_type_c* CEapGeneric::GetStackInterfaceL(abs_eap_am_tools_c* const aTools, 
-											abs_eap_base_type_c* const /* aPartner */,
-											const bool /* is_client_when_true */,
-											const eap_am_network_id_c * const /* receive_network_id */)
-	
-#endif // #ifdef USE_EAP_SIMPLE_CONFIG
-{
-	EAP_UNREFERENCED_PARAMETER(aTools);
-	// This class does not have stack interface.
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("ERROR: CEapGeneric::GetStackInterfaceL(): this=0x%08x\n"),
-		this));
-
-	EAP_ASSERT_ANYWAY_TOOLS(aTools);
-
-	return 0;
-}
-
-//----------------------------------------------------------------
-
-void CEapGeneric::Activate()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::Activate(): iAsyncronousStatus=%u\n"),
-		iAsyncronousStatus.Int()));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::Activate()");
-
-	iAsyncronousStatus = KRequestPending;
-}
-
-//----------------------------------------------------------------
-
-void CEapGeneric::Complete()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::Complete(): iAsyncronousStatus=%u\n"),
-		iAsyncronousStatus.Int()));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::Complete()");
-
-	iAsyncronousStatus = KErrNone;
-
-	// This is needed to continue the execution after Wait.Start(); 
-	iWait.AsyncStop();
-}
-
-//----------------------------------------------------------------
-
-void CEapGeneric::WaitCompletion()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::WaitCompletion(): iAsyncronousStatus=%u\n"),
-		iAsyncronousStatus.Int()));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::WaitCompletion()");
-
-	while (iAsyncronousStatus == KRequestPending)
-	{
-		EAP_TRACE_DEBUG(
-			m_am_tools,
-			TRACE_FLAGS_DEFAULT,
-			(EAPL("CEapGeneric::WaitCompletion(): calls iWait.Start()\n")));
-
-		iWait.Start();
-
-		EAP_TRACE_DEBUG(
-			m_am_tools,
-			TRACE_FLAGS_DEFAULT,
-			(EAPL("CEapGeneric::WaitCompletion(): iWait.Start() continue, iAsyncronousStatus=%u\n"),
-			iAsyncronousStatus.Int()));
-	}
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::SetCompletionStatusIfStillOk(const eap_status_e status)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::SetCompletionStatusIfStillOk(): iCompletionStatus=%u=%s, status=%d=%s\n"),
-		iCompletionStatus,
-		eap_status_string_c::get_status_string(iCompletionStatus),
-		status,
-		eap_status_string_c::get_status_string(status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::SetCompletionStatusIfStillOk()");
-
-	if (iCompletionStatus == eap_status_ok)
-	{
-		iCompletionStatus = status;
-	}
-}
-
-// ----------------------------------------------------------
-
-
-
-// ----------------------------------------------------------
-
-CEapTypeInfo* CEapGeneric::GetInfoL()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::GetInfoL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::GetInfoL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	eap_status_e status = m_server->get_type_info(internal_settings);
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_get_type_info;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-
-	CEapTypeInfo* info = new(ELeave) CEapTypeInfo(
-		iReleaseDate, 
-		iEapTypeVersion,
-		iManufacturer);
-
-	return info;
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::DeleteConfigurationL()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::DeleteConfigurationL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::DeleteConfigurationL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-	
-	internal_settings->m_IndexType = iIndexType;
-	internal_settings->m_Index = iIndex;
-
-	TInt error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-		&iEapType,
-		&(internal_settings->m_EAPType));
-	if (error != KErrNone)
-	{
-		delete internal_settings;
-
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-		User::Leave(error);
-	}
-	iCompletionStatus = eap_status_process_general_error;
-
-	eap_status_e status = m_server->delete_configuration(internal_settings);
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_delete_configuration;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-}
-
-// ----------------------------------------------------------
-
-TUint CEapGeneric::GetInterfaceVersion()
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::GetInterfaceVersion(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::GetInterfaceVersion()");
-
-	return KInterfaceVersion;
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::SetTunnelingType(const TEapExpandedType aTunnelingType)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::SetTunnelingType(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::SetTunnelingType()");
-
-    EAP_TRACE_DATA_DEBUG_SYMBIAN(
-        (EAPL("CEapGeneric::SetTunnelingType - tunneling type"),
-        aTunnelingType.GetValue().Ptr(), aTunnelingType.GetValue().Length()));
-
-    iTunnelingTypePresent = true;
-
-	eap_type_value_e aInternalType;
-
-	TInt error = CEapConversion::ConvertExpandedEAPTypeToInternalType(
-	        &aTunnelingType,
-	        &aInternalType);
-	if (error != KErrNone)
-	{
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-	}
-
-	iTunnelingType = aInternalType;
-	
-}
-
-
-// ----------------------------------------------------------
-
-void CEapGeneric::SetIndexL(
-		const TIndexType aIndexType, 
-		const TInt aIndex )
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::SetIndexL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::SetIndexL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-	
-	internal_settings->m_IndexType = aIndexType;
-	internal_settings->m_Index = aIndex;
-
-	TInt error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-		&iEapType,
-		&(internal_settings->m_EAPType));
-	if (error != KErrNone)
-	{
-		delete internal_settings;
-
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-		User::Leave(error);
-	}
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	eap_status_e status = m_server->delete_configuration(internal_settings);
-
-	if (status != eap_status_ok)
-	{
-		delete internal_settings;
-
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_delete_configuration;
-	Activate();
-	WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		delete internal_settings;
-
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-
-	internal_settings->m_IndexType = iIndexType;
-	internal_settings->m_Index = iIndex;
-
-	error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-		&iEapType,
-		&(internal_settings->m_EAPType));
-	if (error != KErrNone)
-	{
-		delete internal_settings;
-
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-		User::Leave(error);
-	}
-
-	internal_settings->m_TunnelingTypePresent = iTunnelingTypePresent;
-	internal_settings->m_TunnelingType = iTunnelingType;
-
-	internal_settings->m_DestinationIndexAndTypePresent = true;
-	internal_settings->m_DestinationIndexType = aIndexType;
-	internal_settings->m_DestinationIndex = aIndex;
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	status = m_server->set_index(internal_settings);
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_set_index;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::SetConfigurationL(const EAPSettings& aSettings)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::SetConfigurationL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::SetConfigurationL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-
-	eap_status_e status(eap_status_process_general_error);
-
-	TInt error(KErrNone);
-
-	internal_settings->m_IndexType = iIndexType;
-	internal_settings->m_Index = iIndex;
-
-	internal_settings->m_TunnelingTypePresent = iTunnelingTypePresent;
-	internal_settings->m_TunnelingType = iTunnelingType;
-
-	error = CEapConversion::ConvertEAPSettingsToInternalType(
-		m_am_tools,
-		&aSettings,
-		internal_settings);
-	if(error == KErrNone)
-	{
-		TInt error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-			&iEapType,
-			&(internal_settings->m_EAPType));
-		if (error != KErrNone)
-		{
-			delete internal_settings;
-
-			(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-			User::Leave(error);
-		}
-
-		iCompletionStatus = eap_status_process_general_error;
-
-		status = m_server->set_configuration(internal_settings);
-	}
-	else
-	{
-		status = m_am_tools->convert_am_error_to_eapol_error(error);
-	}
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_set_configuration;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::GetConfigurationL(EAPSettings& aSettings)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::GetConfigurationL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::GetConfigurationL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-
-	internal_settings->m_IndexType = iIndexType;
-	internal_settings->m_Index = iIndex;
-
-	TInt error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-		&iEapType,
-		&(internal_settings->m_EAPType));
-	if (error != KErrNone)
-	{
-		delete internal_settings;
-
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-		User::Leave(error);
-	}
-
-	internal_settings->m_TunnelingTypePresent = iTunnelingTypePresent;
-	internal_settings->m_TunnelingType = iTunnelingType;
-
-	ipEAPSettings = &aSettings;
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	eap_status_e status = m_server->get_configuration(internal_settings);
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_get_configuration;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-}
-
-// ----------------------------------------------------------
-
-void CEapGeneric::CopySettingsL(
-	const TIndexType aDestinationIndexType,
-	const TInt aDestinationIndex)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::CopySettingsL(): this=0x%08x\n"),
-		this));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::CopySettingsL()");
-
-	eap_method_settings_c * const internal_settings = new eap_method_settings_c(m_am_tools);
-	if (internal_settings == 0)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error)));
-	}
-
-	internal_settings->m_IndexType = aDestinationIndexType;
-	internal_settings->m_Index = aDestinationIndex;
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	eap_status_e status = m_server->delete_configuration(internal_settings);
-
-	if (status != eap_status_ok)
-	{
-		delete internal_settings;
-
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_delete_configuration;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		delete internal_settings;
-
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-
-	internal_settings->m_IndexType = iIndexType;
-	internal_settings->m_Index = iIndex;
-
-	TInt error =  CEapConversion::ConvertExpandedEAPTypeToInternalType(
-		&iEapType,
-		&(internal_settings->m_EAPType));
-	if (error != KErrNone)
-	{
-		delete internal_settings;
-
-		(void)EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error));
-		User::Leave(error);
-	}
-
-	internal_settings->m_TunnelingTypePresent = iTunnelingTypePresent;
-	internal_settings->m_TunnelingType = iTunnelingType;
-
-	internal_settings->m_DestinationIndexAndTypePresent = true;
-	internal_settings->m_DestinationIndexType = aDestinationIndexType;
-	internal_settings->m_DestinationIndex = aDestinationIndex;
-
-	iCompletionStatus = eap_status_process_general_error;
-
-	status = m_server->copy_configuration(internal_settings);
-
-	delete internal_settings;
-
-	if (status != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, status)));
-	}
-
-	iWaitState = eap_generic_wait_state_complete_copy_configuration;
-    Activate();
-    WaitCompletion();
-
-	if (iCompletionStatus != eap_status_ok)
-	{
-		User::Leave(m_am_tools->convert_eapol_error_to_am_error(
-			EAP_STATUS_RETURN(m_am_tools, iCompletionStatus)));
-	}
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_get_configuration(
-	const eap_method_settings_c * const internal_settings)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_get_configuration(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		internal_settings->m_completion_status,
-		eap_status_string_c::get_status_string(internal_settings->m_completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_get_configuration()");
-
-	if (internal_settings == 0)
-	{
-		iCompletionStatus = eap_status_illegal_parameter;
-
-		Complete();
-
-		return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-	}
-
-	iCompletionStatus = internal_settings->m_completion_status;
-
-	if (iWaitState == eap_generic_wait_state_complete_get_configuration
-		&& iCompletionStatus == eap_status_ok)
-	{
-		if (ipEAPSettings != 0
-			&& internal_settings != 0)
-		{
-			TInt error(KErrNone);
-
-			error = CEapConversion::ConvertInternalTypeToEAPSettings(
-				m_am_tools,
-				internal_settings,
-				ipEAPSettings);
-			if(error != KErrNone)
-			{
-				SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error)));
-			}
-		}
-		else
-		{
-			SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_illegal_parameter));
-		}
-	}
-	else if (iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_set_configuration(
-	const eap_status_e completion_status)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_set_configuration(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		completion_status,
-		eap_status_string_c::get_status_string(completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_set_configuration()");
-
-	iCompletionStatus = completion_status;
-
-	if (iWaitState != eap_generic_wait_state_complete_set_configuration
-		&& iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, completion_status);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_delete_configuration(
-	const eap_status_e completion_status)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_delete_configuration(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		completion_status,
-		eap_status_string_c::get_status_string(completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_delete_configuration()");
-
-	iCompletionStatus = completion_status;
-
-	if (iWaitState != eap_generic_wait_state_complete_delete_configuration
-		&& iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, completion_status);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_copy_configuration(
-	const eap_status_e completion_status)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_copy_configuration(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		completion_status,
-		eap_status_string_c::get_status_string(completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_copy_configuration()");
-
-	iCompletionStatus = completion_status;
-
-	if (iWaitState != eap_generic_wait_state_complete_copy_configuration
-		&& iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, completion_status);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_set_index(
-	const eap_status_e completion_status)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_set_index(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		completion_status,
-		eap_status_string_c::get_status_string(completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_set_index()");
-
-	iCompletionStatus = completion_status;
-
-	if (iWaitState != eap_generic_wait_state_complete_set_index
-		&& iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, completion_status);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_get_type_info(
-	const eap_method_settings_c * const internal_settings)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_get_type_info(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		internal_settings->m_completion_status,
-		eap_status_string_c::get_status_string(internal_settings->m_completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_get_type_info()");
-
-	if (internal_settings == 0)
-	{
-		iCompletionStatus = eap_status_illegal_parameter;
-
-		Complete();
-
-		return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-	}
-
-	iCompletionStatus = internal_settings->m_completion_status;
-
-	if (iWaitState == eap_generic_wait_state_complete_get_type_info
-		&& iCompletionStatus == eap_status_ok)
-	{
-		if (internal_settings != 0
-			&& internal_settings->m_MethodInfoPresent == true)
-		{
-			TInt error(KErrNone);
-
-			error = CEapConversion::ConvertFromInternalToBuf16(
-				m_am_tools,
-				&(internal_settings->m_KReleaseDate),
-				&iReleaseDate);
-
-			if(error == KErrNone)
-			{
-				error = CEapConversion::ConvertFromInternalToBuf16(
-					m_am_tools,
-					&(internal_settings->m_KEapTypeVersion),
-					&iEapTypeVersion);
-			}
-
-			if(error == KErrNone)
-			{
-				error = CEapConversion::ConvertFromInternalToBuf16(
-					m_am_tools,
-					&(internal_settings->m_KManufacturer),
-					&iManufacturer);
-			}
-
-			if(error != KErrNone)
-			{
-				SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, m_am_tools->convert_am_error_to_eapol_error(error)));
-			}
-		}
-		else
-		{
-			SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_illegal_parameter));
-		}
-	}
-	else if (iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-}
-
-// ----------------------------------------------------------
-
-eap_status_e CEapGeneric::complete_invoke_ui(
-	const eap_method_settings_c * const internal_settings)
-{
-	EAP_TRACE_DEBUG(
-		m_am_tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("CEapGeneric::complete_invoke_ui(): this=0x%08x, iWaitState=%d, status=%d=%s\n"),
-		this,
-		iWaitState,
-		internal_settings->m_completion_status,
-		eap_status_string_c::get_status_string(internal_settings->m_completion_status)));
-
-	EAP_TRACE_RETURN_STRING(m_am_tools, "returns: CEapGeneric::complete_invoke_ui()");
-
-	if (internal_settings == 0)
-	{
-		iCompletionStatus = eap_status_illegal_parameter;
-
-		Complete();
-
-		return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-	}
-
-	iCompletionStatus = internal_settings->m_completion_status;
-
-	if (iWaitState == eap_generic_wait_state_complete_invoke_ui
-		&& iCompletionStatus == eap_status_ok)
-	{
-		if (internal_settings != 0
-			&& internal_settings->m_ButtonIdPresent == true)
-		{
-
-		}
-		else
-		{
-			SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_illegal_parameter));
-		}
-	}
-	else if (iCompletionStatus == eap_status_ok)
-	{
-		// ERROR wrong state.
-		SetCompletionStatusIfStillOk(EAP_STATUS_RETURN(m_am_tools, eap_status_wrong_eap_type_state));
-	}
-
-	Complete();
-
-	return EAP_STATUS_RETURN(m_am_tools, iCompletionStatus);
-}
-
-
-//--------------------------------------------------
-//--------------------------------------------------
-//--------------------------------------------------
-
-eap_am_message_if_c * eap_am_message_if_c::new_eap_am_message_if_c(
-	abs_eap_am_tools_c * const tools)
-{
-	EAP_TRACE_DEBUG(
-		tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("eap_am_message_if_c::new_eap_am_server_general_settings_c()\n")));
-
-	EAP_TRACE_RETURN_STRING(tools, "returns: eap_am_message_if_c::new_eap_am_message_if_c()");
-
-    eap_am_message_if_c *client_if = new eap_am_message_if_symbian_c(tools, EEapPluginNew);
-
-	eap_automatic_variable_c<eap_am_message_if_c> automatic_client_if(
-		tools,
-		client_if);
-
-	if (client_if == 0
-		|| client_if->get_is_valid() == false)
-	{
-		// ERROR.
-		if (client_if != 0)
-		{
-			EAP_TRACE_DEBUG(
-				tools,
-				TRACE_FLAGS_ALWAYS|TRACE_FLAGS_DEFAULT, 
-				(EAPL("ERROR: calls: eap_am_message_if_c::new_eap_am_server_general_settings_c(): client_if->shutdown()\n")));
-
-			client_if->shutdown();
-		}
-		return 0;
-	}
-
-	automatic_client_if.do_not_free_variable();
-
-	return client_if;
-
-}
-
-//--------------------------------------------------
-
-EAP_FUNC_EXPORT eap_plugin_message_base_c * eap_plugin_message_base_c::new_eap_plugin_client_message_if_c(
-	abs_eap_am_tools_c * const tools,
-	abs_eap_plugin_message_c * const partner)
-{
-	EAP_TRACE_DEBUG(
-		tools,
-		TRACE_FLAGS_DEFAULT,
-		(EAPL("eap_plugin_message_base_c::new_eap_plugin_client_message_if_c()\n")));
-
-	EAP_TRACE_RETURN_STRING(tools, "returns: eap_plugin_message_base_c::new_eap_plugin_client_message_if_c()");
-
-	eap_am_message_if_c *client_if = eap_am_message_if_c::new_eap_am_message_if_c(
-		tools);
-
-	eap_automatic_variable_c<eap_am_message_if_c> automatic_client_if(
-		tools,
-		client_if);
-
-	if (client_if == 0
-		|| client_if->get_is_valid() == false)
-	{
-		// ERROR.
-		if (client_if != 0)
-		{
-			EAP_TRACE_DEBUG(
-				tools,
-				TRACE_FLAGS_ALWAYS|TRACE_FLAGS_DEFAULT, 
-				(EAPL("ERROR: calls: eap_plugin_message_base_c::new_eap_plugin_client_message_if_c(): client_if->shutdown()\n")));
-
-			(void) client_if->shutdown();
-		}
-		return 0;
-	}
-
-	eap_plugin_client_message_if_c * new_session_core = new eap_plugin_client_message_if_c(tools, client_if, partner);
-
-	eap_automatic_variable_c<eap_plugin_client_message_if_c> automatic_new_session_core(
-		tools,
-		new_session_core);
-
-	if (new_session_core == 0
-		|| new_session_core->get_is_valid() == false)
-	{
-		// ERROR.
-		if (new_session_core != 0)
-		{
-			EAP_TRACE_DEBUG(
-				tools,
-				TRACE_FLAGS_ALWAYS|TRACE_FLAGS_DEFAULT, 
-				(EAPL("ERROR: calls: eap_plugin_message_base_c::new_eap_plugin_client_message_if_c(): new_session_core->shutdown()\n")));
-
-			new_session_core->shutdown();
-		}
-		return 0;
-	}
-
-	client_if->set_partner(new_session_core);
-
-	automatic_client_if.do_not_free_variable();
-	automatic_new_session_core.do_not_free_variable();
-
-	return new_session_core;
-}
-
-// ----------------------------------------------------------
-// End of file