eapol/eapol_framework/eapol_symbian/am/include/eap_am_type_securid_symbian.h
changeset 26 9abfd4f00d37
parent 2 1c7bc153c08e
child 34 ad1f037f1ac2
equal deleted inserted replaced
25:e03a3db4489e 26:9abfd4f00d37
    14 * Description:  EAP and WLAN authentication protocols.
    14 * Description:  EAP and WLAN authentication protocols.
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 /*
    18 /*
    19 * %version: 18 %
    19 * %version: 16.1.7 %
    20 */
    20 */
    21 
    21 
    22 #ifndef EAP_AM_TYPE_SECURID_SYMBIAN_H
    22 #ifndef EAP_AM_TYPE_SECURID_SYMBIAN_H
    23 #define EAP_AM_TYPE_SECURID_SYMBIAN_H
    23 #define EAP_AM_TYPE_SECURID_SYMBIAN_H
    24 
    24 
    25 //  INCLUDES
    25 //  INCLUDES
    26 #include "eap_am_tools.h"
    26 #include "eap_am_tools.h"
    27 #include "abs_eap_base_type.h"
    27 #include "abs_eap_base_type.h"
    28 #include "eap_am_type_securid.h"
    28 #include "eap_am_type_securid.h"
    29 #include "eap_am_network_id.h"
    29 #include "eap_am_network_id.h"
    30 #include "EapSecurIDNotifierStructs.h"
    30 #include "eap_auth_notifier.h"
       
    31 
    31 #include <EapType.h>
    32 #include <EapType.h>
    32 #include <d32dbms.h>
    33 #include <d32dbms.h>
    33 
    34 
    34 const TUint KDefaultTimeoutEAPSecurId = 120000;
    35 const TUint KDefaultTimeoutEAPSecurId = 120000;
    35 
    36 
    37 * Class that implements the operating system dependent portion of EAP SecurID protocol.
    38 * Class that implements the operating system dependent portion of EAP SecurID protocol.
    38 * For Symbian OS.
    39 * For Symbian OS.
    39 */
    40 */
    40 class EAP_EXPORT eap_am_type_securid_symbian_c
    41 class EAP_EXPORT eap_am_type_securid_symbian_c
    41 	: public CActive, public eap_am_type_securid_c
    42 	: public CActive, public eap_am_type_securid_c
       
    43 	, public MNotificationCallback
       
    44 
       
    45 
    42 {
    46 {
    43 private:
    47 private:
    44 
    48 
    45 	RDbs m_session;
    49 	RFs m_session;
    46 
    50 
    47 	RDbNamedDatabase m_database;
    51 	RDbNamedDatabase m_database;
    48 
    52 
    49 	enum TState 
    53 	enum TState 
    50 	{
    54 	{
    56 
    60 
    57 	TState m_state;
    61 	TState m_state;
    58 
    62 
    59 	RNotifier m_notifier;
    63 	RNotifier m_notifier;
    60 
    64 
    61 	TEapSecurIDStruct * m_dialog_data_ptr;
    65 	CEapAuthNotifier::TEapDialogInfo * m_dialog_data_ptr;
    62 	TPckg<TEapSecurIDStruct> * m_dialog_data_pckg_ptr;
    66 	TPckg<CEapAuthNotifier::TEapDialogInfo> * m_dialog_data_pckg_ptr;
       
    67 
    63 
    68 
    64 	abs_eap_am_tools_c * const m_am_tools;
    69 	abs_eap_am_tools_c * const m_am_tools;
    65 
    70 
    66 	abs_eap_base_type_c * const m_partner;
    71 	abs_eap_base_type_c * const m_partner;
    67 
    72 
    86 	bool m_is_notifier_connected; // Tells if notifier server is connected.
    91 	bool m_is_notifier_connected; // Tells if notifier server is connected.
    87 
    92 
    88 	// This holds the max session time read from the configuration file.
    93 	// This holds the max session time read from the configuration file.
    89 	TInt64 m_max_session_time;
    94 	TInt64 m_max_session_time;
    90 	
    95 	
    91 	// This is the vendor-type for tunneling EAP type.
       
    92 	// Valid for both expanded and non-expanded EAP types.
       
    93 	// This is used since m_tunneling_type can not be used in the same way 
       
    94 	// in expanded and non-expanded cases. 
       
    95 	// Unlike EAP type, Tunneling type is still non-expanded
       
    96 	// for both cases especially for using in the EAP databases.
       
    97 	u32_t m_tunneling_vendor_type;	
       
    98 
       
    99 	u32_t m_eap_vendor_type; // This is needed in certain cases.
       
   100 	
       
   101 	void send_error_notification(const eap_status_e error);
    96 	void send_error_notification(const eap_status_e error);
   102 	
    97 	
   103 	bool is_session_validL();	
    98 	bool is_session_validL();	
       
    99 
       
   100 	CEapAuthNotifier* iEapAuthNotifier;
       
   101 
   104 
   102 
   105 protected:
   103 protected:
   106 
   104 
   107 	eap_am_type_securid_symbian_c(
   105 	eap_am_type_securid_symbian_c(
   108 		abs_eap_am_tools_c * const m_am_tools,
   106 		abs_eap_am_tools_c * const m_am_tools,
   203 	 * in the database by calling the leaving function store_authentication_time_L.
   201 	 * in the database by calling the leaving function store_authentication_time_L.
   204 	 * Returns appropriate error if storing fails. eap_status_ok for successful storing.
   202 	 * Returns appropriate error if storing fails. eap_status_ok for successful storing.
   205 	 */
   203 	 */
   206 	eap_status_e store_authentication_time();
   204 	eap_status_e store_authentication_time();
   207 
   205 
       
   206 	void DlgComplete( TInt aStatus );
       
   207 
       
   208 
   208 }; // class eap_am_type_securid_symbian_c
   209 }; // class eap_am_type_securid_symbian_c
   209 
   210 
   210 
   211 
   211 #endif // EAP_AM_TYPE_SECURID_SYMBIAN_H
   212 #endif // EAP_AM_TYPE_SECURID_SYMBIAN_H