eapol/eapol_framework/eapol_common/type/radius/include/eap_radius_state_notification.h
changeset 49 43351a4f2da3
parent 26 9abfd4f00d37
equal deleted inserted replaced
47:712b4ffd76bb 49:43351a4f2da3
    22 #if !defined(_EAP_RADIUS_STATE_NOTIFICATION_H_)
    22 #if !defined(_EAP_RADIUS_STATE_NOTIFICATION_H_)
    23 #define _EAP_RADIUS_STATE_NOTIFICATION_H_
    23 #define _EAP_RADIUS_STATE_NOTIFICATION_H_
    24 
    24 
    25 #include "eap_variable_data.h"
    25 #include "eap_variable_data.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_RADIUS_STATE_NOTIFICATION_H)
       
    29 	#define EAP_CLASS_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_NONSHARABLE 
       
    30 	#define EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    31 	#define EAP_C_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    32 	#define EAP_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    33 	#define EAP_C_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    34 #elif defined(EAP_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H)
       
    35 	#define EAP_CLASS_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_EXPORT 
       
    36 	#define EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_FUNC_EXPORT 
       
    37 	#define EAP_C_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_C_FUNC_EXPORT 
       
    38 	#define EAP_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H EAP_FUNC_EXPORT 
       
    39 	#define EAP_C_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H EAP_C_FUNC_EXPORT 
       
    40 #else
       
    41 	#define EAP_CLASS_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_IMPORT 
       
    42 	#define EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_FUNC_IMPORT 
       
    43 	#define EAP_C_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H EAP_C_FUNC_IMPORT 
       
    44 	#define EAP_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    45 	#define EAP_C_FUNC_EXPORT_EAP_RADIUS_STATE_NOTIFICATION_H 
       
    46 #endif
       
    47 // End: added by script change_export_macros.sh.
    27 #include "eap_protocol_layer.h"
    48 #include "eap_protocol_layer.h"
    28 #include "abs_eap_state_notification.h"
    49 #include "abs_eap_state_notification.h"
    29 
    50 
    30 
    51 
    31 /// A eap_radius_state_notification_c class.
    52 /// A eap_radius_state_notification_c class.
    32 /// This is used for debugging and protocol testing.
    53 /// This is used for debugging and protocol testing.
    33 class EAP_EXPORT eap_radius_state_notification_c
    54 class EAP_CLASS_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_radius_state_notification_c
    34 : public abs_eap_state_notification_c
    55 : public abs_eap_state_notification_c
    35 {
    56 {
    36 private:
    57 private:
    37 	//--------------------------------------------------
    58 	//--------------------------------------------------
    38 
    59 
    58 	
    79 	
    59 	u8_t m_eap_identifier;
    80 	u8_t m_eap_identifier;
    60 	
    81 	
    61 	bool m_allow_send_eap_success;
    82 	bool m_allow_send_eap_success;
    62 
    83 
    63 	EAP_FUNC_IMPORT eap_const_string get_state_string(const u32_t state) const;
    84 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_const_string get_state_string(const u32_t state) const;
    64 
    85 
    65 	//--------------------------------------------------
    86 	//--------------------------------------------------
    66 protected:
    87 protected:
    67 	//--------------------------------------------------
    88 	//--------------------------------------------------
    68 
    89 
    71 	//--------------------------------------------------
    92 	//--------------------------------------------------
    72 
    93 
    73 	/**
    94 	/**
    74 	 * The destructor of the eap_radius_state_notification_c class does nothing special.
    95 	 * The destructor of the eap_radius_state_notification_c class does nothing special.
    75 	 */
    96 	 */
    76 	EAP_FUNC_IMPORT virtual ~eap_radius_state_notification_c();
    97 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H virtual ~eap_radius_state_notification_c();
    77 
    98 
    78 	/**
    99 	/**
    79 	 * The constructor of the eap_radius_state_notification_c class does nothing special.
   100 	 * The constructor of the eap_radius_state_notification_c class does nothing special.
    80 	 */
   101 	 */
    81 	EAP_FUNC_IMPORT eap_radius_state_notification_c(
   102 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_radius_state_notification_c(
    82 		abs_eap_am_tools_c * const tools,
   103 		abs_eap_am_tools_c * const tools,
    83 		const eap_am_network_id_c * const send_network_id,
   104 		const eap_am_network_id_c * const send_network_id,
    84 		bool is_client,
   105 		bool is_client,
    85 		eap_state_notification_generic_e,
   106 		eap_state_notification_generic_e,
    86 		eap_protocol_layer_e layer,
   107 		eap_protocol_layer_e layer,
    89 		u32_t current_state,
   110 		u32_t current_state,
    90 		u8_t eap_identifier,
   111 		u8_t eap_identifier,
    91 		bool allow_send_eap_success);
   112 		bool allow_send_eap_success);
    92 
   113 
    93 
   114 
    94 	EAP_FUNC_IMPORT eap_radius_state_notification_c(
   115 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_radius_state_notification_c(
    95 		abs_eap_am_tools_c * const tools,
   116 		abs_eap_am_tools_c * const tools,
    96 		const eap_am_network_id_c * const send_network_id,
   117 		const eap_am_network_id_c * const send_network_id,
    97 		bool is_client,
   118 		bool is_client,
    98 		eap_state_notification_eap_e,
   119 		eap_state_notification_eap_e,
    99 		eap_protocol_layer_e layer,
   120 		eap_protocol_layer_e layer,
   102 		u32_t current_state,
   123 		u32_t current_state,
   103 		u8_t eap_identifier,
   124 		u8_t eap_identifier,
   104 		bool allow_send_eap_success);
   125 		bool allow_send_eap_success);
   105 
   126 
   106 
   127 
   107 	EAP_FUNC_IMPORT eap_radius_state_notification_c(
   128 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_radius_state_notification_c(
   108 		abs_eap_am_tools_c * const tools,
   129 		abs_eap_am_tools_c * const tools,
   109 		const eap_am_network_id_c * const send_network_id,
   130 		const eap_am_network_id_c * const send_network_id,
   110 		bool is_client,
   131 		bool is_client,
   111 		eap_state_notification_eap_e,
   132 		eap_state_notification_eap_e,
   112 		eap_protocol_layer_e layer,
   133 		eap_protocol_layer_e layer,
   115 		u32_t current_state,
   136 		u32_t current_state,
   116 		u8_t eap_identifier,
   137 		u8_t eap_identifier,
   117 		bool allow_send_eap_success);
   138 		bool allow_send_eap_success);
   118 
   139 
   119 	// This is commented in abs_eap_state_notification_c::get_send_network_id().
   140 	// This is commented in abs_eap_state_notification_c::get_send_network_id().
   120 	EAP_FUNC_IMPORT const eap_am_network_id_c * get_send_network_id() const;
   141 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H const eap_am_network_id_c * get_send_network_id() const;
   121 
   142 
   122 	// This is commented in abs_eap_state_notification_c::get_protocol_layer().
   143 	// This is commented in abs_eap_state_notification_c::get_protocol_layer().
   123 	EAP_FUNC_IMPORT eap_protocol_layer_e get_protocol_layer() const;
   144 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_protocol_layer_e get_protocol_layer() const;
   124 
   145 
   125 	// This is commented in abs_eap_state_notification_c::get_protocol().
   146 	// This is commented in abs_eap_state_notification_c::get_protocol().
   126 	EAP_FUNC_IMPORT u32_t get_protocol() const;
   147 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H u32_t get_protocol() const;
   127 
   148 
   128 	// This is commented in abs_eap_state_notification_c::get_eap_type().
   149 	// This is commented in abs_eap_state_notification_c::get_eap_type().
   129 	EAP_FUNC_IMPORT eap_type_value_e get_eap_type() const;
   150 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_type_value_e get_eap_type() const;
   130 
   151 
   131 	// This is commented in abs_eap_state_notification_c::get_previous_state().
   152 	// This is commented in abs_eap_state_notification_c::get_previous_state().
   132 	EAP_FUNC_IMPORT u32_t get_previous_state() const;
   153 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H u32_t get_previous_state() const;
   133 
   154 
   134 	// This is commented in abs_eap_state_notification_c::get_previous_state_string().
   155 	// This is commented in abs_eap_state_notification_c::get_previous_state_string().
   135 	EAP_FUNC_IMPORT eap_const_string get_previous_state_string() const;
   156 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_const_string get_previous_state_string() const;
   136 
   157 
   137 	// This is commented in abs_eap_state_notification_c::get_current_state().
   158 	// This is commented in abs_eap_state_notification_c::get_current_state().
   138 	EAP_FUNC_IMPORT u32_t get_current_state() const;
   159 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H u32_t get_current_state() const;
   139 
   160 
   140 	// This is commented in abs_eap_state_notification_c::get_current_state_string().
   161 	// This is commented in abs_eap_state_notification_c::get_current_state_string().
   141 	EAP_FUNC_IMPORT eap_const_string get_current_state_string() const;
   162 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_const_string get_current_state_string() const;
   142 
   163 
   143 	// This is commented in abs_eap_state_notification_c::get_is_client().
   164 	// This is commented in abs_eap_state_notification_c::get_is_client().
   144 	EAP_FUNC_IMPORT bool get_is_client() const;
   165 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H bool get_is_client() const;
   145 
   166 
   146 	// This is commented in abs_eap_state_notification_c::get_eap_identifier().
   167 	// This is commented in abs_eap_state_notification_c::get_eap_identifier().
   147 	EAP_FUNC_IMPORT u8_t get_eap_identifier() const;
   168 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H u8_t get_eap_identifier() const;
   148 
   169 
   149 	// This is commented in abs_eap_state_notification_c::get_allow_send_eap_success().
   170 	// This is commented in abs_eap_state_notification_c::get_allow_send_eap_success().
   150 	EAP_FUNC_IMPORT bool get_allow_send_eap_success() const;
   171 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H bool get_allow_send_eap_success() const;
   151 
   172 
   152 	// This is commented in abs_eap_state_notification_c::set_notification_string().
   173 	// This is commented in abs_eap_state_notification_c::set_notification_string().
   153 	EAP_FUNC_IMPORT eap_status_e set_notification_string(
   174 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H eap_status_e set_notification_string(
   154 		const eap_variable_data_c * const notification_string,
   175 		const eap_variable_data_c * const notification_string,
   155 		const bool needs_confirmation_from_user);
   176 		const bool needs_confirmation_from_user);
   156 
   177 
   157 	// This is commented in abs_eap_state_notification_c::get_notification_string().
   178 	// This is commented in abs_eap_state_notification_c::get_notification_string().
   158 	EAP_FUNC_IMPORT const eap_variable_data_c * get_notification_string() const;
   179 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H const eap_variable_data_c * get_notification_string() const;
   159 
   180 
   160 	// This is commented in abs_eap_state_notification_c::get_needs_confirmation_from_user().
   181 	// This is commented in abs_eap_state_notification_c::get_needs_confirmation_from_user().
   161 	EAP_FUNC_IMPORT bool get_needs_confirmation_from_user() const;
   182 	EAP_FUNC_VISIBILITY_EAP_RADIUS_STATE_NOTIFICATION_H bool get_needs_confirmation_from_user() const;
   162 
   183 
   163 	//--------------------------------------------------
   184 	//--------------------------------------------------
   164 }; // class eap_radius_state_notification_c
   185 }; // class eap_radius_state_notification_c
   165 
   186 
   166 #endif //#if !defined(_EAP_RADIUS_STATE_NOTIFICATION_H_)
   187 #endif //#if !defined(_EAP_RADIUS_STATE_NOTIFICATION_H_)