23 #define _SIMPLE_CONFIG_TLV_HEADER_H_ |
23 #define _SIMPLE_CONFIG_TLV_HEADER_H_ |
24 |
24 |
25 #include "eap_tools.h" |
25 #include "eap_tools.h" |
26 #include "eap_general_header_base.h" |
26 #include "eap_general_header_base.h" |
27 #include "simple_config_attribute_type.h" |
27 #include "simple_config_attribute_type.h" |
|
28 #include "eap_am_export.h" |
|
29 // Start: added by script change_export_macros.sh. |
|
30 #if defined(EAP_NO_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H) |
|
31 #define EAP_CLASS_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_NONSHARABLE |
|
32 #define EAP_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H |
|
33 #define EAP_C_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H |
|
34 #define EAP_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H |
|
35 #define EAP_C_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H |
|
36 #elif defined(EAP_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H) |
|
37 #define EAP_CLASS_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_EXPORT |
|
38 #define EAP_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_FUNC_EXPORT |
|
39 #define EAP_C_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_C_FUNC_EXPORT |
|
40 #define EAP_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H EAP_FUNC_EXPORT |
|
41 #define EAP_C_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H EAP_C_FUNC_EXPORT |
|
42 #else |
|
43 #define EAP_CLASS_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_IMPORT |
|
44 #define EAP_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_FUNC_IMPORT |
|
45 #define EAP_C_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H EAP_C_FUNC_IMPORT |
|
46 #define EAP_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H |
|
47 #define EAP_C_FUNC_EXPORT_SIMPLE_CONFIG_TLV_HEADER_H |
|
48 #endif |
|
49 // End: added by script change_export_macros.sh. |
|
50 |
28 |
51 |
29 /** @file */ |
52 /** @file */ |
30 |
53 |
31 |
54 |
32 //---------------------------------------------------------------------------- |
55 //---------------------------------------------------------------------------- |
51 * The fields of this header are: |
74 * The fields of this header are: |
52 * 16-bits Attribute Type This is a TLV type. |
75 * 16-bits Attribute Type This is a TLV type. |
53 * 16-bits Data Length; This is a length field, the length (in bytes) of the following Data. |
76 * 16-bits Data Length; This is a length field, the length (in bytes) of the following Data. |
54 * @endcode |
77 * @endcode |
55 */ |
78 */ |
56 class EAP_EXPORT simple_config_tlv_header_c |
79 class EAP_CLASS_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H simple_config_tlv_header_c |
57 : public eap_general_header_base_c |
80 : public eap_general_header_base_c |
58 { |
81 { |
59 private: |
82 private: |
60 //-------------------------------------------------- |
83 //-------------------------------------------------- |
61 |
84 |
113 u16_t get_data_length() const; |
136 u16_t get_data_length() const; |
114 |
137 |
115 /** |
138 /** |
116 * This function returns the header length of TLV. |
139 * This function returns the header length of TLV. |
117 */ |
140 */ |
118 EAP_FUNC_IMPORT static u32_t get_header_length(); |
141 EAP_FUNC_VISIBILITY_SIMPLE_CONFIG_TLV_HEADER_H static u32_t get_header_length(); |
119 |
142 |
120 /** |
143 /** |
121 * This function returns pointer to the offset of data of TLV. |
144 * This function returns pointer to the offset of data of TLV. |
122 * @param offset is the offset of queried data in bytes. |
145 * @param offset is the offset of queried data in bytes. |
123 * @param contignuous_bytes is the length of queried data in bytes. |
146 * @param contignuous_bytes is the length of queried data in bytes. |