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( |