24 |
24 |
25 |
25 |
26 #include "tls_peap_types.h" |
26 #include "tls_peap_types.h" |
27 #include "eap_array.h" |
27 #include "eap_array.h" |
28 #include "eap_header.h" |
28 #include "eap_header.h" |
|
29 #include "eap_am_export.h" |
|
30 // Start: added by script change_export_macros.sh. |
|
31 #if defined(EAP_NO_EXPORT_TLS_BASE_RECORD_H) |
|
32 #define EAP_CLASS_VISIBILITY_TLS_BASE_RECORD_H EAP_NONSHARABLE |
|
33 #define EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H |
|
34 #define EAP_C_FUNC_VISIBILITY_TLS_BASE_RECORD_H |
|
35 #define EAP_FUNC_EXPORT_TLS_BASE_RECORD_H |
|
36 #define EAP_C_FUNC_EXPORT_TLS_BASE_RECORD_H |
|
37 #elif defined(EAP_EXPORT_TLS_BASE_RECORD_H) |
|
38 #define EAP_CLASS_VISIBILITY_TLS_BASE_RECORD_H EAP_EXPORT |
|
39 #define EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H EAP_FUNC_EXPORT |
|
40 #define EAP_C_FUNC_VISIBILITY_TLS_BASE_RECORD_H EAP_C_FUNC_EXPORT |
|
41 #define EAP_FUNC_EXPORT_TLS_BASE_RECORD_H EAP_FUNC_EXPORT |
|
42 #define EAP_C_FUNC_EXPORT_TLS_BASE_RECORD_H EAP_C_FUNC_EXPORT |
|
43 #else |
|
44 #define EAP_CLASS_VISIBILITY_TLS_BASE_RECORD_H EAP_IMPORT |
|
45 #define EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H EAP_FUNC_IMPORT |
|
46 #define EAP_C_FUNC_VISIBILITY_TLS_BASE_RECORD_H EAP_C_FUNC_IMPORT |
|
47 #define EAP_FUNC_EXPORT_TLS_BASE_RECORD_H |
|
48 #define EAP_C_FUNC_EXPORT_TLS_BASE_RECORD_H |
|
49 #endif |
|
50 // End: added by script change_export_macros.sh. |
|
51 |
29 |
52 |
30 class abs_tls_base_record_c; |
53 class abs_tls_base_record_c; |
31 class abs_eap_am_tools_c; |
54 class abs_eap_am_tools_c; |
32 class eap_am_network_id_c; |
55 class eap_am_network_id_c; |
33 class tls_record_header_c; |
56 class tls_record_header_c; |
34 class eap_rogue_ap_entry_c; |
57 class eap_rogue_ap_entry_c; |
35 |
58 |
36 |
59 |
37 /// The tls_base_record_c class declares pure virtual functions |
60 /// The tls_base_record_c class declares pure virtual functions |
38 /// a user class of TLS-record class could call. |
61 /// a user class of TLS-record class could call. |
39 class EAP_EXPORT tls_base_record_c |
62 class EAP_CLASS_VISIBILITY_TLS_BASE_RECORD_H tls_base_record_c |
40 { |
63 { |
41 private: |
64 private: |
42 //-------------------------------------------------- |
65 //-------------------------------------------------- |
43 |
66 |
44 /// This is back pointer to object which created this object. |
67 /// This is back pointer to object which created this object. |
64 //-------------------------------------------------- |
87 //-------------------------------------------------- |
65 |
88 |
66 /** |
89 /** |
67 * The destructor of the tls_base_record_c class does nothing special. |
90 * The destructor of the tls_base_record_c class does nothing special. |
68 */ |
91 */ |
69 EAP_FUNC_IMPORT virtual ~tls_base_record_c(); |
92 EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H virtual ~tls_base_record_c(); |
70 |
93 |
71 /** |
94 /** |
72 * The constructor of the tls_base_record_c class simply initializes the attributes. |
95 * The constructor of the tls_base_record_c class simply initializes the attributes. |
73 * @param tools is pointer to the tools class. @see abs_eap_am_tools_c. |
96 * @param tools is pointer to the tools class. @see abs_eap_am_tools_c. |
74 * @param partner is back pointer to object which created this object. |
97 * @param partner is back pointer to object which created this object. |
75 * The tls_base_record_c object sends packets to the network using m_type_partner object. |
98 * The tls_base_record_c object sends packets to the network using m_type_partner object. |
76 */ |
99 */ |
77 EAP_FUNC_IMPORT tls_base_record_c( |
100 EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H tls_base_record_c( |
78 abs_eap_am_tools_c * const tools /*, |
101 abs_eap_am_tools_c * const tools /*, |
79 abs_tls_base_record_c * const partner */); |
102 abs_tls_base_record_c * const partner */); |
80 |
103 |
81 /** |
104 /** |
82 * Type partner is object below the tls_base_record_c object. |
105 * Type partner is object below the tls_base_record_c object. |
83 * @return The get_type_partner() function returns the pointer to the partner class. |
106 * @return The get_type_partner() function returns the pointer to the partner class. |
84 */ |
107 */ |
85 EAP_FUNC_IMPORT abs_tls_base_record_c * get_type_partner(); |
108 EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H abs_tls_base_record_c * get_type_partner(); |
86 |
109 |
87 EAP_FUNC_IMPORT void set_type_partner(abs_tls_base_record_c * const partner); |
110 EAP_FUNC_VISIBILITY_TLS_BASE_RECORD_H void set_type_partner(abs_tls_base_record_c * const partner); |
88 |
111 |
89 virtual void set_peap_version( |
112 virtual void set_peap_version( |
90 const peap_version_e peap_version, ///< This is the PEAP version (PEAPv2, PEAPv1, XP PEAPv0), yes very nice to have many different versions. |
113 const peap_version_e peap_version, ///< This is the PEAP version (PEAPv2, PEAPv1, XP PEAPv0), yes very nice to have many different versions. |
91 const bool use_tppd_tls_peap, ///< Of course some vendors have own TLS/PEAP quirks. |
114 const bool use_tppd_tls_peap, ///< Of course some vendors have own TLS/PEAP quirks. |
92 const bool use_tppd_peapv1_acknowledge_hack) = 0; |
115 const bool use_tppd_peapv1_acknowledge_hack) = 0; |