eapol/eapol_framework/eapol_common/include/eap_pac_store_message_base.h
changeset 49 43351a4f2da3
parent 26 9abfd4f00d37
equal deleted inserted replaced
47:712b4ffd76bb 49:43351a4f2da3
    14 * Description:  EAP and WLAN authentication protocols.
    14 * Description:  EAP and WLAN authentication protocols.
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 /*
    18 /*
    19 * %version: %
    19 * %version: 9 %
    20 */
    20 */
    21 
    21 
    22 #if !defined(_EAP_PAC_STORE_MESSAGE_BASE_H_)
    22 #if !defined(_EAP_PAC_STORE_MESSAGE_BASE_H_)
    23 #define _EAP_PAC_STORE_MESSAGE_BASE_H_
    23 #define _EAP_PAC_STORE_MESSAGE_BASE_H_
    24 
    24 
    25 #include "eap_tools.h"
    25 #include "eap_tools.h"
    26 #include "eap_am_export.h"
    26 #include "eap_am_export.h"
       
    27 // Start: added by script change_export_macros.sh.
       
    28 #if defined(EAP_NO_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H)
       
    29 	#define EAP_CLASS_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_NONSHARABLE 
       
    30 	#define EAP_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    31 	#define EAP_C_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    32 	#define EAP_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    33 	#define EAP_C_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    34 #elif defined(EAP_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H)
       
    35 	#define EAP_CLASS_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_EXPORT 
       
    36 	#define EAP_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_FUNC_EXPORT 
       
    37 	#define EAP_C_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_C_FUNC_EXPORT 
       
    38 	#define EAP_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H EAP_FUNC_EXPORT 
       
    39 	#define EAP_C_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H EAP_C_FUNC_EXPORT 
       
    40 #else
       
    41 	#define EAP_CLASS_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_IMPORT 
       
    42 	#define EAP_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_FUNC_IMPORT 
       
    43 	#define EAP_C_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H EAP_C_FUNC_IMPORT 
       
    44 	#define EAP_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    45 	#define EAP_C_FUNC_EXPORT_EAP_PAC_STORE_MESSAGE_BASE_H 
       
    46 #endif
       
    47 // End: added by script change_export_macros.sh.
    27 
    48 
    28 class eap_method_settings_c;
    49 class eap_method_settings_c;
    29 class abs_eap_pac_store_message_c;
    50 class abs_eap_pac_store_message_c;
    30 
    51 
    31 /// A eap_pac_store_message_base_c class implements mapping of EAP authentication sessions.
    52 /// A eap_pac_store_message_base_c class implements mapping of EAP authentication sessions.
    32 /// Network identity separates parallel EAP authentication sessions.
    53 /// Network identity separates parallel EAP authentication sessions.
    33 class EAP_EXPORT eap_pac_store_message_base_c
    54 class EAP_CLASS_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H eap_pac_store_message_base_c
    34 {
    55 {
    35 private:
    56 private:
    36 	//--------------------------------------------------
    57 	//--------------------------------------------------
    37 
    58 
    38 
    59 
    45 	//--------------------------------------------------
    66 	//--------------------------------------------------
    46 
    67 
    47 	/**
    68 	/**
    48 	 * The destructor of the eap_core class does nothing special.
    69 	 * The destructor of the eap_core class does nothing special.
    49 	 */
    70 	 */
    50 	EAP_FUNC_IMPORT virtual ~eap_pac_store_message_base_c();
    71 	EAP_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H virtual ~eap_pac_store_message_base_c();
    51 
    72 
    52 	/**
    73 	/**
    53 	 * The constructor initializes member attributes using parameters passed to it.
    74 	 * The constructor initializes member attributes using parameters passed to it.
    54 	 * @param tools is pointer to the tools class. @see abs_eap_am_tools_c.
    75 	 * @param tools is pointer to the tools class. @see abs_eap_am_tools_c.
    55 	 * @param partner is back pointer to object which created this object.
    76 	 * @param partner is back pointer to object which created this object.
    56 	 * @param is_client_when_true indicates whether the network entity should act
    77 	 * @param is_client_when_true indicates whether the network entity should act
    57 	 * as a client (true) or server (false), in terms of EAP-protocol
    78 	 * as a client (true) or server (false), in terms of EAP-protocol
    58 	 * whether this network entity is EAP-supplicant (true) or EAP-authenticator (false).
    79 	 * whether this network entity is EAP-supplicant (true) or EAP-authenticator (false).
    59 	 */
    80 	 */
    60 	EAP_FUNC_IMPORT eap_pac_store_message_base_c();
    81 	EAP_FUNC_VISIBILITY_EAP_PAC_STORE_MESSAGE_BASE_H eap_pac_store_message_base_c();
    61 
    82 
    62 	/**
    83 	/**
    63 	 * This function must reset the state of object to same as 
    84 	 * This function must reset the state of object to same as 
    64 	 * state was after the configure() function call.
    85 	 * state was after the configure() function call.
    65 	 * If object reset succeeds this function must return eap_status_ok.
    86 	 * If object reset succeeds this function must return eap_status_ok.
    74 	// This is documented in abs_eap_stack_interface_c::shutdown().
    95 	// This is documented in abs_eap_stack_interface_c::shutdown().
    75 	virtual eap_status_e shutdown() = 0;
    96 	virtual eap_status_e shutdown() = 0;
    76 
    97 
    77 	// This is documented in abs_eap_stack_interface_c::get_is_valid().
    98 	// This is documented in abs_eap_stack_interface_c::get_is_valid().
    78 	virtual bool get_is_valid() = 0;
    99 	virtual bool get_is_valid() = 0;
    79 
       
    80 	virtual eap_status_e open_pac_store(
       
    81 		const eap_status_e completion_status) = 0;
       
    82 
       
    83 	virtual eap_status_e create_device_seed(
       
    84 		const eap_status_e completion_status) = 0;
       
    85 
   100 
    86 	virtual eap_status_e is_master_key_present(
   101 	virtual eap_status_e is_master_key_present(
    87 		const eap_status_e completion_status) = 0;
   102 		const eap_status_e completion_status) = 0;
    88 
   103 
    89 	virtual eap_status_e is_master_key_and_password_matching(
   104 	virtual eap_status_e is_master_key_and_password_matching(