14 * Description: EAP and WLAN authentication protocols. |
14 * Description: EAP and WLAN authentication protocols. |
15 * |
15 * |
16 */ |
16 */ |
17 |
17 |
18 /* |
18 /* |
19 * %version: 9 % |
19 * %version: 10 % |
20 */ |
20 */ |
21 |
21 |
22 #ifndef EAPCOREINTERFACE_H_ |
22 #ifndef EAPCOREINTERFACE_H_ |
23 #define EAPCOREINTERFACE_H_ |
23 #define EAPCOREINTERFACE_H_ |
24 |
24 |
25 |
25 |
|
26 #include "eap_am_export.h" |
|
27 // Start: added by script change_export_macros.sh. |
|
28 #if defined(EAP_NO_EXPORT_EAPCOREINTERFACE_H) |
|
29 #define EAP_CLASS_VISIBILITY_EAPCOREINTERFACE_H EAP_NONSHARABLE |
|
30 #define EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H |
|
31 #define EAP_C_FUNC_VISIBILITY_EAPCOREINTERFACE_H |
|
32 #define EAP_FUNC_EXPORT_EAPCOREINTERFACE_H |
|
33 #define EAP_C_FUNC_EXPORT_EAPCOREINTERFACE_H |
|
34 #elif defined(EAP_EXPORT_EAPCOREINTERFACE_H) |
|
35 #define EAP_CLASS_VISIBILITY_EAPCOREINTERFACE_H EAP_EXPORT |
|
36 #define EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H EAP_FUNC_EXPORT |
|
37 #define EAP_C_FUNC_VISIBILITY_EAPCOREINTERFACE_H EAP_C_FUNC_EXPORT |
|
38 #define EAP_FUNC_EXPORT_EAPCOREINTERFACE_H EAP_FUNC_EXPORT |
|
39 #define EAP_C_FUNC_EXPORT_EAPCOREINTERFACE_H EAP_C_FUNC_EXPORT |
|
40 #else |
|
41 #define EAP_CLASS_VISIBILITY_EAPCOREINTERFACE_H EAP_IMPORT |
|
42 #define EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H EAP_FUNC_IMPORT |
|
43 #define EAP_C_FUNC_VISIBILITY_EAPCOREINTERFACE_H EAP_C_FUNC_IMPORT |
|
44 #define EAP_FUNC_EXPORT_EAPCOREINTERFACE_H |
|
45 #define EAP_C_FUNC_EXPORT_EAPCOREINTERFACE_H |
|
46 #endif |
|
47 // End: added by script change_export_macros.sh. |
26 #include "abs_eap_am_message_if.h" |
48 #include "abs_eap_am_message_if.h" |
27 #include "eap_am_message_if.h" |
49 #include "eap_am_message_if.h" |
28 #include "EapSendInterface.h" |
50 #include "EapSendInterface.h" |
29 #include "EapProcessInterface.h" |
51 #include "EapProcessInterface.h" |
30 #include "EapServerClientDef.h" |
52 #include "EapServerClientDef.h" |
31 |
53 |
32 class CEapCoreInterface : |
54 class EAP_CLASS_VISIBILITY_EAPCOREINTERFACE_H CEapCoreInterface : |
33 public CBase, |
55 public CBase, |
34 public MEapSendInterface, |
56 public MEapSendInterface, |
35 public eap_am_message_if_c |
57 public eap_am_message_if_c |
36 |
58 |
37 { |
59 { |
38 public: |
60 public: |
39 /** |
61 /** |
40 * Two-phased constructor. |
62 * Two-phased constructor. |
41 */ |
63 */ |
42 CEapCoreInterface(const u32_t MTU); |
64 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H CEapCoreInterface(const u32_t MTU); |
43 |
65 |
44 /** |
66 /** |
45 * Destructor. |
67 * Destructor. |
46 */ |
68 */ |
47 virtual ~CEapCoreInterface(); |
69 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H virtual ~CEapCoreInterface(); |
48 |
70 |
49 public: // New functions |
71 public: // New functions |
50 |
72 |
51 /** |
73 /** |
52 * From eap_am_message_if_c |
74 * From eap_am_message_if_c |
53 * Initialize interface to EAPOL or WAPI. |
75 * Initialize interface to EAPOL or WAPI. |
54 * @since S60 v9.2 |
76 * @since S60 v9.2 |
55 */ |
77 */ |
56 |
78 |
57 EAP_FUNC_IMPORT bool get_is_valid(); |
79 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H bool get_is_valid(); |
58 |
80 |
59 /// Function receives the data message from lower layer. |
81 /// Function receives the data message from lower layer. |
60 /// Data is formatted to Attribute-Value Pairs. |
82 /// Data is formatted to Attribute-Value Pairs. |
61 /// Look at eap_tlv_header_c and eap_tlv_message_data_c. |
83 /// Look at eap_tlv_header_c and eap_tlv_message_data_c. |
62 EAP_FUNC_IMPORT eap_status_e process_data(const void * const data, const u32_t length); |
84 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H eap_status_e process_data(const void * const data, const u32_t length); |
63 |
85 |
64 // This is documented in abs_eap_stack_interface_c::configure(). |
86 // This is documented in abs_eap_stack_interface_c::configure(). |
65 EAP_FUNC_IMPORT eap_status_e configure( |
87 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H eap_status_e configure( |
66 const eap_variable_data_c * const client_configuration); |
88 const eap_variable_data_c * const client_configuration); |
67 |
89 |
68 // This is documented in abs_eap_stack_interface_c::shutdown(). |
90 // This is documented in abs_eap_stack_interface_c::shutdown(). |
69 EAP_FUNC_IMPORT eap_status_e shutdown(); |
91 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H eap_status_e shutdown(); |
70 |
92 |
71 EAP_FUNC_IMPORT void set_partner(abs_eap_am_message_if_c * const client); |
93 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H void set_partner(abs_eap_am_message_if_c * const client); |
72 |
94 |
73 /** |
95 /** |
74 * from MEapSendInterface |
96 * from MEapSendInterface |
75 */ |
97 */ |
76 EAP_FUNC_IMPORT TInt SendData( |
98 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H TInt SendData( |
77 const void * const aData, |
99 const void * const aData, |
78 const TInt aLength ); |
100 const TInt aLength ); |
79 |
101 |
80 EAP_FUNC_IMPORT CEapProcessInterface* ConstrucL(abs_eap_am_tools_c * const tools ); |
102 EAP_FUNC_VISIBILITY_EAPCOREINTERFACE_H CEapProcessInterface* ConstrucL(abs_eap_am_tools_c * const tools ); |
81 |
103 |
82 private: |
104 private: |
83 |
105 |
84 |
106 |
85 abs_eap_am_message_if_c* iClient; |
107 abs_eap_am_message_if_c* iClient; |