1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
3 /* packet-ftam.c */
4 /* asn2wrs.py -b -p ftam -c ./ftam.cnf -s ./packet-ftam-template -D . -O ../.. ISO8571-FTAM.asn */
5
6 /* Input file: packet-ftam-template.c */
7
8 #line 1 "./asn1/ftam/packet-ftam-template.c"
9 /* packet-ftam_asn1.c
10 * Routine to dissect OSI ISO 8571 FTAM Protocol packets
11 * based on the ASN.1 specification from http://www.itu.int/ITU-T/asn1/database/iso/8571-4/1988/
12 *
13 * also based on original handwritten dissector by
14 * Yuriy Sidelnikov <YSidelnikov@hotmail.com>
15 *
16 * Anders Broman and Ronnie Sahlberg 2005 - 2006
17 *
18 * Wireshark - Network traffic analyzer
19 * By Gerald Combs <gerald@wireshark.org>
20 * Copyright 1998 Gerald Combs
21 *
22 * SPDX-License-Identifier: GPL-2.0-or-later
23 */
24
25 #include "config.h"
26
27 #include <epan/packet.h>
28 #include <epan/expert.h>
29 #include <epan/oids.h>
30 #include <epan/asn1.h>
31
32 #include "packet-ber.h"
33 #include "packet-acse.h"
34 #include "packet-ftam.h"
35
36 #define PNAME "ISO 8571 FTAM"
37 #define PSNAME "FTAM"
38 #define PFNAME "ftam"
39
40 void proto_register_ftam(void);
41 void proto_reg_handoff_ftam(void);
42
43 /* Initialize the protocol and registered fields */
44 static int proto_ftam = -1;
45
46 /* Declare the function to avoid a compiler warning */
47 static int dissect_ftam_OR_Set(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_);
48
49 static int hf_ftam_unstructured_text = -1; /* ISO FTAM unstructured text */
50 static int hf_ftam_unstructured_binary = -1; /* ISO FTAM unstructured binary */
51
52 /*--- Included file: packet-ftam-hf.c ---*/
53 #line 1 "./asn1/ftam/packet-ftam-hf.c"
54 static int hf_ftam_fTAM_Regime_PDU = -1; /* FTAM_Regime_PDU */
55 static int hf_ftam_file_PDU = -1; /* File_PDU */
56 static int hf_ftam_bulk_Data_PDU = -1; /* Bulk_Data_PDU */
57 static int hf_ftam_fSM_PDU = -1; /* FSM_PDU */
58 static int hf_ftam_f_initialize_request = -1; /* F_INITIALIZE_request */
59 static int hf_ftam_f_initialize_response = -1; /* F_INITIALIZE_response */
60 static int hf_ftam_f_terminate_request = -1; /* F_TERMINATE_request */
61 static int hf_ftam_f_terminate_response = -1; /* F_TERMINATE_response */
62 static int hf_ftam_f_u_abort_request = -1; /* F_U_ABORT_request */
63 static int hf_ftam_f_p_abort_request = -1; /* F_P_ABORT_request */
64 static int hf_ftam_protocol_Version = -1; /* Protocol_Version */
65 static int hf_ftam_implementation_information = -1; /* Implementation_Information */
66 static int hf_ftam_presentation_tontext_management = -1; /* BOOLEAN */
67 static int hf_ftam_service_class = -1; /* Service_Class */
68 static int hf_ftam_functional_units = -1; /* Functional_Units */
69 static int hf_ftam_attribute_groups = -1; /* Attribute_Groups */
70 static int hf_ftam_shared_ASE_information = -1; /* Shared_ASE_Information */
71 static int hf_ftam_ftam_quality_of_Service = -1; /* FTAM_Quality_of_Service */
72 static int hf_ftam_contents_type_list = -1; /* Contents_Type_List */
73 static int hf_ftam_initiator_identity = -1; /* User_Identity */
74 static int hf_ftam_account = -1; /* Account */
75 static int hf_ftam_filestore_password = -1; /* Password */
76 static int hf_ftam_checkpoint_window = -1; /* INTEGER */
77 static int hf_ftam_state_result = -1; /* State_Result */
78 static int hf_ftam_action_result = -1; /* Action_Result */
79 static int hf_ftam_diagnostic = -1; /* Diagnostic */
80 static int hf_ftam__untag_item = -1; /* Contents_Type_List_item */
81 static int hf_ftam_document_type_name = -1; /* Document_Type_Name */
82 static int hf_ftam_abstract_Syntax_name = -1; /* Abstract_Syntax_Name */
83 static int hf_ftam_charging = -1; /* Charging */
84 static int hf_ftam_f_select_request = -1; /* F_SELECT_request */
85 static int hf_ftam_f_select_response = -1; /* F_SELECT_response */
86 static int hf_ftam_f_deselect_request = -1; /* F_DESELECT_request */
87 static int hf_ftam_f_deselect_response = -1; /* F_DESELECT_response */
88 static int hf_ftam_f_create_request = -1; /* F_CREATE_request */
89 static int hf_ftam_f_create_response = -1; /* F_CREATE_response */
90 static int hf_ftam_f_delete_request = -1; /* F_DELETE_request */
91 static int hf_ftam_f_delete_response = -1; /* F_DELETE_response */
92 static int hf_ftam_f_read_attrib_request = -1; /* F_READ_ATTRIB_request */
93 static int hf_ftam_f_read_attrib_response = -1; /* F_READ_ATTRIB_response */
94 static int hf_ftam_f_Change_attrib_reques = -1; /* F_CHANGE_ATTRIB_request */
95 static int hf_ftam_f_Change_attrib_respon = -1; /* F_CHANGE_ATTRIB_response */
96 static int hf_ftam_f_open_request = -1; /* F_OPEN_request */
97 static int hf_ftam_f_open_response = -1; /* F_OPEN_response */
98 static int hf_ftam_f_close_request = -1; /* F_CLOSE_request */
99 static int hf_ftam_f_close_response = -1; /* F_CLOSE_response */
100 static int hf_ftam_f_begin_group_request = -1; /* F_BEGIN_GROUP_request */
101 static int hf_ftam_f_begin_group_response = -1; /* F_BEGIN_GROUP_response */
102 static int hf_ftam_f_end_group_request = -1; /* F_END_GROUP_request */
103 static int hf_ftam_f_end_group_response = -1; /* F_END_GROUP_response */
104 static int hf_ftam_f_recover_request = -1; /* F_RECOVER_request */
105 static int hf_ftam_f_recover_response = -1; /* F_RECOVER_response */
106 static int hf_ftam_f_locate_request = -1; /* F_LOCATE_request */
107 static int hf_ftam_f_locate_response = -1; /* F_LOCATE_response */
108 static int hf_ftam_f_erase_request = -1; /* F_ERASE_request */
109 static int hf_ftam_f_erase_response = -1; /* F_ERASE_response */
110 static int hf_ftam_select_attributes = -1; /* Select_Attributes */
111 static int hf_ftam_requested_access = -1; /* Access_Request */
112 static int hf_ftam_access_passwords = -1; /* Access_Passwords */
113 static int hf_ftam_path_access_passwords = -1; /* Path_Access_Passwords */
114 static int hf_ftam_concurrency_control = -1; /* Concurrency_Control */
115 static int hf_ftam_referent_indicator = -1; /* Referent_Indicator */
116 static int hf_ftam_override = -1; /* Override */
117 static int hf_ftam_initial_attributes = -1; /* Create_Attributes */
118 static int hf_ftam_create_password = -1; /* Password */
119 static int hf_ftam_attribute_names = -1; /* Attribute_Names */
120 static int hf_ftam_attribute_extension_names = -1; /* Attribute_Extension_Names */
121 static int hf_ftam_read_attributes = -1; /* Read_Attributes */
122 static int hf_ftam_attributes = -1; /* Change_Attributes */
123 static int hf_ftam_processing_mode = -1; /* T_processing_mode */
124 static int hf_ftam_open_contents_type = -1; /* T_open_contents_type */
125 static int hf_ftam_unknown = -1; /* NULL */
126 static int hf_ftam_proposed = -1; /* Contents_Type_Attribute */
127 static int hf_ftam_enable_fadu_locking = -1; /* BOOLEAN */
128 static int hf_ftam_activity_identifier = -1; /* Activity_Identifier */
129 static int hf_ftam_request_recovery_mode = -1; /* T_request_recovery_mode */
130 static int hf_ftam_remove_contexts = -1; /* SET_OF_Abstract_Syntax_Name */
131 static int hf_ftam_remove_contexts_item = -1; /* Abstract_Syntax_Name */
132 static int hf_ftam_define_contexts = -1; /* SET_OF_Abstract_Syntax_Name */
133 static int hf_ftam_define_contexts_item = -1; /* Abstract_Syntax_Name */
134 static int hf_ftam_degree_of_overlap = -1; /* Degree_Of_Overlap */
135 static int hf_ftam_transfer_window = -1; /* INTEGER */
136 static int hf_ftam_contents_type = -1; /* Contents_Type_Attribute */
137 static int hf_ftam_response_recovery_mode = -1; /* T_response_recovery_mode */
138 static int hf_ftam_presentation_action = -1; /* BOOLEAN */
139 static int hf_ftam_threshold = -1; /* INTEGER */
140 static int hf_ftam_bulk_transfer_number = -1; /* INTEGER */
141 static int hf_ftam_recovefy_Point = -1; /* INTEGER */
142 static int hf_ftam_concurrent_bulk_transfer_number = -1; /* INTEGER */
143 static int hf_ftam_concurrent_recovery_point = -1; /* INTEGER */
144 static int hf_ftam_last_transfer_end_read_response = -1; /* INTEGER */
145 static int hf_ftam_last_transfer_end_write_response = -1; /* INTEGER */
146 static int hf_ftam_recovety_Point = -1; /* INTEGER */
147 static int hf_ftam_last_transfer_end_read_request = -1; /* INTEGER */
148 static int hf_ftam_last_transfer_end_write_request = -1; /* INTEGER */
149 static int hf_ftam_file_access_data_unit_identity = -1; /* FADU_Identity */
150 static int hf_ftam_fadu_lock = -1; /* FADU_Lock */
151 static int hf_ftam_f_read_request = -1; /* F_READ_request */
152 static int hf_ftam_f_write_request = -1; /* F_WRITE_request */
153 static int hf_ftam_f_data_end_request = -1; /* F_DATA_END_request */
154 static int hf_ftam_f_transfer_end_request = -1; /* F_TRANSFER_END_request */
155 static int hf_ftam_f_transfer_end_response = -1; /* F_TRANSFER_END_response */
156 static int hf_ftam_f_cancel_request = -1; /* F_CANCEL_request */
157 static int hf_ftam_f_cancel_response = -1; /* F_CANCEL_response */
158 static int hf_ftam_f_restart_request = -1; /* F_RESTART_request */
159 static int hf_ftam_f_restart_response = -1; /* F_RESTART_response */
160 static int hf_ftam_read_access_context = -1; /* Access_Context */
161 static int hf_ftam_transfer_number = -1; /* INTEGER */
162 static int hf_ftam_file_access_data_unit_Operation = -1; /* T_file_access_data_unit_Operation */
163 static int hf_ftam_request_type = -1; /* Request_Type */
164 static int hf_ftam_checkpoint_identifier = -1; /* INTEGER */
165 static int hf_ftam_access_context = -1; /* T_access_context */
166 static int hf_ftam_level_number = -1; /* INTEGER */
167 static int hf_ftam_read_password = -1; /* Password */
168 static int hf_ftam_insert_password = -1; /* Password */
169 static int hf_ftam_replace_password = -1; /* Password */
170 static int hf_ftam_extend_password = -1; /* Password */
171 static int hf_ftam_erase_password = -1; /* Password */
172 static int hf_ftam_read_attribute_password = -1; /* Password */
173 static int hf_ftam_change_attribute_password = -1; /* Password */
174 static int hf_ftam_delete_password = -1; /* Password */
175 static int hf_ftam_pass_passwords = -1; /* Pass_Passwords */
176 static int hf_ftam_link_password = -1; /* Password */
177 static int hf_ftam_pathname = -1; /* Pathname_Attribute */
178 static int hf_ftam_storage_account = -1; /* Account_Attribute */
179 static int hf_ftam_object_availability = -1; /* Object_Availability_Attribute */
180 static int hf_ftam_future_Object_size = -1; /* Object_Size_Attribute */
181 static int hf_ftam_change_attributes_access_control = -1; /* Access_Control_Change_Attribute */
182 static int hf_ftam_change_path_access_control = -1; /* Access_Control_Change_Attribute */
183 static int hf_ftam_legal_qualification = -1; /* Legal_Qualification_Attribute */
184 static int hf_ftam_private_use = -1; /* Private_Use_Attribute */
185 static int hf_ftam_attribute_extensions = -1; /* Attribute_Extensions */
186 static int hf_ftam__untag_item_01 = -1; /* Charging_item */
187 static int hf_ftam_resource_identifier = -1; /* GraphicString */
188 static int hf_ftam_charging_unit = -1; /* GraphicString */
189 static int hf_ftam_charging_value = -1; /* INTEGER */
190 static int hf_ftam_read = -1; /* Lock */
191 static int hf_ftam_insert = -1; /* Lock */
192 static int hf_ftam_replace = -1; /* Lock */
193 static int hf_ftam_extend = -1; /* Lock */
194 static int hf_ftam_erase = -1; /* Lock */
195 static int hf_ftam_read_attribute = -1; /* Lock */
196 static int hf_ftam_change_attribute = -1; /* Lock */
197 static int hf_ftam_delete_Object = -1; /* Lock */
198 static int hf_ftam_object_type = -1; /* Object_Type_Attribute */
199 static int hf_ftam_permitted_actions = -1; /* Permitted_Actions_Attribute */
200 static int hf_ftam_access_control = -1; /* Access_Control_Attribute */
201 static int hf_ftam_path_access_control = -1; /* Access_Control_Attribute */
202 static int hf_ftam__untag_item_02 = -1; /* Diagnostic_item */
203 static int hf_ftam_diagnostic_type = -1; /* T_diagnostic_type */
204 static int hf_ftam_error_identifier = -1; /* INTEGER */
205 static int hf_ftam_error_observer = -1; /* Entity_Reference */
206 static int hf_ftam_error_Source = -1; /* Entity_Reference */
207 static int hf_ftam_suggested_delay = -1; /* INTEGER */
208 static int hf_ftam_further_details = -1; /* GraphicString */
209 static int hf_ftam_first_last = -1; /* T_first_last */
210 static int hf_ftam_relative = -1; /* T_relative */
211 static int hf_ftam_begin_end = -1; /* T_begin_end */
212 static int hf_ftam_single_name = -1; /* Node_Name */
213 static int hf_ftam_name_list = -1; /* SEQUENCE_OF_Node_Name */
214 static int hf_ftam_name_list_item = -1; /* Node_Name */
215 static int hf_ftam_fadu_number = -1; /* INTEGER */
216 static int hf_ftam_graphicString = -1; /* GraphicString */
217 static int hf_ftam_octetString = -1; /* OCTET_STRING */
218 static int hf_ftam_linked_Object = -1; /* Pathname_Attribute */
219 static int hf_ftam_child_objects = -1; /* Child_Objects_Attribute */
220 static int hf_ftam_primaty_pathname = -1; /* Pathname_Attribute */
221 static int hf_ftam_date_and_time_of_creation = -1; /* Date_and_Time_Attribute */
222 static int hf_ftam_date_and_time_of_last_modification = -1; /* Date_and_Time_Attribute */
223 static int hf_ftam_date_and_time_of_last_read_access = -1; /* Date_and_Time_Attribute */
224 static int hf_ftam_date_and_time_of_last_attribute_modification = -1; /* Date_and_Time_Attribute */
225 static int hf_ftam_identity_of_creator = -1; /* User_Identity_Attribute */
226 static int hf_ftam_identity_of_last_modifier = -1; /* User_Identity_Attribute */
227 static int hf_ftam_identity_of_last_reader = -1; /* User_Identity_Attribute */
228 static int hf_ftam_identity_last_attribute_modifier = -1; /* User_Identity_Attribute */
229 static int hf_ftam_object_size = -1; /* Object_Size_Attribute */
230 static int hf_ftam_no_value_available = -1; /* NULL */
231 static int hf_ftam_actual_values3 = -1; /* SET_OF_Access_Control_Element */
232 static int hf_ftam_actual_values3_item = -1; /* Access_Control_Element */
233 static int hf_ftam_actual_values1 = -1; /* T_actual_values1 */
234 static int hf_ftam_insert_values = -1; /* SET_OF_Access_Control_Element */
235 static int hf_ftam_insert_values_item = -1; /* Access_Control_Element */
236 static int hf_ftam_delete_values = -1; /* SET_OF_Access_Control_Element */
237 static int hf_ftam_delete_values_item = -1; /* Access_Control_Element */
238 static int hf_ftam_action_list = -1; /* Access_Request */
239 static int hf_ftam_concurrency_access = -1; /* Concurrency_Access */
240 static int hf_ftam_identity = -1; /* User_Identity */
241 static int hf_ftam_passwords = -1; /* Access_Passwords */
242 static int hf_ftam_location = -1; /* Application_Entity_Title */
243 static int hf_ftam_read_key = -1; /* Concurrency_Key */
244 static int hf_ftam_insert_key = -1; /* Concurrency_Key */
245 static int hf_ftam_replace_key = -1; /* Concurrency_Key */
246 static int hf_ftam_extend_key = -1; /* Concurrency_Key */
247 static int hf_ftam_erase_key = -1; /* Concurrency_Key */
248 static int hf_ftam_read_attribute_key = -1; /* Concurrency_Key */
249 static int hf_ftam_change_attribute_key = -1; /* Concurrency_Key */
250 static int hf_ftam_delete_Object_key = -1; /* Concurrency_Key */
251 static int hf_ftam_actual_values2 = -1; /* Account */
252 static int hf_ftam_document_type = -1; /* T_document_type */
253 static int hf_ftam_parameter = -1; /* T_parameter */
254 static int hf_ftam_constraint_set_and_abstract_Syntax = -1; /* T_constraint_set_and_abstract_Syntax */
255 static int hf_ftam_constraint_set_name = -1; /* Constraint_Set_Name */
256 static int hf_ftam_actual_values5 = -1; /* GeneralizedTime */
257 static int hf_ftam_actual_values8 = -1; /* T_actual_values8 */
258 static int hf_ftam_incomplete_pathname = -1; /* Pathname */
259 static int hf_ftam_complete_pathname = -1; /* Pathname */
260 static int hf_ftam_actual_values7 = -1; /* INTEGER */
261 static int hf_ftam_actual_values9 = -1; /* GraphicString */
262 static int hf_ftam_abstract_Syntax_not_supported = -1; /* NULL */
263 static int hf_ftam_actual_values4 = -1; /* EXTERNAL */
264 static int hf_ftam_actual_values6 = -1; /* User_Identity */
265 static int hf_ftam_Child_Objects_Attribute_item = -1; /* GraphicString */
266 static int hf_ftam_f_Change_prefix_request = -1; /* F_CHANGE_PREFIX_request */
267 static int hf_ftam_f_Change_prefix_response = -1; /* F_CHANGE_PREFIX_response */
268 static int hf_ftam_f_list_request = -1; /* F_LIST_request */
269 static int hf_ftam_f_list_response = -1; /* F_LIST_response */
270 static int hf_ftam_f_group_select_request = -1; /* F_GROUP_SELECT_request */
271 static int hf_ftam_f_group_select_response = -1; /* F_GROUP_SELECT_response */
272 static int hf_ftam_f_group_delete_request = -1; /* F_GROUP_DELETE_request */
273 static int hf_ftam_f_group_delete_response = -1; /* F_GROUP_DELETE_response */
274 static int hf_ftam_f_group_move_request = -1; /* F_GROUP_MOVE_request */
275 static int hf_ftam_f_group_move_response = -1; /* F_GROUP_MOVE_response */
276 static int hf_ftam_f_group_copy_request = -1; /* F_GROUP_COPY_request */
277 static int hf_ftam_f_group_copy_response = -1; /* F_GROUP_COPY_response */
278 static int hf_ftam_f_group_list_request = -1; /* F_GROUP_LIST_request */
279 static int hf_ftam_f_group_list_response = -1; /* F_GROUP_LIST_response */
280 static int hf_ftam_f_group_Change_attrib_request = -1; /* F_GROUP_CHANGE_ATTRIB_request */
281 static int hf_ftam_f_group_Change_attrib_response = -1; /* F_GROUP_CHANGE_ATTRIB_response */
282 static int hf_ftam_f_select_another_request = -1; /* F_SELECT_ANOTHER_request */
283 static int hf_ftam_f_select_another_response = -1; /* F_SELECT_ANOTHER_response */
284 static int hf_ftam_f_create_directory_request = -1; /* F_CREATE_DIRECTORY_request */
285 static int hf_ftam_f_create_directory_response = -1; /* F_CREATE_DIRECTORY_response */
286 static int hf_ftam_f_link_request = -1; /* F_LINK_request */
287 static int hf_ftam_f_link_response = -1; /* F_LINK_response */
288 static int hf_ftam_f_unlink_request = -1; /* F_UNLINK_request */
289 static int hf_ftam_f_unlink_response = -1; /* F_UNLINK_response */
290 static int hf_ftam_f_read_link_attrib_request = -1; /* F_READ_LINK_ATTRIB_request */
291 static int hf_ftam_f_read_link_attrib_response = -1; /* F_READ_LINK_ATTRIB_response */
292 static int hf_ftam_f_Change_link_attrib_request = -1; /* F_CHANGE_LINK_ATTRIB_request */
293 static int hf_ftam_f_Change_Iink_attrib_response = -1; /* F_CHANGE_LINK_ATTRIB_response */
294 static int hf_ftam_f_move_request = -1; /* F_MOVE_request */
295 static int hf_ftam_f_move_response = -1; /* F_MOVE_response */
296 static int hf_ftam_f_copy_request = -1; /* F_COPY_request */
297 static int hf_ftam_f_copy_response = -1; /* F_COPY_response */
298 static int hf_ftam_reset = -1; /* BOOLEAN */
299 static int hf_ftam_destination_file_directory = -1; /* Destination_File_Directory */
300 static int hf_ftam_attribute_value_asset_tions = -1; /* Attribute_Value_Assertions */
301 static int hf_ftam_scope = -1; /* Scope */
302 static int hf_ftam_objects_attributes_list = -1; /* Objects_Attributes_List */
303 static int hf_ftam_attribute_value_assertions = -1; /* Attribute_Value_Assertions */
304 static int hf_ftam_maximum_set_size = -1; /* INTEGER */
305 static int hf_ftam_request_Operation_result = -1; /* Request_Operation_Result */
306 static int hf_ftam_operation_result = -1; /* Operation_Result */
307 static int hf_ftam_error_action = -1; /* Error_Action */
308 static int hf_ftam_last_member_indicator = -1; /* BOOLEAN */
309 static int hf_ftam_shared_ASE_infonnation = -1; /* Shared_ASE_Information */
310 static int hf_ftam_target_object = -1; /* Pathname_Attribute */
311 static int hf_ftam_target_Object = -1; /* Pathname_Attribute */
312 static int hf_ftam_read_link_attributes = -1; /* Read_Attributes */
313 static int hf_ftam_Attribute_Extension_Names_item = -1; /* Attribute_Extension_Set_Name */
314 static int hf_ftam_extension_set_identifier = -1; /* Extension_Set_Identifier */
315 static int hf_ftam_extension_attribute_names = -1; /* SEQUENCE_OF_Extension_Attribute_identifier */
316 static int hf_ftam_extension_attribute_names_item = -1; /* Extension_Attribute_identifier */
317 static int hf_ftam_Attribute_Extensions_item = -1; /* Attribute_Extension_Set */
318 static int hf_ftam_extension_set_attributes = -1; /* SEQUENCE_OF_Extension_Attribute */
319 static int hf_ftam_extension_set_attributes_item = -1; /* Extension_Attribute */
320 static int hf_ftam_extension_attribute_identifier = -1; /* T_extension_attribute_identifier */
321 static int hf_ftam_extension_attribute = -1; /* T_extension_attribute */
322 static int hf_ftam__untag_item_03 = -1; /* T__untag_item */
323 static int hf_ftam_root_directory = -1; /* Pathname_Attribute */
324 static int hf_ftam_retrieval_scope = -1; /* T_retrieval_scope */
325 static int hf_ftam_OR_Set_item = -1; /* AND_Set */
326 static int hf_ftam_AND_Set_item = -1; /* AND_Set_item */
327 static int hf_ftam_pathname_Pattern = -1; /* Pathname_Pattern */
328 static int hf_ftam_object_type_Pattern = -1; /* Integer_Pattern */
329 static int hf_ftam_permitted_actions_Pattern = -1; /* Bitstring_Pattern */
330 static int hf_ftam_contents_type_Pattern = -1; /* Contents_Type_Pattern */
331 static int hf_ftam_linked_Object_Pattern = -1; /* Pathname_Pattern */
332 static int hf_ftam_child_objects_Pattern = -1; /* Pathname_Pattern */
333 static int hf_ftam_primaty_pathname_Pattern = -1; /* Pathname_Pattern */
334 static int hf_ftam_storage_account_Pattern = -1; /* String_Pattern */
335 static int hf_ftam_date_and_time_of_creation_Pattern = -1; /* Date_and_Time_Pattern */
336 static int hf_ftam_date_and_time_of_last_modification_Pattern = -1; /* Date_and_Time_Pattern */
337 static int hf_ftam_date_and_time_of_last_read_access_Pattern = -1; /* Date_and_Time_Pattern */
338 static int hf_ftam_date_and_time_of_last_attribute_modification_Pattern = -1; /* Date_and_Time_Pattern */
339 static int hf_ftam_identity_of_creator_Pattern = -1; /* User_Identity_Pattern */
340 static int hf_ftam_identity_of_last_modifier_Pattern = -1; /* User_Identity_Pattern */
341 static int hf_ftam_identity_of_last_reader_Pattern = -1; /* User_Identity_Pattern */
342 static int hf_ftam_identity_of_last_attribute_modifier_Pattern = -1; /* User_Identity_Pattern */
343 static int hf_ftam_object_availabiiity_Pattern = -1; /* Boolean_Pattern */
344 static int hf_ftam_object_size_Pattern = -1; /* Integer_Pattern */
345 static int hf_ftam_future_object_size_Pattern = -1; /* Integer_Pattern */
346 static int hf_ftam_legal_quailfication_Pattern = -1; /* String_Pattern */
347 static int hf_ftam_attribute_extensions_pattern = -1; /* Attribute_Extensions_Pattern */
348 static int hf_ftam_equality_comparision = -1; /* Equality_Comparision */
349 static int hf_ftam_pathname_value = -1; /* T_pathname_value */
350 static int hf_ftam_pathname_value_item = -1; /* T_pathname_value_item */
351 static int hf_ftam_string_match = -1; /* String_Pattern */
352 static int hf_ftam_any_match = -1; /* NULL */
353 static int hf_ftam_string_value = -1; /* T_string_value */
354 static int hf_ftam_string_value_item = -1; /* T_string_value_item */
355 static int hf_ftam_substring_match = -1; /* GraphicString */
356 static int hf_ftam_number_of_characters_match = -1; /* INTEGER */
357 static int hf_ftam_match_bitstring = -1; /* BIT_STRING */
358 static int hf_ftam_significance_bitstring = -1; /* BIT_STRING */
359 static int hf_ftam_relational_camparision = -1; /* Equality_Comparision */
360 static int hf_ftam_time_and_date_value = -1; /* GeneralizedTime */
361 static int hf_ftam_relational_comparision = -1; /* Relational_Comparision */
362 static int hf_ftam_integer_value = -1; /* INTEGER */
363 static int hf_ftam_object_identifier_value = -1; /* OBJECT_IDENTIFIER */
364 static int hf_ftam_boolean_value = -1; /* BOOLEAN */
365 static int hf_ftam_document_type_Pattern = -1; /* Object_Identifier_Pattern */
366 static int hf_ftam_constraint_set_abstract_Syntax_Pattern = -1; /* T_constraint_set_abstract_Syntax_Pattern */
367 static int hf_ftam_constraint_Set_Pattern = -1; /* Object_Identifier_Pattern */
368 static int hf_ftam_abstract_Syntax_Pattern = -1; /* Object_Identifier_Pattern */
369 static int hf_ftam_Attribute_Extensions_Pattern_item = -1; /* Attribute_Extensions_Pattern_item */
370 static int hf_ftam_extension_set_attribute_Patterns = -1; /* T_extension_set_attribute_Patterns */
371 static int hf_ftam_extension_set_attribute_Patterns_item = -1; /* T_extension_set_attribute_Patterns_item */
372 static int hf_ftam_attribute_extension_attribute_identifier = -1; /* T_attribute_extension_attribute_identifier */
373 static int hf_ftam_extension_attribute_Pattern = -1; /* T_extension_attribute_Pattern */
374 static int hf_ftam__untag_item_04 = -1; /* Read_Attributes */
375 static int hf_ftam_success_Object_count = -1; /* INTEGER */
376 static int hf_ftam_success_Object_names = -1; /* SEQUENCE_OF_Pathname */
377 static int hf_ftam_success_Object_names_item = -1; /* Pathname */
378 static int hf_ftam_Pathname_item = -1; /* GraphicString */
379 static int hf_ftam_Pass_Passwords_item = -1; /* Password */
380 static int hf_ftam__untag_item_05 = -1; /* Path_Access_Passwords_item */
381 static int hf_ftam_ap = -1; /* AP_title */
382 static int hf_ftam_ae = -1; /* AE_qualifier */
383 /* named bits */
384 static int hf_ftam_Protocol_Version_U_version_1 = -1;
385 static int hf_ftam_Protocol_Version_U_version_2 = -1;
386 static int hf_ftam_Service_Class_U_unconstrained_class = -1;
387 static int hf_ftam_Service_Class_U_management_class = -1;
388 static int hf_ftam_Service_Class_U_transfer_class = -1;
389 static int hf_ftam_Service_Class_U_transfer_and_management_class = -1;
390 static int hf_ftam_Service_Class_U_access_class = -1;
391 static int hf_ftam_Functional_Units_U_spare_bit0 = -1;
392 static int hf_ftam_Functional_Units_U_spare_bit1 = -1;
393 static int hf_ftam_Functional_Units_U_read = -1;
394 static int hf_ftam_Functional_Units_U_write = -1;
395 static int hf_ftam_Functional_Units_U_file_access = -1;
396 static int hf_ftam_Functional_Units_U_limited_file_management = -1;
397 static int hf_ftam_Functional_Units_U_enhanced_file_management = -1;
398 static int hf_ftam_Functional_Units_U_grouping = -1;
399 static int hf_ftam_Functional_Units_U_fadu_locking = -1;
400 static int hf_ftam_Functional_Units_U_recovery = -1;
401 static int hf_ftam_Functional_Units_U_restart_data_transfer = -1;
402 static int hf_ftam_Functional_Units_U_limited_filestore_management = -1;
403 static int hf_ftam_Functional_Units_U_enhanced_filestore_management = -1;
404 static int hf_ftam_Functional_Units_U_object_manipulation = -1;
405 static int hf_ftam_Functional_Units_U_group_manipulation = -1;
406 static int hf_ftam_Functional_Units_U_consecutive_access = -1;
407 static int hf_ftam_Functional_Units_U_concurrent_access = -1;
408 static int hf_ftam_Attribute_Groups_U_storage = -1;
409 static int hf_ftam_Attribute_Groups_U_security = -1;
410 static int hf_ftam_Attribute_Groups_U_private = -1;
411 static int hf_ftam_Attribute_Groups_U_extension = -1;
412 static int hf_ftam_T_processing_mode_f_read = -1;
413 static int hf_ftam_T_processing_mode_f_insert = -1;
414 static int hf_ftam_T_processing_mode_f_replace = -1;
415 static int hf_ftam_T_processing_mode_f_extend = -1;
416 static int hf_ftam_T_processing_mode_f_erase = -1;
417 static int hf_ftam_Access_Request_U_read = -1;
418 static int hf_ftam_Access_Request_U_insert = -1;
419 static int hf_ftam_Access_Request_U_replace = -1;
420 static int hf_ftam_Access_Request_U_extend = -1;
421 static int hf_ftam_Access_Request_U_erase = -1;
422 static int hf_ftam_Access_Request_U_read_attribute = -1;
423 static int hf_ftam_Access_Request_U_change_attribute = -1;
424 static int hf_ftam_Access_Request_U_delete_Object = -1;
425 static int hf_ftam_Concurrency_Key_not_required = -1;
426 static int hf_ftam_Concurrency_Key_shared = -1;
427 static int hf_ftam_Concurrency_Key_exclusive = -1;
428 static int hf_ftam_Concurrency_Key_no_access = -1;
429 static int hf_ftam_Permitted_Actions_Attribute_read = -1;
430 static int hf_ftam_Permitted_Actions_Attribute_insert = -1;
431 static int hf_ftam_Permitted_Actions_Attribute_replace = -1;
432 static int hf_ftam_Permitted_Actions_Attribute_extend = -1;
433 static int hf_ftam_Permitted_Actions_Attribute_erase = -1;
434 static int hf_ftam_Permitted_Actions_Attribute_read_attribute = -1;
435 static int hf_ftam_Permitted_Actions_Attribute_change_attribute = -1;
436 static int hf_ftam_Permitted_Actions_Attribute_delete_Object = -1;
437 static int hf_ftam_Permitted_Actions_Attribute_traversal = -1;
438 static int hf_ftam_Permitted_Actions_Attribute_reverse_traversal = -1;
439 static int hf_ftam_Permitted_Actions_Attribute_random_Order = -1;
440 static int hf_ftam_Permitted_Actions_Attribute_pass = -1;
441 static int hf_ftam_Permitted_Actions_Attribute_link = -1;
442 static int hf_ftam_Equality_Comparision_no_value_available_matches = -1;
443 static int hf_ftam_Equality_Comparision_equals_matches = -1;
444 static int hf_ftam_Relational_Comparision_no_value_available_matches = -1;
445 static int hf_ftam_Relational_Comparision_equals_matches = -1;
446 static int hf_ftam_Relational_Comparision_less_than_matches = -1;
447 static int hf_ftam_Relational_Comparision_greater_than_matches = -1;
448 static int hf_ftam_Attribute_Names_read_pathname = -1;
449 static int hf_ftam_Attribute_Names_read_permitted_actions = -1;
450 static int hf_ftam_Attribute_Names_read_contents_type = -1;
451 static int hf_ftam_Attribute_Names_read_storage_account = -1;
452 static int hf_ftam_Attribute_Names_read_date_and_time_of_creation = -1;
453 static int hf_ftam_Attribute_Names_read_date_and_time_of_last_modification = -1;
454 static int hf_ftam_Attribute_Names_read_date_and_time_of_last_read_access = -1;
455 static int hf_ftam_Attribute_Names_read_date_and_time_of_last_attribute_modification = -1;
456 static int hf_ftam_Attribute_Names_read_identity_of_creator = -1;
457 static int hf_ftam_Attribute_Names_read_identity_of_last_modifier = -1;
458 static int hf_ftam_Attribute_Names_read_identity_of_last_reader = -1;
459 static int hf_ftam_Attribute_Names_read_identity_of_last_attribute_modifier = -1;
460 static int hf_ftam_Attribute_Names_read_Object_availability = -1;
461 static int hf_ftam_Attribute_Names_read_Object_size = -1;
462 static int hf_ftam_Attribute_Names_read_future_Object_size = -1;
463 static int hf_ftam_Attribute_Names_read_access_control = -1;
464 static int hf_ftam_Attribute_Names_read_l8gal_qualifiCatiOnS = -1;
465 static int hf_ftam_Attribute_Names_read_private_use = -1;
466 static int hf_ftam_Attribute_Names_read_Object_type = -1;
467 static int hf_ftam_Attribute_Names_read_linked_Object = -1;
468 static int hf_ftam_Attribute_Names_read_primary_pathname = -1;
469 static int hf_ftam_Attribute_Names_read_path_access_control = -1;
470 static int hf_ftam_Attribute_Names_spare_bit22 = -1;
471 static int hf_ftam_Attribute_Names_read_Child_objects = -1;
472
473 /*--- End of included file: packet-ftam-hf.c ---*/
474 #line 44 "./asn1/ftam/packet-ftam-template.c"
475
476 /* Initialize the subtree pointers */
477 static gint ett_ftam = -1;
478
479 /*--- Included file: packet-ftam-ett.c ---*/
480 #line 1 "./asn1/ftam/packet-ftam-ett.c"
481 static gint ett_ftam_PDU = -1;
482 static gint ett_ftam_FTAM_Regime_PDU = -1;
483 static gint ett_ftam_F_INITIALIZE_request = -1;
484 static gint ett_ftam_F_INITIALIZE_response = -1;
485 static gint ett_ftam_Protocol_Version_U = -1;
486 static gint ett_ftam_Service_Class_U = -1;
487 static gint ett_ftam_Functional_Units_U = -1;
488 static gint ett_ftam_Attribute_Groups_U = -1;
489 static gint ett_ftam_Contents_Type_List_U = -1;
490 static gint ett_ftam_Contents_Type_List_item = -1;
491 static gint ett_ftam_F_TERMINATE_request = -1;
492 static gint ett_ftam_F_TERMINATE_response = -1;
493 static gint ett_ftam_F_U_ABORT_request = -1;
494 static gint ett_ftam_F_P_ABORT_request = -1;
495 static gint ett_ftam_File_PDU = -1;
496 static gint ett_ftam_F_SELECT_request = -1;
497 static gint ett_ftam_F_SELECT_response = -1;
498 static gint ett_ftam_F_DESELECT_request = -1;
499 static gint ett_ftam_F_DESELECT_response = -1;
500 static gint ett_ftam_F_CREATE_request = -1;
501 static gint ett_ftam_F_CREATE_response = -1;
502 static gint ett_ftam_F_DELETE_request = -1;
503 static gint ett_ftam_F_DELETE_response = -1;
504 static gint ett_ftam_F_READ_ATTRIB_request = -1;
505 static gint ett_ftam_F_READ_ATTRIB_response = -1;
506 static gint ett_ftam_F_CHANGE_ATTRIB_request = -1;
507 static gint ett_ftam_F_CHANGE_ATTRIB_response = -1;
508 static gint ett_ftam_F_OPEN_request = -1;
509 static gint ett_ftam_T_processing_mode = -1;
510 static gint ett_ftam_T_open_contents_type = -1;
511 static gint ett_ftam_SET_OF_Abstract_Syntax_Name = -1;
512 static gint ett_ftam_F_OPEN_response = -1;
513 static gint ett_ftam_F_CLOSE_request = -1;
514 static gint ett_ftam_F_CLOSE_response = -1;
515 static gint ett_ftam_F_BEGIN_GROUP_request = -1;
516 static gint ett_ftam_F_BEGIN_GROUP_response = -1;
517 static gint ett_ftam_F_END_GROUP_request = -1;
518 static gint ett_ftam_F_END_GROUP_response = -1;
519 static gint ett_ftam_F_RECOVER_request = -1;
520 static gint ett_ftam_F_RECOVER_response = -1;
521 static gint ett_ftam_F_LOCATE_request = -1;
522 static gint ett_ftam_F_LOCATE_response = -1;
523 static gint ett_ftam_F_ERASE_request = -1;
524 static gint ett_ftam_F_ERASE_response = -1;
525 static gint ett_ftam_Bulk_Data_PDU = -1;
526 static gint ett_ftam_F_READ_request = -1;
527 static gint ett_ftam_F_WRITE_request = -1;
528 static gint ett_ftam_F_DATA_END_request = -1;
529 static gint ett_ftam_F_TRANSFER_END_request = -1;
530 static gint ett_ftam_F_TRANSFER_END_response = -1;
531 static gint ett_ftam_F_CANCEL_request = -1;
532 static gint ett_ftam_F_CANCEL_response = -1;
533 static gint ett_ftam_F_RESTART_request = -1;
534 static gint ett_ftam_F_RESTART_response = -1;
535 static gint ett_ftam_Access_Context_U = -1;
536 static gint ett_ftam_Access_Passwords_U = -1;
537 static gint ett_ftam_Access_Request_U = -1;
538 static gint ett_ftam_Change_Attributes_U = -1;
539 static gint ett_ftam_Charging_U = -1;
540 static gint ett_ftam_Charging_item = -1;
541 static gint ett_ftam_Concurrency_Control_U = -1;
542 static gint ett_ftam_Create_Attributes_U = -1;
543 static gint ett_ftam_Diagnostic_U = -1;
544 static gint ett_ftam_Diagnostic_item = -1;
545 static gint ett_ftam_FADU_Identity_U = -1;
546 static gint ett_ftam_SEQUENCE_OF_Node_Name = -1;
547 static gint ett_ftam_Password_U = -1;
548 static gint ett_ftam_Read_Attributes_U = -1;
549 static gint ett_ftam_Select_Attributes_U = -1;
550 static gint ett_ftam_Access_Control_Attribute = -1;
551 static gint ett_ftam_SET_OF_Access_Control_Element = -1;
552 static gint ett_ftam_Access_Control_Change_Attribute = -1;
553 static gint ett_ftam_T_actual_values1 = -1;
554 static gint ett_ftam_Access_Control_Element = -1;
555 static gint ett_ftam_Concurrency_Access = -1;
556 static gint ett_ftam_Concurrency_Key = -1;
557 static gint ett_ftam_Account_Attribute = -1;
558 static gint ett_ftam_Contents_Type_Attribute = -1;
559 static gint ett_ftam_T_document_type = -1;
560 static gint ett_ftam_T_constraint_set_and_abstract_Syntax = -1;
561 static gint ett_ftam_Date_and_Time_Attribute = -1;
562 static gint ett_ftam_Object_Availability_Attribute = -1;
563 static gint ett_ftam_Pathname_Attribute = -1;
564 static gint ett_ftam_Object_Size_Attribute = -1;
565 static gint ett_ftam_Legal_Qualification_Attribute = -1;
566 static gint ett_ftam_Permitted_Actions_Attribute = -1;
567 static gint ett_ftam_Private_Use_Attribute = -1;
568 static gint ett_ftam_User_Identity_Attribute = -1;
569 static gint ett_ftam_Child_Objects_Attribute = -1;
570 static gint ett_ftam_FSM_PDU = -1;
571 static gint ett_ftam_F_CHANGE_PREFIX_request = -1;
572 static gint ett_ftam_F_CHANGE_PREFIX_response = -1;
573 static gint ett_ftam_F_LIST_request = -1;
574 static gint ett_ftam_F_LIST_response = -1;
575 static gint ett_ftam_F_GROUP_SELECT_request = -1;
576 static gint ett_ftam_F_GROUP_SELECT_response = -1;
577 static gint ett_ftam_F_GROUP_DELETE_request = -1;
578 static gint ett_ftam_F_GROUP_DELETE_response = -1;
579 static gint ett_ftam_F_GROUP_MOVE_request = -1;
580 static gint ett_ftam_F_GROUP_MOVE_response = -1;
581 static gint ett_ftam_F_GROUP_COPY_request = -1;
582 static gint ett_ftam_F_GROUP_COPY_response = -1;
583 static gint ett_ftam_F_GROUP_LIST_request = -1;
584 static gint ett_ftam_F_GROUP_LIST_response = -1;
585 static gint ett_ftam_F_GROUP_CHANGE_ATTRIB_request = -1;
586 static gint ett_ftam_F_GROUP_CHANGE_ATTRIB_response = -1;
587 static gint ett_ftam_F_SELECT_ANOTHER_request = -1;
588 static gint ett_ftam_F_SELECT_ANOTHER_response = -1;
589 static gint ett_ftam_F_CREATE_DIRECTORY_request = -1;
590 static gint ett_ftam_F_CREATE_DIRECTORY_response = -1;
591 static gint ett_ftam_F_LINK_request = -1;
592 static gint ett_ftam_F_LINK_response = -1;
593 static gint ett_ftam_F_UNLINK_request = -1;
594 static gint ett_ftam_F_UNLINK_response = -1;
595 static gint ett_ftam_F_READ_LINK_ATTRIB_request = -1;
596 static gint ett_ftam_F_READ_LINK_ATTRIB_response = -1;
597 static gint ett_ftam_F_CHANGE_LINK_ATTRIB_request = -1;
598 static gint ett_ftam_F_CHANGE_LINK_ATTRIB_response = -1;
599 static gint ett_ftam_F_MOVE_request = -1;
600 static gint ett_ftam_F_MOVE_response = -1;
601 static gint ett_ftam_F_COPY_request = -1;
602 static gint ett_ftam_F_COPY_response = -1;
603 static gint ett_ftam_Attribute_Extension_Names = -1;
604 static gint ett_ftam_Attribute_Extension_Set_Name = -1;
605 static gint ett_ftam_SEQUENCE_OF_Extension_Attribute_identifier = -1;
606 static gint ett_ftam_Attribute_Extensions = -1;
607 static gint ett_ftam_Attribute_Extension_Set = -1;
608 static gint ett_ftam_SEQUENCE_OF_Extension_Attribute = -1;
609 static gint ett_ftam_Extension_Attribute = -1;
610 static gint ett_ftam_Scope_U = -1;
611 static gint ett_ftam_T__untag_item = -1;
612 static gint ett_ftam_OR_Set = -1;
613 static gint ett_ftam_AND_Set = -1;
614 static gint ett_ftam_AND_Set_item = -1;
615 static gint ett_ftam_Equality_Comparision = -1;
616 static gint ett_ftam_Relational_Comparision = -1;
617 static gint ett_ftam_Pathname_Pattern = -1;
618 static gint ett_ftam_T_pathname_value = -1;
619 static gint ett_ftam_T_pathname_value_item = -1;
620 static gint ett_ftam_String_Pattern = -1;
621 static gint ett_ftam_T_string_value = -1;
622 static gint ett_ftam_T_string_value_item = -1;
623 static gint ett_ftam_Bitstring_Pattern = -1;
624 static gint ett_ftam_Date_and_Time_Pattern = -1;
625 static gint ett_ftam_Integer_Pattern = -1;
626 static gint ett_ftam_Object_Identifier_Pattern = -1;
627 static gint ett_ftam_Boolean_Pattern = -1;
628 static gint ett_ftam_Contents_Type_Pattern = -1;
629 static gint ett_ftam_T_constraint_set_abstract_Syntax_Pattern = -1;
630 static gint ett_ftam_Attribute_Extensions_Pattern = -1;
631 static gint ett_ftam_Attribute_Extensions_Pattern_item = -1;
632 static gint ett_ftam_T_extension_set_attribute_Patterns = -1;
633 static gint ett_ftam_T_extension_set_attribute_Patterns_item = -1;
634 static gint ett_ftam_SEQUENCE_OF_Read_Attributes = -1;
635 static gint ett_ftam_Operation_Result_U = -1;
636 static gint ett_ftam_SEQUENCE_OF_Pathname = -1;
637 static gint ett_ftam_Pathname = -1;
638 static gint ett_ftam_Pass_Passwords = -1;
639 static gint ett_ftam_Path_Access_Passwords_U = -1;
640 static gint ett_ftam_Path_Access_Passwords_item = -1;
641 static gint ett_ftam_Attribute_Names = -1;
642 static gint ett_ftam_AE_title = -1;
643
644 /*--- End of included file: packet-ftam-ett.c ---*/
645 #line 48 "./asn1/ftam/packet-ftam-template.c"
646
647 static expert_field ei_ftam_zero_pdu = EI_INIT;
648
649
650 /*--- Included file: packet-ftam-fn.c ---*/
651 #line 1 "./asn1/ftam/packet-ftam-fn.c"
652
653 static int * const Protocol_Version_U_bits[] = {
654 &hf_ftam_Protocol_Version_U_version_1,
655 &hf_ftam_Protocol_Version_U_version_2,
656 NULL
657 };
658
659 static int
dissect_ftam_Protocol_Version_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)660 dissect_ftam_Protocol_Version_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
661 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
662 Protocol_Version_U_bits, 2, hf_index, ett_ftam_Protocol_Version_U,
663 NULL);
664
665 return offset;
666 }
667
668
669
670 static int
dissect_ftam_Protocol_Version(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)671 dissect_ftam_Protocol_Version(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
672 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
673 hf_index, BER_CLASS_CON, 0, TRUE, dissect_ftam_Protocol_Version_U);
674
675 return offset;
676 }
677
678
679
680 static int
dissect_ftam_GraphicString(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)681 dissect_ftam_GraphicString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
682 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GraphicString,
683 actx, tree, tvb, offset, hf_index,
684 NULL);
685
686 return offset;
687 }
688
689
690
691 static int
dissect_ftam_Implementation_Information(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)692 dissect_ftam_Implementation_Information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
693 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
694 hf_index, BER_CLASS_CON, 1, TRUE, dissect_ftam_GraphicString);
695
696 return offset;
697 }
698
699
700
701 static int
dissect_ftam_BOOLEAN(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)702 dissect_ftam_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
703 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
704
705 return offset;
706 }
707
708
709 static int * const Service_Class_U_bits[] = {
710 &hf_ftam_Service_Class_U_unconstrained_class,
711 &hf_ftam_Service_Class_U_management_class,
712 &hf_ftam_Service_Class_U_transfer_class,
713 &hf_ftam_Service_Class_U_transfer_and_management_class,
714 &hf_ftam_Service_Class_U_access_class,
715 NULL
716 };
717
718 static int
dissect_ftam_Service_Class_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)719 dissect_ftam_Service_Class_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
720 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
721 Service_Class_U_bits, 5, hf_index, ett_ftam_Service_Class_U,
722 NULL);
723
724 return offset;
725 }
726
727
728
729 static int
dissect_ftam_Service_Class(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)730 dissect_ftam_Service_Class(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
731 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
732 hf_index, BER_CLASS_CON, 3, TRUE, dissect_ftam_Service_Class_U);
733
734 return offset;
735 }
736
737
738 static int * const Functional_Units_U_bits[] = {
739 &hf_ftam_Functional_Units_U_spare_bit0,
740 &hf_ftam_Functional_Units_U_spare_bit1,
741 &hf_ftam_Functional_Units_U_read,
742 &hf_ftam_Functional_Units_U_write,
743 &hf_ftam_Functional_Units_U_file_access,
744 &hf_ftam_Functional_Units_U_limited_file_management,
745 &hf_ftam_Functional_Units_U_enhanced_file_management,
746 &hf_ftam_Functional_Units_U_grouping,
747 &hf_ftam_Functional_Units_U_fadu_locking,
748 &hf_ftam_Functional_Units_U_recovery,
749 &hf_ftam_Functional_Units_U_restart_data_transfer,
750 &hf_ftam_Functional_Units_U_limited_filestore_management,
751 &hf_ftam_Functional_Units_U_enhanced_filestore_management,
752 &hf_ftam_Functional_Units_U_object_manipulation,
753 &hf_ftam_Functional_Units_U_group_manipulation,
754 &hf_ftam_Functional_Units_U_consecutive_access,
755 &hf_ftam_Functional_Units_U_concurrent_access,
756 NULL
757 };
758
759 static int
dissect_ftam_Functional_Units_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)760 dissect_ftam_Functional_Units_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
761 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
762 Functional_Units_U_bits, 17, hf_index, ett_ftam_Functional_Units_U,
763 NULL);
764
765 return offset;
766 }
767
768
769
770 static int
dissect_ftam_Functional_Units(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)771 dissect_ftam_Functional_Units(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
772 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
773 hf_index, BER_CLASS_CON, 4, TRUE, dissect_ftam_Functional_Units_U);
774
775 return offset;
776 }
777
778
779 static int * const Attribute_Groups_U_bits[] = {
780 &hf_ftam_Attribute_Groups_U_storage,
781 &hf_ftam_Attribute_Groups_U_security,
782 &hf_ftam_Attribute_Groups_U_private,
783 &hf_ftam_Attribute_Groups_U_extension,
784 NULL
785 };
786
787 static int
dissect_ftam_Attribute_Groups_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)788 dissect_ftam_Attribute_Groups_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
789 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
790 Attribute_Groups_U_bits, 4, hf_index, ett_ftam_Attribute_Groups_U,
791 NULL);
792
793 return offset;
794 }
795
796
797
798 static int
dissect_ftam_Attribute_Groups(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)799 dissect_ftam_Attribute_Groups(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
800 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
801 hf_index, BER_CLASS_CON, 5, TRUE, dissect_ftam_Attribute_Groups_U);
802
803 return offset;
804 }
805
806
807
808 static int
dissect_ftam_EXTERNAL(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)809 dissect_ftam_EXTERNAL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
810 offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
811
812 return offset;
813 }
814
815
816
817 static int
dissect_ftam_Shared_ASE_Information(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)818 dissect_ftam_Shared_ASE_Information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
819 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
820 hf_index, BER_CLASS_APP, 20, TRUE, dissect_ftam_EXTERNAL);
821
822 return offset;
823 }
824
825
826 static const value_string ftam_FTAM_Quality_of_Service_U_vals[] = {
827 { 0, "no-recovery" },
828 { 1, "class-1-recovery" },
829 { 2, "class-2-recovery" },
830 { 3, "class-3-recovery" },
831 { 0, NULL }
832 };
833
834
835 static int
dissect_ftam_FTAM_Quality_of_Service_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)836 dissect_ftam_FTAM_Quality_of_Service_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
837 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
838 NULL);
839
840 return offset;
841 }
842
843
844
845 static int
dissect_ftam_FTAM_Quality_of_Service(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)846 dissect_ftam_FTAM_Quality_of_Service(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
847 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
848 hf_index, BER_CLASS_CON, 6, TRUE, dissect_ftam_FTAM_Quality_of_Service_U);
849
850 return offset;
851 }
852
853
854
855 static int
dissect_ftam_OBJECT_IDENTIFIER(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)856 dissect_ftam_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
857 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &actx->external.direct_reference);
858
859 return offset;
860 }
861
862
863
864 static int
dissect_ftam_Document_Type_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)865 dissect_ftam_Document_Type_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
866 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
867 hf_index, BER_CLASS_APP, 14, TRUE, dissect_ftam_OBJECT_IDENTIFIER);
868
869 return offset;
870 }
871
872
873
874 static int
dissect_ftam_Abstract_Syntax_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)875 dissect_ftam_Abstract_Syntax_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
876 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
877 hf_index, BER_CLASS_APP, 0, TRUE, dissect_ftam_OBJECT_IDENTIFIER);
878
879 return offset;
880 }
881
882
883 static const value_string ftam_Contents_Type_List_item_vals[] = {
884 { 14, "document-type-name" },
885 { 0, "abstract-Syntax-name" },
886 { 0, NULL }
887 };
888
889 static const ber_choice_t Contents_Type_List_item_choice[] = {
890 { 14, &hf_ftam_document_type_name, BER_CLASS_APP, 14, BER_FLAGS_NOOWNTAG, dissect_ftam_Document_Type_Name },
891 { 0, &hf_ftam_abstract_Syntax_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_Abstract_Syntax_Name },
892 { 0, NULL, 0, 0, 0, NULL }
893 };
894
895 static int
dissect_ftam_Contents_Type_List_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)896 dissect_ftam_Contents_Type_List_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
897 offset = dissect_ber_choice(actx, tree, tvb, offset,
898 Contents_Type_List_item_choice, hf_index, ett_ftam_Contents_Type_List_item,
899 NULL);
900
901 return offset;
902 }
903
904
905 static const ber_sequence_t Contents_Type_List_U_sequence_of[1] = {
906 { &hf_ftam__untag_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Contents_Type_List_item },
907 };
908
909 static int
dissect_ftam_Contents_Type_List_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)910 dissect_ftam_Contents_Type_List_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
911 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
912 Contents_Type_List_U_sequence_of, hf_index, ett_ftam_Contents_Type_List_U);
913
914 return offset;
915 }
916
917
918
919 static int
dissect_ftam_Contents_Type_List(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)920 dissect_ftam_Contents_Type_List(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
921 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
922 hf_index, BER_CLASS_CON, 7, TRUE, dissect_ftam_Contents_Type_List_U);
923
924 return offset;
925 }
926
927
928
929 static int
dissect_ftam_User_Identity(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)930 dissect_ftam_User_Identity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
931 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
932 hf_index, BER_CLASS_APP, 22, TRUE, dissect_ftam_GraphicString);
933
934 return offset;
935 }
936
937
938
939 static int
dissect_ftam_Account(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)940 dissect_ftam_Account(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
941 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
942 hf_index, BER_CLASS_APP, 4, TRUE, dissect_ftam_GraphicString);
943
944 return offset;
945 }
946
947
948
949 static int
dissect_ftam_OCTET_STRING(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)950 dissect_ftam_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
951 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
952 NULL);
953
954 return offset;
955 }
956
957
958 static const value_string ftam_Password_U_vals[] = {
959 { 0, "graphicString" },
960 { 1, "octetString" },
961 { 0, NULL }
962 };
963
964 static const ber_choice_t Password_U_choice[] = {
965 { 0, &hf_ftam_graphicString , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_ftam_GraphicString },
966 { 1, &hf_ftam_octetString , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ftam_OCTET_STRING },
967 { 0, NULL, 0, 0, 0, NULL }
968 };
969
970 static int
dissect_ftam_Password_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)971 dissect_ftam_Password_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
972 offset = dissect_ber_choice(actx, tree, tvb, offset,
973 Password_U_choice, hf_index, ett_ftam_Password_U,
974 NULL);
975
976 return offset;
977 }
978
979
980
981 static int
dissect_ftam_Password(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)982 dissect_ftam_Password(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
983 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
984 hf_index, BER_CLASS_APP, 17, FALSE, dissect_ftam_Password_U);
985
986 return offset;
987 }
988
989
990
991 static int
dissect_ftam_INTEGER(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)992 dissect_ftam_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
993 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
994 NULL);
995
996 return offset;
997 }
998
999
1000 static const ber_sequence_t F_INITIALIZE_request_sequence[] = {
1001 { &hf_ftam_protocol_Version, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Protocol_Version },
1002 { &hf_ftam_implementation_information, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Implementation_Information },
1003 { &hf_ftam_presentation_tontext_management, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
1004 { &hf_ftam_service_class , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Service_Class },
1005 { &hf_ftam_functional_units, BER_CLASS_CON, 4, BER_FLAGS_NOOWNTAG, dissect_ftam_Functional_Units },
1006 { &hf_ftam_attribute_groups, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Groups },
1007 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1008 { &hf_ftam_ftam_quality_of_Service, BER_CLASS_CON, 6, BER_FLAGS_NOOWNTAG, dissect_ftam_FTAM_Quality_of_Service },
1009 { &hf_ftam_contents_type_list, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Contents_Type_List },
1010 { &hf_ftam_initiator_identity, BER_CLASS_APP, 22, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_User_Identity },
1011 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
1012 { &hf_ftam_filestore_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
1013 { &hf_ftam_checkpoint_window, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1014 { NULL, 0, 0, 0, NULL }
1015 };
1016
1017 static int
dissect_ftam_F_INITIALIZE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1018 dissect_ftam_F_INITIALIZE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1019 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1020 F_INITIALIZE_request_sequence, hf_index, ett_ftam_F_INITIALIZE_request);
1021
1022 return offset;
1023 }
1024
1025
1026 static const value_string ftam_State_Result_U_vals[] = {
1027 { 0, "success" },
1028 { 1, "failure" },
1029 { 0, NULL }
1030 };
1031
1032
1033 static int
dissect_ftam_State_Result_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1034 dissect_ftam_State_Result_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1035 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1036 NULL);
1037
1038 return offset;
1039 }
1040
1041
1042
1043 static int
dissect_ftam_State_Result(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1044 dissect_ftam_State_Result(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1045 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1046 hf_index, BER_CLASS_APP, 21, TRUE, dissect_ftam_State_Result_U);
1047
1048 return offset;
1049 }
1050
1051
1052 static const value_string ftam_Action_Result_U_vals[] = {
1053 { 0, "success" },
1054 { 1, "transient-error" },
1055 { 2, "permanent-error" },
1056 { 0, NULL }
1057 };
1058
1059
1060 static int
dissect_ftam_Action_Result_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1061 dissect_ftam_Action_Result_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1062 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1063 NULL);
1064
1065 return offset;
1066 }
1067
1068
1069
1070 static int
dissect_ftam_Action_Result(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1071 dissect_ftam_Action_Result(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1072 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1073 hf_index, BER_CLASS_APP, 5, TRUE, dissect_ftam_Action_Result_U);
1074
1075 return offset;
1076 }
1077
1078
1079 static const value_string ftam_T_diagnostic_type_vals[] = {
1080 { 0, "informative" },
1081 { 1, "transient" },
1082 { 2, "permanent" },
1083 { 0, NULL }
1084 };
1085
1086
1087 static int
dissect_ftam_T_diagnostic_type(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1088 dissect_ftam_T_diagnostic_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1089 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1090 NULL);
1091
1092 return offset;
1093 }
1094
1095
1096 static const value_string ftam_Entity_Reference_vals[] = {
1097 { 0, "no-categorization-possible" },
1098 { 1, "initiating-file-service-user" },
1099 { 2, "initiating-file-protocol-machine" },
1100 { 3, "service-supporting-the-file-protocol-machine" },
1101 { 4, "responding-file-protocol-machine" },
1102 { 5, "responding-file-service-user" },
1103 { 0, NULL }
1104 };
1105
1106
1107 static int
dissect_ftam_Entity_Reference(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1108 dissect_ftam_Entity_Reference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1109 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1110 NULL);
1111
1112 return offset;
1113 }
1114
1115
1116 static const ber_sequence_t Diagnostic_item_sequence[] = {
1117 { &hf_ftam_diagnostic_type, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_T_diagnostic_type },
1118 { &hf_ftam_error_identifier, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1119 { &hf_ftam_error_observer , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_Entity_Reference },
1120 { &hf_ftam_error_Source , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_Entity_Reference },
1121 { &hf_ftam_suggested_delay, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1122 { &hf_ftam_further_details, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_GraphicString },
1123 { NULL, 0, 0, 0, NULL }
1124 };
1125
1126 static int
dissect_ftam_Diagnostic_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1127 dissect_ftam_Diagnostic_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1128 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1129 Diagnostic_item_sequence, hf_index, ett_ftam_Diagnostic_item);
1130
1131 return offset;
1132 }
1133
1134
1135 static const ber_sequence_t Diagnostic_U_sequence_of[1] = {
1136 { &hf_ftam__untag_item_02 , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic_item },
1137 };
1138
1139 static int
dissect_ftam_Diagnostic_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1140 dissect_ftam_Diagnostic_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1141 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1142 Diagnostic_U_sequence_of, hf_index, ett_ftam_Diagnostic_U);
1143
1144 return offset;
1145 }
1146
1147
1148
1149 static int
dissect_ftam_Diagnostic(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1150 dissect_ftam_Diagnostic(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1151 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1152 hf_index, BER_CLASS_APP, 13, TRUE, dissect_ftam_Diagnostic_U);
1153
1154 return offset;
1155 }
1156
1157
1158 static const ber_sequence_t F_INITIALIZE_response_sequence[] = {
1159 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
1160 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
1161 { &hf_ftam_protocol_Version, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Protocol_Version },
1162 { &hf_ftam_implementation_information, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Implementation_Information },
1163 { &hf_ftam_presentation_tontext_management, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
1164 { &hf_ftam_service_class , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Service_Class },
1165 { &hf_ftam_functional_units, BER_CLASS_CON, 4, BER_FLAGS_NOOWNTAG, dissect_ftam_Functional_Units },
1166 { &hf_ftam_attribute_groups, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Groups },
1167 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1168 { &hf_ftam_ftam_quality_of_Service, BER_CLASS_CON, 6, BER_FLAGS_NOOWNTAG, dissect_ftam_FTAM_Quality_of_Service },
1169 { &hf_ftam_contents_type_list, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Contents_Type_List },
1170 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
1171 { &hf_ftam_checkpoint_window, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1172 { NULL, 0, 0, 0, NULL }
1173 };
1174
1175 static int
dissect_ftam_F_INITIALIZE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1176 dissect_ftam_F_INITIALIZE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1177 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1178 F_INITIALIZE_response_sequence, hf_index, ett_ftam_F_INITIALIZE_response);
1179
1180 return offset;
1181 }
1182
1183
1184 static const ber_sequence_t F_TERMINATE_request_sequence[] = {
1185 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1186 { NULL, 0, 0, 0, NULL }
1187 };
1188
1189 static int
dissect_ftam_F_TERMINATE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1190 dissect_ftam_F_TERMINATE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1191 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1192 F_TERMINATE_request_sequence, hf_index, ett_ftam_F_TERMINATE_request);
1193
1194 return offset;
1195 }
1196
1197
1198 static const ber_sequence_t Charging_item_sequence[] = {
1199 { &hf_ftam_resource_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_GraphicString },
1200 { &hf_ftam_charging_unit , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_GraphicString },
1201 { &hf_ftam_charging_value , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1202 { NULL, 0, 0, 0, NULL }
1203 };
1204
1205 static int
dissect_ftam_Charging_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1206 dissect_ftam_Charging_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1207 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1208 Charging_item_sequence, hf_index, ett_ftam_Charging_item);
1209
1210 return offset;
1211 }
1212
1213
1214 static const ber_sequence_t Charging_U_sequence_of[1] = {
1215 { &hf_ftam__untag_item_01 , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Charging_item },
1216 };
1217
1218 static int
dissect_ftam_Charging_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1219 dissect_ftam_Charging_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1220 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1221 Charging_U_sequence_of, hf_index, ett_ftam_Charging_U);
1222
1223 return offset;
1224 }
1225
1226
1227
1228 static int
dissect_ftam_Charging(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1229 dissect_ftam_Charging(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1230 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1231 hf_index, BER_CLASS_APP, 9, TRUE, dissect_ftam_Charging_U);
1232
1233 return offset;
1234 }
1235
1236
1237 static const ber_sequence_t F_TERMINATE_response_sequence[] = {
1238 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1239 { &hf_ftam_charging , BER_CLASS_APP, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Charging },
1240 { NULL, 0, 0, 0, NULL }
1241 };
1242
1243 static int
dissect_ftam_F_TERMINATE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1244 dissect_ftam_F_TERMINATE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1245 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1246 F_TERMINATE_response_sequence, hf_index, ett_ftam_F_TERMINATE_response);
1247
1248 return offset;
1249 }
1250
1251
1252 static const ber_sequence_t F_U_ABORT_request_sequence[] = {
1253 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
1254 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
1255 { NULL, 0, 0, 0, NULL }
1256 };
1257
1258 static int
dissect_ftam_F_U_ABORT_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1259 dissect_ftam_F_U_ABORT_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1260 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1261 F_U_ABORT_request_sequence, hf_index, ett_ftam_F_U_ABORT_request);
1262
1263 return offset;
1264 }
1265
1266
1267 static const ber_sequence_t F_P_ABORT_request_sequence[] = {
1268 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
1269 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
1270 { NULL, 0, 0, 0, NULL }
1271 };
1272
1273 static int
dissect_ftam_F_P_ABORT_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1274 dissect_ftam_F_P_ABORT_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1275 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1276 F_P_ABORT_request_sequence, hf_index, ett_ftam_F_P_ABORT_request);
1277
1278 return offset;
1279 }
1280
1281
1282 static const value_string ftam_FTAM_Regime_PDU_vals[] = {
1283 { 0, "f-initialize-request" },
1284 { 1, "f-initialize-response" },
1285 { 2, "f-terminate-request" },
1286 { 3, "f-terminate-response" },
1287 { 4, "f-u-abort-request" },
1288 { 5, "f-p-abort-request" },
1289 { 0, NULL }
1290 };
1291
1292 static const ber_choice_t FTAM_Regime_PDU_choice[] = {
1293 { 0, &hf_ftam_f_initialize_request, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_F_INITIALIZE_request },
1294 { 1, &hf_ftam_f_initialize_response, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_F_INITIALIZE_response },
1295 { 2, &hf_ftam_f_terminate_request, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_F_TERMINATE_request },
1296 { 3, &hf_ftam_f_terminate_response, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_F_TERMINATE_response },
1297 { 4, &hf_ftam_f_u_abort_request, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_F_U_ABORT_request },
1298 { 5, &hf_ftam_f_p_abort_request, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_ftam_F_P_ABORT_request },
1299 { 0, NULL, 0, 0, 0, NULL }
1300 };
1301
1302 static int
dissect_ftam_FTAM_Regime_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1303 dissect_ftam_FTAM_Regime_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1304 #line 117 "./asn1/ftam/ftam.cnf"
1305 gint branch_taken;
1306
1307 offset = dissect_ber_choice(actx, tree, tvb, offset,
1308 FTAM_Regime_PDU_choice, hf_index, ett_ftam_FTAM_Regime_PDU,
1309 &branch_taken);
1310
1311
1312 if( (branch_taken!=-1) && ftam_FTAM_Regime_PDU_vals[branch_taken].strptr ){
1313 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s:", ftam_FTAM_Regime_PDU_vals[branch_taken].strptr);
1314 }
1315
1316
1317
1318 return offset;
1319 }
1320
1321
1322 static const ber_sequence_t Pathname_sequence_of[1] = {
1323 { &hf_ftam_Pathname_item , BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_ftam_GraphicString },
1324 };
1325
1326 int
dissect_ftam_Pathname(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1327 dissect_ftam_Pathname(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1328 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1329 Pathname_sequence_of, hf_index, ett_ftam_Pathname);
1330
1331 return offset;
1332 }
1333
1334
1335 static const value_string ftam_Pathname_Attribute_vals[] = {
1336 { 0, "incomplete-pathname" },
1337 { 1, "complete-pathname" },
1338 { 0, NULL }
1339 };
1340
1341 static const ber_choice_t Pathname_Attribute_choice[] = {
1342 { 0, &hf_ftam_incomplete_pathname, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname },
1343 { 1, &hf_ftam_complete_pathname, BER_CLASS_APP, 23, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname },
1344 { 0, NULL, 0, 0, 0, NULL }
1345 };
1346
1347 static int
dissect_ftam_Pathname_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1348 dissect_ftam_Pathname_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1349 offset = dissect_ber_choice(actx, tree, tvb, offset,
1350 Pathname_Attribute_choice, hf_index, ett_ftam_Pathname_Attribute,
1351 NULL);
1352
1353 return offset;
1354 }
1355
1356
1357 static const ber_sequence_t Select_Attributes_U_sequence[] = {
1358 { &hf_ftam_pathname , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
1359 { NULL, 0, 0, 0, NULL }
1360 };
1361
1362 static int
dissect_ftam_Select_Attributes_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1363 dissect_ftam_Select_Attributes_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1364 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1365 Select_Attributes_U_sequence, hf_index, ett_ftam_Select_Attributes_U);
1366
1367 return offset;
1368 }
1369
1370
1371
1372 static int
dissect_ftam_Select_Attributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1373 dissect_ftam_Select_Attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1374 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1375 hf_index, BER_CLASS_APP, 19, TRUE, dissect_ftam_Select_Attributes_U);
1376
1377 return offset;
1378 }
1379
1380
1381 static int * const Access_Request_U_bits[] = {
1382 &hf_ftam_Access_Request_U_read,
1383 &hf_ftam_Access_Request_U_insert,
1384 &hf_ftam_Access_Request_U_replace,
1385 &hf_ftam_Access_Request_U_extend,
1386 &hf_ftam_Access_Request_U_erase,
1387 &hf_ftam_Access_Request_U_read_attribute,
1388 &hf_ftam_Access_Request_U_change_attribute,
1389 &hf_ftam_Access_Request_U_delete_Object,
1390 NULL
1391 };
1392
1393 static int
dissect_ftam_Access_Request_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1394 dissect_ftam_Access_Request_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1395 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1396 Access_Request_U_bits, 8, hf_index, ett_ftam_Access_Request_U,
1397 NULL);
1398
1399 return offset;
1400 }
1401
1402
1403
1404 static int
dissect_ftam_Access_Request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1405 dissect_ftam_Access_Request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1406 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1407 hf_index, BER_CLASS_APP, 3, TRUE, dissect_ftam_Access_Request_U);
1408
1409 return offset;
1410 }
1411
1412
1413 static const ber_sequence_t Pass_Passwords_sequence_of[1] = {
1414 { &hf_ftam_Pass_Passwords_item, BER_CLASS_APP, 17, BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
1415 };
1416
1417 static int
dissect_ftam_Pass_Passwords(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1418 dissect_ftam_Pass_Passwords(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1419 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1420 Pass_Passwords_sequence_of, hf_index, ett_ftam_Pass_Passwords);
1421
1422 return offset;
1423 }
1424
1425
1426 static const ber_sequence_t Access_Passwords_U_sequence[] = {
1427 { &hf_ftam_read_password , BER_CLASS_CON, 0, 0, dissect_ftam_Password },
1428 { &hf_ftam_insert_password, BER_CLASS_CON, 1, 0, dissect_ftam_Password },
1429 { &hf_ftam_replace_password, BER_CLASS_CON, 2, 0, dissect_ftam_Password },
1430 { &hf_ftam_extend_password, BER_CLASS_CON, 3, 0, dissect_ftam_Password },
1431 { &hf_ftam_erase_password , BER_CLASS_CON, 4, 0, dissect_ftam_Password },
1432 { &hf_ftam_read_attribute_password, BER_CLASS_CON, 5, 0, dissect_ftam_Password },
1433 { &hf_ftam_change_attribute_password, BER_CLASS_CON, 6, 0, dissect_ftam_Password },
1434 { &hf_ftam_delete_password, BER_CLASS_CON, 7, 0, dissect_ftam_Password },
1435 { &hf_ftam_pass_passwords , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Pass_Passwords },
1436 { &hf_ftam_link_password , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_ftam_Password },
1437 { NULL, 0, 0, 0, NULL }
1438 };
1439
1440 static int
dissect_ftam_Access_Passwords_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1441 dissect_ftam_Access_Passwords_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1442 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1443 Access_Passwords_U_sequence, hf_index, ett_ftam_Access_Passwords_U);
1444
1445 return offset;
1446 }
1447
1448
1449
1450 static int
dissect_ftam_Access_Passwords(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1451 dissect_ftam_Access_Passwords(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1452 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1453 hf_index, BER_CLASS_APP, 2, TRUE, dissect_ftam_Access_Passwords_U);
1454
1455 return offset;
1456 }
1457
1458
1459 static const ber_sequence_t Path_Access_Passwords_item_sequence[] = {
1460 { &hf_ftam_read_password , BER_CLASS_CON, 0, 0, dissect_ftam_Password },
1461 { &hf_ftam_insert_password, BER_CLASS_CON, 1, 0, dissect_ftam_Password },
1462 { &hf_ftam_replace_password, BER_CLASS_CON, 2, 0, dissect_ftam_Password },
1463 { &hf_ftam_extend_password, BER_CLASS_CON, 3, 0, dissect_ftam_Password },
1464 { &hf_ftam_erase_password , BER_CLASS_CON, 4, 0, dissect_ftam_Password },
1465 { &hf_ftam_read_attribute_password, BER_CLASS_CON, 5, 0, dissect_ftam_Password },
1466 { &hf_ftam_change_attribute_password, BER_CLASS_CON, 6, 0, dissect_ftam_Password },
1467 { &hf_ftam_delete_password, BER_CLASS_CON, 7, 0, dissect_ftam_Password },
1468 { &hf_ftam_pass_passwords , BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_ftam_Pass_Passwords },
1469 { &hf_ftam_link_password , BER_CLASS_CON, 9, 0, dissect_ftam_Password },
1470 { NULL, 0, 0, 0, NULL }
1471 };
1472
1473 static int
dissect_ftam_Path_Access_Passwords_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1474 dissect_ftam_Path_Access_Passwords_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1475 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1476 Path_Access_Passwords_item_sequence, hf_index, ett_ftam_Path_Access_Passwords_item);
1477
1478 return offset;
1479 }
1480
1481
1482 static const ber_sequence_t Path_Access_Passwords_U_sequence_of[1] = {
1483 { &hf_ftam__untag_item_05 , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords_item },
1484 };
1485
1486 static int
dissect_ftam_Path_Access_Passwords_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1487 dissect_ftam_Path_Access_Passwords_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1488 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1489 Path_Access_Passwords_U_sequence_of, hf_index, ett_ftam_Path_Access_Passwords_U);
1490
1491 return offset;
1492 }
1493
1494
1495
1496 static int
dissect_ftam_Path_Access_Passwords(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1497 dissect_ftam_Path_Access_Passwords(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1498 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1499 hf_index, BER_CLASS_APP, 27, TRUE, dissect_ftam_Path_Access_Passwords_U);
1500
1501 return offset;
1502 }
1503
1504
1505 static const value_string ftam_Lock_vals[] = {
1506 { 0, "not-required" },
1507 { 1, "shared" },
1508 { 2, "exclusive" },
1509 { 3, "no-access" },
1510 { 0, NULL }
1511 };
1512
1513
1514 static int
dissect_ftam_Lock(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1515 dissect_ftam_Lock(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1516 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1517 NULL);
1518
1519 return offset;
1520 }
1521
1522
1523 static const ber_sequence_t Concurrency_Control_U_sequence[] = {
1524 { &hf_ftam_read , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1525 { &hf_ftam_insert , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1526 { &hf_ftam_replace , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1527 { &hf_ftam_extend , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1528 { &hf_ftam_erase , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1529 { &hf_ftam_read_attribute , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1530 { &hf_ftam_change_attribute, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1531 { &hf_ftam_delete_Object , BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_ftam_Lock },
1532 { NULL, 0, 0, 0, NULL }
1533 };
1534
1535 static int
dissect_ftam_Concurrency_Control_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1536 dissect_ftam_Concurrency_Control_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1537 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1538 Concurrency_Control_U_sequence, hf_index, ett_ftam_Concurrency_Control_U);
1539
1540 return offset;
1541 }
1542
1543
1544
1545 static int
dissect_ftam_Concurrency_Control(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1546 dissect_ftam_Concurrency_Control(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1547 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1548 hf_index, BER_CLASS_APP, 10, TRUE, dissect_ftam_Concurrency_Control_U);
1549
1550 return offset;
1551 }
1552
1553
1554 static const ber_sequence_t F_SELECT_request_sequence[] = {
1555 { &hf_ftam_select_attributes, BER_CLASS_APP, 19, BER_FLAGS_NOOWNTAG, dissect_ftam_Select_Attributes },
1556 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
1557 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
1558 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
1559 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
1560 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1561 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
1562 { NULL, 0, 0, 0, NULL }
1563 };
1564
1565 static int
dissect_ftam_F_SELECT_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1566 dissect_ftam_F_SELECT_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1567 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1568 F_SELECT_request_sequence, hf_index, ett_ftam_F_SELECT_request);
1569
1570 return offset;
1571 }
1572
1573
1574
1575 static int
dissect_ftam_Referent_Indicator(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1576 dissect_ftam_Referent_Indicator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1577 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1578 hf_index, BER_CLASS_APP, 29, TRUE, dissect_ftam_BOOLEAN);
1579
1580 return offset;
1581 }
1582
1583
1584 static const ber_sequence_t F_SELECT_response_sequence[] = {
1585 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
1586 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
1587 { &hf_ftam_select_attributes, BER_CLASS_APP, 19, BER_FLAGS_NOOWNTAG, dissect_ftam_Select_Attributes },
1588 { &hf_ftam_referent_indicator, BER_CLASS_APP, 29, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Referent_Indicator },
1589 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1590 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
1591 { NULL, 0, 0, 0, NULL }
1592 };
1593
1594 static int
dissect_ftam_F_SELECT_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1595 dissect_ftam_F_SELECT_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1596 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1597 F_SELECT_response_sequence, hf_index, ett_ftam_F_SELECT_response);
1598
1599 return offset;
1600 }
1601
1602
1603 static const ber_sequence_t F_DESELECT_request_sequence[] = {
1604 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1605 { NULL, 0, 0, 0, NULL }
1606 };
1607
1608 static int
dissect_ftam_F_DESELECT_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1609 dissect_ftam_F_DESELECT_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1610 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1611 F_DESELECT_request_sequence, hf_index, ett_ftam_F_DESELECT_request);
1612
1613 return offset;
1614 }
1615
1616
1617 static const ber_sequence_t F_DESELECT_response_sequence[] = {
1618 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
1619 { &hf_ftam_charging , BER_CLASS_APP, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Charging },
1620 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
1621 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
1622 { NULL, 0, 0, 0, NULL }
1623 };
1624
1625 static int
dissect_ftam_F_DESELECT_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1626 dissect_ftam_F_DESELECT_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1627 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1628 F_DESELECT_response_sequence, hf_index, ett_ftam_F_DESELECT_response);
1629
1630 return offset;
1631 }
1632
1633
1634 static const value_string ftam_Override_vals[] = {
1635 { 0, "create-failure" },
1636 { 1, "select-old-Object" },
1637 { 2, "delete-and-create-with-old-attributes" },
1638 { 3, "delete-and-create-with-new-attributes" },
1639 { 0, NULL }
1640 };
1641
1642
1643 static int
dissect_ftam_Override(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1644 dissect_ftam_Override(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1645 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1646 NULL);
1647
1648 return offset;
1649 }
1650
1651
1652 static const value_string ftam_Object_Type_Attribute_vals[] = {
1653 { 0, "file" },
1654 { 1, "file-directory" },
1655 { 2, "reference" },
1656 { 0, NULL }
1657 };
1658
1659
1660 static int
dissect_ftam_Object_Type_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1661 dissect_ftam_Object_Type_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1662 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1663 NULL);
1664
1665 return offset;
1666 }
1667
1668
1669 static int * const Permitted_Actions_Attribute_bits[] = {
1670 &hf_ftam_Permitted_Actions_Attribute_read,
1671 &hf_ftam_Permitted_Actions_Attribute_insert,
1672 &hf_ftam_Permitted_Actions_Attribute_replace,
1673 &hf_ftam_Permitted_Actions_Attribute_extend,
1674 &hf_ftam_Permitted_Actions_Attribute_erase,
1675 &hf_ftam_Permitted_Actions_Attribute_read_attribute,
1676 &hf_ftam_Permitted_Actions_Attribute_change_attribute,
1677 &hf_ftam_Permitted_Actions_Attribute_delete_Object,
1678 &hf_ftam_Permitted_Actions_Attribute_traversal,
1679 &hf_ftam_Permitted_Actions_Attribute_reverse_traversal,
1680 &hf_ftam_Permitted_Actions_Attribute_random_Order,
1681 &hf_ftam_Permitted_Actions_Attribute_pass,
1682 &hf_ftam_Permitted_Actions_Attribute_link,
1683 NULL
1684 };
1685
1686 int
dissect_ftam_Permitted_Actions_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1687 dissect_ftam_Permitted_Actions_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1688 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1689 Permitted_Actions_Attribute_bits, 13, hf_index, ett_ftam_Permitted_Actions_Attribute,
1690 NULL);
1691
1692 return offset;
1693 }
1694
1695
1696
1697 static int
dissect_ftam_T_parameter(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1698 dissect_ftam_T_parameter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1699 #line 94 "./asn1/ftam/ftam.cnf"
1700 if (actx->external.direct_reference) {
1701 offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL);
1702 }
1703
1704
1705
1706 return offset;
1707 }
1708
1709
1710 static const ber_sequence_t T_document_type_sequence[] = {
1711 { &hf_ftam_document_type_name, BER_CLASS_APP, 14, BER_FLAGS_NOOWNTAG, dissect_ftam_Document_Type_Name },
1712 { &hf_ftam_parameter , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_ftam_T_parameter },
1713 { NULL, 0, 0, 0, NULL }
1714 };
1715
1716 static int
dissect_ftam_T_document_type(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1717 dissect_ftam_T_document_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1718 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1719 T_document_type_sequence, hf_index, ett_ftam_T_document_type);
1720
1721 return offset;
1722 }
1723
1724
1725
1726 static int
dissect_ftam_Constraint_Set_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1727 dissect_ftam_Constraint_Set_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1728 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1729 hf_index, BER_CLASS_APP, 11, TRUE, dissect_ftam_OBJECT_IDENTIFIER);
1730
1731 return offset;
1732 }
1733
1734
1735 static const ber_sequence_t T_constraint_set_and_abstract_Syntax_sequence[] = {
1736 { &hf_ftam_constraint_set_name, BER_CLASS_APP, 11, BER_FLAGS_NOOWNTAG, dissect_ftam_Constraint_Set_Name },
1737 { &hf_ftam_abstract_Syntax_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_Abstract_Syntax_Name },
1738 { NULL, 0, 0, 0, NULL }
1739 };
1740
1741 static int
dissect_ftam_T_constraint_set_and_abstract_Syntax(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1742 dissect_ftam_T_constraint_set_and_abstract_Syntax(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1743 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1744 T_constraint_set_and_abstract_Syntax_sequence, hf_index, ett_ftam_T_constraint_set_and_abstract_Syntax);
1745
1746 return offset;
1747 }
1748
1749
1750 static const value_string ftam_Contents_Type_Attribute_vals[] = {
1751 { 0, "document-type" },
1752 { 1, "constraint-set-and-abstract-Syntax" },
1753 { 0, NULL }
1754 };
1755
1756 static const ber_choice_t Contents_Type_Attribute_choice[] = {
1757 { 0, &hf_ftam_document_type , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_T_document_type },
1758 { 1, &hf_ftam_constraint_set_and_abstract_Syntax, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_constraint_set_and_abstract_Syntax },
1759 { 0, NULL, 0, 0, 0, NULL }
1760 };
1761
1762 static int
dissect_ftam_Contents_Type_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1763 dissect_ftam_Contents_Type_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1764 offset = dissect_ber_choice(actx, tree, tvb, offset,
1765 Contents_Type_Attribute_choice, hf_index, ett_ftam_Contents_Type_Attribute,
1766 NULL);
1767
1768 return offset;
1769 }
1770
1771
1772
1773 static int
dissect_ftam_NULL(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1774 dissect_ftam_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1775 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
1776
1777 return offset;
1778 }
1779
1780
1781 static const value_string ftam_Account_Attribute_vals[] = {
1782 { 0, "no-value-available" },
1783 { 1, "actual-values" },
1784 { 0, NULL }
1785 };
1786
1787 static const ber_choice_t Account_Attribute_choice[] = {
1788 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
1789 { 1, &hf_ftam_actual_values2 , BER_CLASS_APP, 4, BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
1790 { 0, NULL, 0, 0, 0, NULL }
1791 };
1792
1793 static int
dissect_ftam_Account_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1794 dissect_ftam_Account_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1795 offset = dissect_ber_choice(actx, tree, tvb, offset,
1796 Account_Attribute_choice, hf_index, ett_ftam_Account_Attribute,
1797 NULL);
1798
1799 return offset;
1800 }
1801
1802
1803 static const value_string ftam_T_actual_values8_vals[] = {
1804 { 0, "immediate-availability" },
1805 { 1, "deferred-availability" },
1806 { 0, NULL }
1807 };
1808
1809
1810 static int
dissect_ftam_T_actual_values8(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1811 dissect_ftam_T_actual_values8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1812 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1813 NULL);
1814
1815 return offset;
1816 }
1817
1818
1819 const value_string ftam_Object_Availability_Attribute_vals[] = {
1820 { 0, "no-value-available" },
1821 { 1, "actual-values" },
1822 { 0, NULL }
1823 };
1824
1825 static const ber_choice_t Object_Availability_Attribute_choice[] = {
1826 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
1827 { 1, &hf_ftam_actual_values8 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_actual_values8 },
1828 { 0, NULL, 0, 0, 0, NULL }
1829 };
1830
1831 int
dissect_ftam_Object_Availability_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1832 dissect_ftam_Object_Availability_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1833 offset = dissect_ber_choice(actx, tree, tvb, offset,
1834 Object_Availability_Attribute_choice, hf_index, ett_ftam_Object_Availability_Attribute,
1835 NULL);
1836
1837 return offset;
1838 }
1839
1840
1841 const value_string ftam_Object_Size_Attribute_vals[] = {
1842 { 0, "no-value-available" },
1843 { 1, "actual-values" },
1844 { 0, NULL }
1845 };
1846
1847 static const ber_choice_t Object_Size_Attribute_choice[] = {
1848 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
1849 { 1, &hf_ftam_actual_values7 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
1850 { 0, NULL, 0, 0, 0, NULL }
1851 };
1852
1853 int
dissect_ftam_Object_Size_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1854 dissect_ftam_Object_Size_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1855 offset = dissect_ber_choice(actx, tree, tvb, offset,
1856 Object_Size_Attribute_choice, hf_index, ett_ftam_Object_Size_Attribute,
1857 NULL);
1858
1859 return offset;
1860 }
1861
1862
1863 static int * const Concurrency_Key_bits[] = {
1864 &hf_ftam_Concurrency_Key_not_required,
1865 &hf_ftam_Concurrency_Key_shared,
1866 &hf_ftam_Concurrency_Key_exclusive,
1867 &hf_ftam_Concurrency_Key_no_access,
1868 NULL
1869 };
1870
1871 static int
dissect_ftam_Concurrency_Key(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1872 dissect_ftam_Concurrency_Key(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1873 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1874 Concurrency_Key_bits, 4, hf_index, ett_ftam_Concurrency_Key,
1875 NULL);
1876
1877 return offset;
1878 }
1879
1880
1881 static const ber_sequence_t Concurrency_Access_sequence[] = {
1882 { &hf_ftam_read_key , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1883 { &hf_ftam_insert_key , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1884 { &hf_ftam_replace_key , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1885 { &hf_ftam_extend_key , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1886 { &hf_ftam_erase_key , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1887 { &hf_ftam_read_attribute_key, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1888 { &hf_ftam_change_attribute_key, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1889 { &hf_ftam_delete_Object_key, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Key },
1890 { NULL, 0, 0, 0, NULL }
1891 };
1892
1893 int
dissect_ftam_Concurrency_Access(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1894 dissect_ftam_Concurrency_Access(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1895 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1896 Concurrency_Access_sequence, hf_index, ett_ftam_Concurrency_Access);
1897
1898 return offset;
1899 }
1900
1901
1902
1903 static int
dissect_ftam_AP_title(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1904 dissect_ftam_AP_title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1905 #line 112 "./asn1/ftam/ftam.cnf"
1906 /* XXX have no idea about this one */
1907
1908
1909 return offset;
1910 }
1911
1912
1913
1914 static int
dissect_ftam_AE_qualifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1915 dissect_ftam_AE_qualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1916 #line 114 "./asn1/ftam/ftam.cnf"
1917 /* XXX have no idea about this one */
1918
1919
1920
1921 return offset;
1922 }
1923
1924
1925 static const ber_sequence_t AE_title_sequence[] = {
1926 { &hf_ftam_ap , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_AP_title },
1927 { &hf_ftam_ae , BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_AE_qualifier },
1928 { NULL, 0, 0, 0, NULL }
1929 };
1930
1931 static int
dissect_ftam_AE_title(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1932 dissect_ftam_AE_title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1933 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1934 AE_title_sequence, hf_index, ett_ftam_AE_title);
1935
1936 return offset;
1937 }
1938
1939
1940
1941 static int
dissect_ftam_Application_Entity_Title(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1942 dissect_ftam_Application_Entity_Title(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1943 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
1944 hf_index, BER_CLASS_APP, 7, FALSE, dissect_ftam_AE_title);
1945
1946 return offset;
1947 }
1948
1949
1950 static const ber_sequence_t Access_Control_Element_sequence[] = {
1951 { &hf_ftam_action_list , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Access_Request },
1952 { &hf_ftam_concurrency_access, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Concurrency_Access },
1953 { &hf_ftam_identity , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_User_Identity },
1954 { &hf_ftam_passwords , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Access_Passwords },
1955 { &hf_ftam_location , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Application_Entity_Title },
1956 { NULL, 0, 0, 0, NULL }
1957 };
1958
1959 static int
dissect_ftam_Access_Control_Element(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1960 dissect_ftam_Access_Control_Element(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1961 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1962 Access_Control_Element_sequence, hf_index, ett_ftam_Access_Control_Element);
1963
1964 return offset;
1965 }
1966
1967
1968 static const ber_sequence_t SET_OF_Access_Control_Element_set_of[1] = {
1969 { &hf_ftam_actual_values3_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Control_Element },
1970 };
1971
1972 static int
dissect_ftam_SET_OF_Access_Control_Element(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1973 dissect_ftam_SET_OF_Access_Control_Element(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1974 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1975 SET_OF_Access_Control_Element_set_of, hf_index, ett_ftam_SET_OF_Access_Control_Element);
1976
1977 return offset;
1978 }
1979
1980
1981 static const value_string ftam_Access_Control_Attribute_vals[] = {
1982 { 0, "no-value-available" },
1983 { 1, "actual-values" },
1984 { 0, NULL }
1985 };
1986
1987 static const ber_choice_t Access_Control_Attribute_choice[] = {
1988 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
1989 { 1, &hf_ftam_actual_values3 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Access_Control_Element },
1990 { 0, NULL, 0, 0, 0, NULL }
1991 };
1992
1993 static int
dissect_ftam_Access_Control_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)1994 dissect_ftam_Access_Control_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1995 offset = dissect_ber_choice(actx, tree, tvb, offset,
1996 Access_Control_Attribute_choice, hf_index, ett_ftam_Access_Control_Attribute,
1997 NULL);
1998
1999 return offset;
2000 }
2001
2002
2003 const value_string ftam_Legal_Qualification_Attribute_vals[] = {
2004 { 0, "no-value-available" },
2005 { 1, "actual-values" },
2006 { 0, NULL }
2007 };
2008
2009 static const ber_choice_t Legal_Qualification_Attribute_choice[] = {
2010 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2011 { 1, &hf_ftam_actual_values9 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_GraphicString },
2012 { 0, NULL, 0, 0, 0, NULL }
2013 };
2014
2015 int
dissect_ftam_Legal_Qualification_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2016 dissect_ftam_Legal_Qualification_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2017 offset = dissect_ber_choice(actx, tree, tvb, offset,
2018 Legal_Qualification_Attribute_choice, hf_index, ett_ftam_Legal_Qualification_Attribute,
2019 NULL);
2020
2021 return offset;
2022 }
2023
2024
2025 const value_string ftam_Private_Use_Attribute_vals[] = {
2026 { 0, "no-value-available" },
2027 { 1, "abstract-Syntax-not-supported" },
2028 { 2, "actual-values" },
2029 { 0, NULL }
2030 };
2031
2032 static const ber_choice_t Private_Use_Attribute_choice[] = {
2033 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2034 { 1, &hf_ftam_abstract_Syntax_not_supported, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2035 { 2, &hf_ftam_actual_values4 , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_EXTERNAL },
2036 { 0, NULL, 0, 0, 0, NULL }
2037 };
2038
2039 int
dissect_ftam_Private_Use_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2040 dissect_ftam_Private_Use_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2041 offset = dissect_ber_choice(actx, tree, tvb, offset,
2042 Private_Use_Attribute_choice, hf_index, ett_ftam_Private_Use_Attribute,
2043 NULL);
2044
2045 return offset;
2046 }
2047
2048
2049
2050 static int
dissect_ftam_Extension_Set_Identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2051 dissect_ftam_Extension_Set_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2052 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2053
2054 return offset;
2055 }
2056
2057
2058
2059 static int
dissect_ftam_T_extension_attribute_identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2060 dissect_ftam_T_extension_attribute_identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2061 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &actx->external.direct_reference);
2062
2063 return offset;
2064 }
2065
2066
2067
2068 static int
dissect_ftam_T_extension_attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2069 dissect_ftam_T_extension_attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2070 #line 99 "./asn1/ftam/ftam.cnf"
2071 if (actx->external.direct_reference) {
2072 offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL);
2073 }
2074
2075
2076
2077 return offset;
2078 }
2079
2080
2081 static const ber_sequence_t Extension_Attribute_sequence[] = {
2082 { &hf_ftam_extension_attribute_identifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ftam_T_extension_attribute_identifier },
2083 { &hf_ftam_extension_attribute, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_T_extension_attribute },
2084 { NULL, 0, 0, 0, NULL }
2085 };
2086
2087 static int
dissect_ftam_Extension_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2088 dissect_ftam_Extension_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2089 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2090 Extension_Attribute_sequence, hf_index, ett_ftam_Extension_Attribute);
2091
2092 return offset;
2093 }
2094
2095
2096 static const ber_sequence_t SEQUENCE_OF_Extension_Attribute_sequence_of[1] = {
2097 { &hf_ftam_extension_set_attributes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Extension_Attribute },
2098 };
2099
2100 static int
dissect_ftam_SEQUENCE_OF_Extension_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2101 dissect_ftam_SEQUENCE_OF_Extension_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2102 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2103 SEQUENCE_OF_Extension_Attribute_sequence_of, hf_index, ett_ftam_SEQUENCE_OF_Extension_Attribute);
2104
2105 return offset;
2106 }
2107
2108
2109 static const ber_sequence_t Attribute_Extension_Set_sequence[] = {
2110 { &hf_ftam_extension_set_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Extension_Set_Identifier },
2111 { &hf_ftam_extension_set_attributes, BER_CLASS_CON, 1, 0, dissect_ftam_SEQUENCE_OF_Extension_Attribute },
2112 { NULL, 0, 0, 0, NULL }
2113 };
2114
2115 static int
dissect_ftam_Attribute_Extension_Set(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2116 dissect_ftam_Attribute_Extension_Set(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2117 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2118 Attribute_Extension_Set_sequence, hf_index, ett_ftam_Attribute_Extension_Set);
2119
2120 return offset;
2121 }
2122
2123
2124 static const ber_sequence_t Attribute_Extensions_sequence_of[1] = {
2125 { &hf_ftam_Attribute_Extensions_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Extension_Set },
2126 };
2127
2128 int
dissect_ftam_Attribute_Extensions(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2129 dissect_ftam_Attribute_Extensions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2130 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2131 Attribute_Extensions_sequence_of, hf_index, ett_ftam_Attribute_Extensions);
2132
2133 return offset;
2134 }
2135
2136
2137 static const ber_sequence_t Create_Attributes_U_sequence[] = {
2138 { &hf_ftam_pathname , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
2139 { &hf_ftam_object_type , BER_CLASS_CON, 18, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Object_Type_Attribute },
2140 { &hf_ftam_permitted_actions, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Permitted_Actions_Attribute },
2141 { &hf_ftam_contents_type , BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_ftam_Contents_Type_Attribute },
2142 { &hf_ftam_storage_account, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Account_Attribute },
2143 { &hf_ftam_object_availability, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Availability_Attribute },
2144 { &hf_ftam_future_Object_size, BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Size_Attribute },
2145 { &hf_ftam_access_control , BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Attribute },
2146 { &hf_ftam_path_access_control, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Attribute },
2147 { &hf_ftam_legal_qualification, BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Legal_Qualification_Attribute },
2148 { &hf_ftam_private_use , BER_CLASS_CON, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Private_Use_Attribute },
2149 { &hf_ftam_attribute_extensions, BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extensions },
2150 { NULL, 0, 0, 0, NULL }
2151 };
2152
2153 static int
dissect_ftam_Create_Attributes_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2154 dissect_ftam_Create_Attributes_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2155 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2156 Create_Attributes_U_sequence, hf_index, ett_ftam_Create_Attributes_U);
2157
2158 return offset;
2159 }
2160
2161
2162
2163 static int
dissect_ftam_Create_Attributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2164 dissect_ftam_Create_Attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2165 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2166 hf_index, BER_CLASS_APP, 12, TRUE, dissect_ftam_Create_Attributes_U);
2167
2168 return offset;
2169 }
2170
2171
2172 static const ber_sequence_t F_CREATE_request_sequence[] = {
2173 { &hf_ftam_override , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Override },
2174 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
2175 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
2176 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
2177 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
2178 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
2179 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
2180 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2181 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
2182 { NULL, 0, 0, 0, NULL }
2183 };
2184
2185 static int
dissect_ftam_F_CREATE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2186 dissect_ftam_F_CREATE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2187 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2188 F_CREATE_request_sequence, hf_index, ett_ftam_F_CREATE_request);
2189
2190 return offset;
2191 }
2192
2193
2194 static const ber_sequence_t F_CREATE_response_sequence[] = {
2195 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
2196 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2197 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
2198 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2199 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2200 { NULL, 0, 0, 0, NULL }
2201 };
2202
2203 static int
dissect_ftam_F_CREATE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2204 dissect_ftam_F_CREATE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2205 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2206 F_CREATE_response_sequence, hf_index, ett_ftam_F_CREATE_response);
2207
2208 return offset;
2209 }
2210
2211
2212 static const ber_sequence_t F_DELETE_request_sequence[] = {
2213 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2214 { NULL, 0, 0, 0, NULL }
2215 };
2216
2217 static int
dissect_ftam_F_DELETE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2218 dissect_ftam_F_DELETE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2219 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2220 F_DELETE_request_sequence, hf_index, ett_ftam_F_DELETE_request);
2221
2222 return offset;
2223 }
2224
2225
2226 static const ber_sequence_t F_DELETE_response_sequence[] = {
2227 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2228 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2229 { &hf_ftam_charging , BER_CLASS_APP, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Charging },
2230 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2231 { NULL, 0, 0, 0, NULL }
2232 };
2233
2234 static int
dissect_ftam_F_DELETE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2235 dissect_ftam_F_DELETE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2236 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2237 F_DELETE_response_sequence, hf_index, ett_ftam_F_DELETE_response);
2238
2239 return offset;
2240 }
2241
2242
2243 static int * const Attribute_Names_bits[] = {
2244 &hf_ftam_Attribute_Names_read_pathname,
2245 &hf_ftam_Attribute_Names_read_permitted_actions,
2246 &hf_ftam_Attribute_Names_read_contents_type,
2247 &hf_ftam_Attribute_Names_read_storage_account,
2248 &hf_ftam_Attribute_Names_read_date_and_time_of_creation,
2249 &hf_ftam_Attribute_Names_read_date_and_time_of_last_modification,
2250 &hf_ftam_Attribute_Names_read_date_and_time_of_last_read_access,
2251 &hf_ftam_Attribute_Names_read_date_and_time_of_last_attribute_modification,
2252 &hf_ftam_Attribute_Names_read_identity_of_creator,
2253 &hf_ftam_Attribute_Names_read_identity_of_last_modifier,
2254 &hf_ftam_Attribute_Names_read_identity_of_last_reader,
2255 &hf_ftam_Attribute_Names_read_identity_of_last_attribute_modifier,
2256 &hf_ftam_Attribute_Names_read_Object_availability,
2257 &hf_ftam_Attribute_Names_read_Object_size,
2258 &hf_ftam_Attribute_Names_read_future_Object_size,
2259 &hf_ftam_Attribute_Names_read_access_control,
2260 &hf_ftam_Attribute_Names_read_l8gal_qualifiCatiOnS,
2261 &hf_ftam_Attribute_Names_read_private_use,
2262 &hf_ftam_Attribute_Names_read_Object_type,
2263 &hf_ftam_Attribute_Names_read_linked_Object,
2264 &hf_ftam_Attribute_Names_read_primary_pathname,
2265 &hf_ftam_Attribute_Names_read_path_access_control,
2266 &hf_ftam_Attribute_Names_spare_bit22,
2267 &hf_ftam_Attribute_Names_read_Child_objects,
2268 NULL
2269 };
2270
2271 static int
dissect_ftam_Attribute_Names(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2272 dissect_ftam_Attribute_Names(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2273 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2274 Attribute_Names_bits, 24, hf_index, ett_ftam_Attribute_Names,
2275 NULL);
2276
2277 return offset;
2278 }
2279
2280
2281
2282 static int
dissect_ftam_Extension_Attribute_identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2283 dissect_ftam_Extension_Attribute_identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2284 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
2285
2286 return offset;
2287 }
2288
2289
2290 static const ber_sequence_t SEQUENCE_OF_Extension_Attribute_identifier_sequence_of[1] = {
2291 { &hf_ftam_extension_attribute_names_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ftam_Extension_Attribute_identifier },
2292 };
2293
2294 static int
dissect_ftam_SEQUENCE_OF_Extension_Attribute_identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2295 dissect_ftam_SEQUENCE_OF_Extension_Attribute_identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2296 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2297 SEQUENCE_OF_Extension_Attribute_identifier_sequence_of, hf_index, ett_ftam_SEQUENCE_OF_Extension_Attribute_identifier);
2298
2299 return offset;
2300 }
2301
2302
2303 static const ber_sequence_t Attribute_Extension_Set_Name_sequence[] = {
2304 { &hf_ftam_extension_set_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Extension_Set_Identifier },
2305 { &hf_ftam_extension_attribute_names, BER_CLASS_CON, 1, 0, dissect_ftam_SEQUENCE_OF_Extension_Attribute_identifier },
2306 { NULL, 0, 0, 0, NULL }
2307 };
2308
2309 static int
dissect_ftam_Attribute_Extension_Set_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2310 dissect_ftam_Attribute_Extension_Set_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2311 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2312 Attribute_Extension_Set_Name_sequence, hf_index, ett_ftam_Attribute_Extension_Set_Name);
2313
2314 return offset;
2315 }
2316
2317
2318 static const ber_sequence_t Attribute_Extension_Names_sequence_of[1] = {
2319 { &hf_ftam_Attribute_Extension_Names_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Extension_Set_Name },
2320 };
2321
2322 static int
dissect_ftam_Attribute_Extension_Names(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2323 dissect_ftam_Attribute_Extension_Names(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2324 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2325 Attribute_Extension_Names_sequence_of, hf_index, ett_ftam_Attribute_Extension_Names);
2326
2327 return offset;
2328 }
2329
2330
2331 static const ber_sequence_t F_READ_ATTRIB_request_sequence[] = {
2332 { &hf_ftam_attribute_names, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Names },
2333 { &hf_ftam_attribute_extension_names, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extension_Names },
2334 { NULL, 0, 0, 0, NULL }
2335 };
2336
2337 static int
dissect_ftam_F_READ_ATTRIB_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2338 dissect_ftam_F_READ_ATTRIB_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2339 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2340 F_READ_ATTRIB_request_sequence, hf_index, ett_ftam_F_READ_ATTRIB_request);
2341
2342 return offset;
2343 }
2344
2345
2346 static const ber_sequence_t Child_Objects_Attribute_set_of[1] = {
2347 { &hf_ftam_Child_Objects_Attribute_item, BER_CLASS_UNI, BER_UNI_TAG_GraphicString, BER_FLAGS_NOOWNTAG, dissect_ftam_GraphicString },
2348 };
2349
2350 static int
dissect_ftam_Child_Objects_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2351 dissect_ftam_Child_Objects_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2352 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2353 Child_Objects_Attribute_set_of, hf_index, ett_ftam_Child_Objects_Attribute);
2354
2355 return offset;
2356 }
2357
2358
2359
2360 static int
dissect_ftam_GeneralizedTime(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2361 dissect_ftam_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2362 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
2363
2364 return offset;
2365 }
2366
2367
2368 const value_string ftam_Date_and_Time_Attribute_vals[] = {
2369 { 0, "no-value-available" },
2370 { 1, "actual-values" },
2371 { 0, NULL }
2372 };
2373
2374 static const ber_choice_t Date_and_Time_Attribute_choice[] = {
2375 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2376 { 1, &hf_ftam_actual_values5 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_GeneralizedTime },
2377 { 0, NULL, 0, 0, 0, NULL }
2378 };
2379
2380 int
dissect_ftam_Date_and_Time_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2381 dissect_ftam_Date_and_Time_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2382 offset = dissect_ber_choice(actx, tree, tvb, offset,
2383 Date_and_Time_Attribute_choice, hf_index, ett_ftam_Date_and_Time_Attribute,
2384 NULL);
2385
2386 return offset;
2387 }
2388
2389
2390 static const value_string ftam_User_Identity_Attribute_vals[] = {
2391 { 0, "no-value-available" },
2392 { 1, "actual-values" },
2393 { 0, NULL }
2394 };
2395
2396 static const ber_choice_t User_Identity_Attribute_choice[] = {
2397 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2398 { 1, &hf_ftam_actual_values6 , BER_CLASS_APP, 22, BER_FLAGS_NOOWNTAG, dissect_ftam_User_Identity },
2399 { 0, NULL, 0, 0, 0, NULL }
2400 };
2401
2402 static int
dissect_ftam_User_Identity_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2403 dissect_ftam_User_Identity_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2404 offset = dissect_ber_choice(actx, tree, tvb, offset,
2405 User_Identity_Attribute_choice, hf_index, ett_ftam_User_Identity_Attribute,
2406 NULL);
2407
2408 return offset;
2409 }
2410
2411
2412 static const ber_sequence_t Read_Attributes_U_sequence[] = {
2413 { &hf_ftam_pathname , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
2414 { &hf_ftam_object_type , BER_CLASS_CON, 18, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Object_Type_Attribute },
2415 { &hf_ftam_permitted_actions, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Permitted_Actions_Attribute },
2416 { &hf_ftam_contents_type , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Contents_Type_Attribute },
2417 { &hf_ftam_linked_Object , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
2418 { &hf_ftam_child_objects , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_ftam_Child_Objects_Attribute },
2419 { &hf_ftam_primaty_pathname, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
2420 { &hf_ftam_storage_account, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Account_Attribute },
2421 { &hf_ftam_date_and_time_of_creation, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Date_and_Time_Attribute },
2422 { &hf_ftam_date_and_time_of_last_modification, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Date_and_Time_Attribute },
2423 { &hf_ftam_date_and_time_of_last_read_access, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Date_and_Time_Attribute },
2424 { &hf_ftam_date_and_time_of_last_attribute_modification, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Date_and_Time_Attribute },
2425 { &hf_ftam_identity_of_creator, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_User_Identity_Attribute },
2426 { &hf_ftam_identity_of_last_modifier, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_User_Identity_Attribute },
2427 { &hf_ftam_identity_of_last_reader, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_User_Identity_Attribute },
2428 { &hf_ftam_identity_last_attribute_modifier, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_User_Identity_Attribute },
2429 { &hf_ftam_object_availability, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Availability_Attribute },
2430 { &hf_ftam_object_size , BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Size_Attribute },
2431 { &hf_ftam_future_Object_size, BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Size_Attribute },
2432 { &hf_ftam_access_control , BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Attribute },
2433 { &hf_ftam_path_access_control, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Attribute },
2434 { &hf_ftam_legal_qualification, BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Legal_Qualification_Attribute },
2435 { &hf_ftam_private_use , BER_CLASS_CON, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Private_Use_Attribute },
2436 { &hf_ftam_attribute_extensions, BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extensions },
2437 { NULL, 0, 0, 0, NULL }
2438 };
2439
2440 static int
dissect_ftam_Read_Attributes_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2441 dissect_ftam_Read_Attributes_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2442 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2443 Read_Attributes_U_sequence, hf_index, ett_ftam_Read_Attributes_U);
2444
2445 return offset;
2446 }
2447
2448
2449
2450 static int
dissect_ftam_Read_Attributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2451 dissect_ftam_Read_Attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2452 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2453 hf_index, BER_CLASS_APP, 18, TRUE, dissect_ftam_Read_Attributes_U);
2454
2455 return offset;
2456 }
2457
2458
2459 static const ber_sequence_t F_READ_ATTRIB_response_sequence[] = {
2460 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2461 { &hf_ftam_read_attributes, BER_CLASS_APP, 18, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Read_Attributes },
2462 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2463 { NULL, 0, 0, 0, NULL }
2464 };
2465
2466 static int
dissect_ftam_F_READ_ATTRIB_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2467 dissect_ftam_F_READ_ATTRIB_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2468 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2469 F_READ_ATTRIB_response_sequence, hf_index, ett_ftam_F_READ_ATTRIB_response);
2470
2471 return offset;
2472 }
2473
2474
2475 static const ber_sequence_t T_actual_values1_sequence[] = {
2476 { &hf_ftam_insert_values , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Access_Control_Element },
2477 { &hf_ftam_delete_values , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Access_Control_Element },
2478 { NULL, 0, 0, 0, NULL }
2479 };
2480
2481 static int
dissect_ftam_T_actual_values1(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2482 dissect_ftam_T_actual_values1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2483 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2484 T_actual_values1_sequence, hf_index, ett_ftam_T_actual_values1);
2485
2486 return offset;
2487 }
2488
2489
2490 static const value_string ftam_Access_Control_Change_Attribute_vals[] = {
2491 { 0, "no-value-available" },
2492 { 1, "actual-values" },
2493 { 0, NULL }
2494 };
2495
2496 static const ber_choice_t Access_Control_Change_Attribute_choice[] = {
2497 { 0, &hf_ftam_no_value_available, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2498 { 1, &hf_ftam_actual_values1 , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_actual_values1 },
2499 { 0, NULL, 0, 0, 0, NULL }
2500 };
2501
2502 static int
dissect_ftam_Access_Control_Change_Attribute(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2503 dissect_ftam_Access_Control_Change_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2504 offset = dissect_ber_choice(actx, tree, tvb, offset,
2505 Access_Control_Change_Attribute_choice, hf_index, ett_ftam_Access_Control_Change_Attribute,
2506 NULL);
2507
2508 return offset;
2509 }
2510
2511
2512 static const ber_sequence_t Change_Attributes_U_sequence[] = {
2513 { &hf_ftam_pathname , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
2514 { &hf_ftam_storage_account, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Account_Attribute },
2515 { &hf_ftam_object_availability, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Availability_Attribute },
2516 { &hf_ftam_future_Object_size, BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Object_Size_Attribute },
2517 { &hf_ftam_change_attributes_access_control, BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Change_Attribute },
2518 { &hf_ftam_change_path_access_control, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Access_Control_Change_Attribute },
2519 { &hf_ftam_legal_qualification, BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Legal_Qualification_Attribute },
2520 { &hf_ftam_private_use , BER_CLASS_CON, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Private_Use_Attribute },
2521 { &hf_ftam_attribute_extensions, BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extensions },
2522 { NULL, 0, 0, 0, NULL }
2523 };
2524
2525 static int
dissect_ftam_Change_Attributes_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2526 dissect_ftam_Change_Attributes_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2527 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2528 Change_Attributes_U_sequence, hf_index, ett_ftam_Change_Attributes_U);
2529
2530 return offset;
2531 }
2532
2533
2534
2535 static int
dissect_ftam_Change_Attributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2536 dissect_ftam_Change_Attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2537 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2538 hf_index, BER_CLASS_APP, 8, TRUE, dissect_ftam_Change_Attributes_U);
2539
2540 return offset;
2541 }
2542
2543
2544 static const ber_sequence_t F_CHANGE_ATTRIB_request_sequence[] = {
2545 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
2546 { NULL, 0, 0, 0, NULL }
2547 };
2548
2549 static int
dissect_ftam_F_CHANGE_ATTRIB_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2550 dissect_ftam_F_CHANGE_ATTRIB_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2551 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2552 F_CHANGE_ATTRIB_request_sequence, hf_index, ett_ftam_F_CHANGE_ATTRIB_request);
2553
2554 return offset;
2555 }
2556
2557
2558 static const ber_sequence_t F_CHANGE_ATTRIB_response_sequence[] = {
2559 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2560 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
2561 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2562 { NULL, 0, 0, 0, NULL }
2563 };
2564
2565 static int
dissect_ftam_F_CHANGE_ATTRIB_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2566 dissect_ftam_F_CHANGE_ATTRIB_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2567 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2568 F_CHANGE_ATTRIB_response_sequence, hf_index, ett_ftam_F_CHANGE_ATTRIB_response);
2569
2570 return offset;
2571 }
2572
2573
2574 static int * const T_processing_mode_bits[] = {
2575 &hf_ftam_T_processing_mode_f_read,
2576 &hf_ftam_T_processing_mode_f_insert,
2577 &hf_ftam_T_processing_mode_f_replace,
2578 &hf_ftam_T_processing_mode_f_extend,
2579 &hf_ftam_T_processing_mode_f_erase,
2580 NULL
2581 };
2582
2583 static int
dissect_ftam_T_processing_mode(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2584 dissect_ftam_T_processing_mode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2585 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2586 T_processing_mode_bits, 5, hf_index, ett_ftam_T_processing_mode,
2587 NULL);
2588
2589 return offset;
2590 }
2591
2592
2593 static const value_string ftam_T_open_contents_type_vals[] = {
2594 { 0, "unknown" },
2595 { 1, "proposed" },
2596 { 0, NULL }
2597 };
2598
2599 static const ber_choice_t T_open_contents_type_choice[] = {
2600 { 0, &hf_ftam_unknown , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
2601 { 1, &hf_ftam_proposed , BER_CLASS_CON, 1, 0, dissect_ftam_Contents_Type_Attribute },
2602 { 0, NULL, 0, 0, 0, NULL }
2603 };
2604
2605 static int
dissect_ftam_T_open_contents_type(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2606 dissect_ftam_T_open_contents_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2607 offset = dissect_ber_choice(actx, tree, tvb, offset,
2608 T_open_contents_type_choice, hf_index, ett_ftam_T_open_contents_type,
2609 NULL);
2610
2611 return offset;
2612 }
2613
2614
2615
2616 static int
dissect_ftam_Activity_Identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2617 dissect_ftam_Activity_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2618 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2619 hf_index, BER_CLASS_APP, 6, TRUE, dissect_ftam_INTEGER);
2620
2621 return offset;
2622 }
2623
2624
2625 static const value_string ftam_T_request_recovery_mode_vals[] = {
2626 { 0, "none" },
2627 { 1, "at-start-of-file" },
2628 { 2, "at-any-active-Checkpoint" },
2629 { 0, NULL }
2630 };
2631
2632
2633 static int
dissect_ftam_T_request_recovery_mode(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2634 dissect_ftam_T_request_recovery_mode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2635 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2636 NULL);
2637
2638 return offset;
2639 }
2640
2641
2642 static const ber_sequence_t SET_OF_Abstract_Syntax_Name_set_of[1] = {
2643 { &hf_ftam_remove_contexts_item, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_Abstract_Syntax_Name },
2644 };
2645
2646 static int
dissect_ftam_SET_OF_Abstract_Syntax_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2647 dissect_ftam_SET_OF_Abstract_Syntax_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2648 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2649 SET_OF_Abstract_Syntax_Name_set_of, hf_index, ett_ftam_SET_OF_Abstract_Syntax_Name);
2650
2651 return offset;
2652 }
2653
2654
2655 static const value_string ftam_Degree_Of_Overlap_U_vals[] = {
2656 { 0, "normal" },
2657 { 1, "consecutive" },
2658 { 2, "concurrent" },
2659 { 0, NULL }
2660 };
2661
2662
2663 static int
dissect_ftam_Degree_Of_Overlap_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2664 dissect_ftam_Degree_Of_Overlap_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2665 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2666 NULL);
2667
2668 return offset;
2669 }
2670
2671
2672
2673 static int
dissect_ftam_Degree_Of_Overlap(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2674 dissect_ftam_Degree_Of_Overlap(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2675 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2676 hf_index, BER_CLASS_APP, 30, TRUE, dissect_ftam_Degree_Of_Overlap_U);
2677
2678 return offset;
2679 }
2680
2681
2682 static const ber_sequence_t F_OPEN_request_sequence[] = {
2683 { &hf_ftam_processing_mode, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_T_processing_mode },
2684 { &hf_ftam_open_contents_type, BER_CLASS_CON, 1, 0, dissect_ftam_T_open_contents_type },
2685 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
2686 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2687 { &hf_ftam_enable_fadu_locking, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
2688 { &hf_ftam_activity_identifier, BER_CLASS_APP, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Activity_Identifier },
2689 { &hf_ftam_request_recovery_mode, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_T_request_recovery_mode },
2690 { &hf_ftam_remove_contexts, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Abstract_Syntax_Name },
2691 { &hf_ftam_define_contexts, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Abstract_Syntax_Name },
2692 { &hf_ftam_degree_of_overlap, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Degree_Of_Overlap },
2693 { &hf_ftam_transfer_window, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2694 { NULL, 0, 0, 0, NULL }
2695 };
2696
2697 static int
dissect_ftam_F_OPEN_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2698 dissect_ftam_F_OPEN_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2699 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2700 F_OPEN_request_sequence, hf_index, ett_ftam_F_OPEN_request);
2701
2702 return offset;
2703 }
2704
2705
2706 static const value_string ftam_T_response_recovery_mode_vals[] = {
2707 { 0, "none" },
2708 { 1, "at-start-of-file" },
2709 { 2, "at-any-active-Checkpoint" },
2710 { 0, NULL }
2711 };
2712
2713
2714 static int
dissect_ftam_T_response_recovery_mode(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2715 dissect_ftam_T_response_recovery_mode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2716 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2717 NULL);
2718
2719 return offset;
2720 }
2721
2722
2723 static const ber_sequence_t F_OPEN_response_sequence[] = {
2724 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
2725 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2726 { &hf_ftam_contents_type , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_ftam_Contents_Type_Attribute },
2727 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
2728 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2729 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2730 { &hf_ftam_response_recovery_mode, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_T_response_recovery_mode },
2731 { &hf_ftam_presentation_action, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
2732 { &hf_ftam_degree_of_overlap, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Degree_Of_Overlap },
2733 { &hf_ftam_transfer_window, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2734 { NULL, 0, 0, 0, NULL }
2735 };
2736
2737 static int
dissect_ftam_F_OPEN_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2738 dissect_ftam_F_OPEN_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2739 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2740 F_OPEN_response_sequence, hf_index, ett_ftam_F_OPEN_response);
2741
2742 return offset;
2743 }
2744
2745
2746 static const ber_sequence_t F_CLOSE_request_sequence[] = {
2747 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2748 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2749 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2750 { NULL, 0, 0, 0, NULL }
2751 };
2752
2753 static int
dissect_ftam_F_CLOSE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2754 dissect_ftam_F_CLOSE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2755 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2756 F_CLOSE_request_sequence, hf_index, ett_ftam_F_CLOSE_request);
2757
2758 return offset;
2759 }
2760
2761
2762 static const ber_sequence_t F_CLOSE_response_sequence[] = {
2763 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2764 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
2765 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2766 { NULL, 0, 0, 0, NULL }
2767 };
2768
2769 static int
dissect_ftam_F_CLOSE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2770 dissect_ftam_F_CLOSE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2771 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2772 F_CLOSE_response_sequence, hf_index, ett_ftam_F_CLOSE_response);
2773
2774 return offset;
2775 }
2776
2777
2778 static const ber_sequence_t F_BEGIN_GROUP_request_sequence[] = {
2779 { &hf_ftam_threshold , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2780 { NULL, 0, 0, 0, NULL }
2781 };
2782
2783 static int
dissect_ftam_F_BEGIN_GROUP_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2784 dissect_ftam_F_BEGIN_GROUP_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2785 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2786 F_BEGIN_GROUP_request_sequence, hf_index, ett_ftam_F_BEGIN_GROUP_request);
2787
2788 return offset;
2789 }
2790
2791
2792 static const ber_sequence_t F_BEGIN_GROUP_response_sequence[] = {
2793 { NULL, 0, 0, 0, NULL }
2794 };
2795
2796 static int
dissect_ftam_F_BEGIN_GROUP_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2797 dissect_ftam_F_BEGIN_GROUP_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2798 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2799 F_BEGIN_GROUP_response_sequence, hf_index, ett_ftam_F_BEGIN_GROUP_response);
2800
2801 return offset;
2802 }
2803
2804
2805 static const ber_sequence_t F_END_GROUP_request_sequence[] = {
2806 { NULL, 0, 0, 0, NULL }
2807 };
2808
2809 static int
dissect_ftam_F_END_GROUP_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2810 dissect_ftam_F_END_GROUP_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2811 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2812 F_END_GROUP_request_sequence, hf_index, ett_ftam_F_END_GROUP_request);
2813
2814 return offset;
2815 }
2816
2817
2818 static const ber_sequence_t F_END_GROUP_response_sequence[] = {
2819 { NULL, 0, 0, 0, NULL }
2820 };
2821
2822 static int
dissect_ftam_F_END_GROUP_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2823 dissect_ftam_F_END_GROUP_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2824 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2825 F_END_GROUP_response_sequence, hf_index, ett_ftam_F_END_GROUP_response);
2826
2827 return offset;
2828 }
2829
2830
2831 static const ber_sequence_t F_RECOVER_request_sequence[] = {
2832 { &hf_ftam_activity_identifier, BER_CLASS_APP, 6, BER_FLAGS_NOOWNTAG, dissect_ftam_Activity_Identifier },
2833 { &hf_ftam_bulk_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2834 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
2835 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
2836 { &hf_ftam_recovefy_Point , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2837 { &hf_ftam_remove_contexts, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Abstract_Syntax_Name },
2838 { &hf_ftam_define_contexts, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_SET_OF_Abstract_Syntax_Name },
2839 { &hf_ftam_concurrent_bulk_transfer_number, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2840 { &hf_ftam_concurrent_recovery_point, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2841 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2842 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2843 { NULL, 0, 0, 0, NULL }
2844 };
2845
2846 static int
dissect_ftam_F_RECOVER_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2847 dissect_ftam_F_RECOVER_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2848 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2849 F_RECOVER_request_sequence, hf_index, ett_ftam_F_RECOVER_request);
2850
2851 return offset;
2852 }
2853
2854
2855 static const ber_sequence_t F_RECOVER_response_sequence[] = {
2856 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
2857 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
2858 { &hf_ftam_contents_type , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_ftam_Contents_Type_Attribute },
2859 { &hf_ftam_recovety_Point , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2860 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
2861 { &hf_ftam_presentation_action, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
2862 { &hf_ftam_concurrent_recovery_point, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2863 { &hf_ftam_last_transfer_end_read_request, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2864 { &hf_ftam_last_transfer_end_write_request, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2865 { NULL, 0, 0, 0, NULL }
2866 };
2867
2868 static int
dissect_ftam_F_RECOVER_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2869 dissect_ftam_F_RECOVER_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2870 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2871 F_RECOVER_response_sequence, hf_index, ett_ftam_F_RECOVER_response);
2872
2873 return offset;
2874 }
2875
2876
2877 static const value_string ftam_T_first_last_vals[] = {
2878 { 0, "first" },
2879 { 1, "last" },
2880 { 0, NULL }
2881 };
2882
2883
2884 static int
dissect_ftam_T_first_last(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2885 dissect_ftam_T_first_last(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2886 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2887 NULL);
2888
2889 return offset;
2890 }
2891
2892
2893 static const value_string ftam_T_relative_vals[] = {
2894 { 0, "previous" },
2895 { 1, "current" },
2896 { 2, "next" },
2897 { 0, NULL }
2898 };
2899
2900
2901 static int
dissect_ftam_T_relative(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2902 dissect_ftam_T_relative(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2903 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2904 NULL);
2905
2906 return offset;
2907 }
2908
2909
2910 static const value_string ftam_T_begin_end_vals[] = {
2911 { 0, "begin" },
2912 { 1, "end" },
2913 { 0, NULL }
2914 };
2915
2916
2917 static int
dissect_ftam_T_begin_end(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2918 dissect_ftam_T_begin_end(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2919 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2920 NULL);
2921
2922 return offset;
2923 }
2924
2925
2926
2927 static int
dissect_ftam_Node_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2928 dissect_ftam_Node_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2929 offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
2930
2931 return offset;
2932 }
2933
2934
2935 static const ber_sequence_t SEQUENCE_OF_Node_Name_sequence_of[1] = {
2936 { &hf_ftam_name_list_item , BER_CLASS_UNI, BER_UNI_TAG_EXTERNAL, BER_FLAGS_NOOWNTAG, dissect_ftam_Node_Name },
2937 };
2938
2939 static int
dissect_ftam_SEQUENCE_OF_Node_Name(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2940 dissect_ftam_SEQUENCE_OF_Node_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2941 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2942 SEQUENCE_OF_Node_Name_sequence_of, hf_index, ett_ftam_SEQUENCE_OF_Node_Name);
2943
2944 return offset;
2945 }
2946
2947
2948 static const value_string ftam_FADU_Identity_U_vals[] = {
2949 { 0, "first-last" },
2950 { 1, "relative" },
2951 { 2, "begin-end" },
2952 { 3, "single-name" },
2953 { 4, "name-list" },
2954 { 5, "fadu-number" },
2955 { 0, NULL }
2956 };
2957
2958 static const ber_choice_t FADU_Identity_U_choice[] = {
2959 { 0, &hf_ftam_first_last , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_T_first_last },
2960 { 1, &hf_ftam_relative , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_relative },
2961 { 2, &hf_ftam_begin_end , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_T_begin_end },
2962 { 3, &hf_ftam_single_name , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_Node_Name },
2963 { 4, &hf_ftam_name_list , BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_SEQUENCE_OF_Node_Name },
2964 { 5, &hf_ftam_fadu_number , BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
2965 { 0, NULL, 0, 0, 0, NULL }
2966 };
2967
2968 static int
dissect_ftam_FADU_Identity_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2969 dissect_ftam_FADU_Identity_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2970 offset = dissect_ber_choice(actx, tree, tvb, offset,
2971 FADU_Identity_U_choice, hf_index, ett_ftam_FADU_Identity_U,
2972 NULL);
2973
2974 return offset;
2975 }
2976
2977
2978
2979 static int
dissect_ftam_FADU_Identity(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2980 dissect_ftam_FADU_Identity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2981 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
2982 hf_index, BER_CLASS_APP, 15, FALSE, dissect_ftam_FADU_Identity_U);
2983
2984 return offset;
2985 }
2986
2987
2988 static const value_string ftam_FADU_Lock_U_vals[] = {
2989 { 0, "off" },
2990 { 1, "on" },
2991 { 0, NULL }
2992 };
2993
2994
2995 static int
dissect_ftam_FADU_Lock_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)2996 dissect_ftam_FADU_Lock_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2997 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2998 NULL);
2999
3000 return offset;
3001 }
3002
3003
3004
3005 static int
dissect_ftam_FADU_Lock(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3006 dissect_ftam_FADU_Lock(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3007 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3008 hf_index, BER_CLASS_APP, 16, TRUE, dissect_ftam_FADU_Lock_U);
3009
3010 return offset;
3011 }
3012
3013
3014 static const ber_sequence_t F_LOCATE_request_sequence[] = {
3015 { &hf_ftam_file_access_data_unit_identity, BER_CLASS_APP, 15, BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Identity },
3016 { &hf_ftam_fadu_lock , BER_CLASS_APP, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Lock },
3017 { NULL, 0, 0, 0, NULL }
3018 };
3019
3020 static int
dissect_ftam_F_LOCATE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3021 dissect_ftam_F_LOCATE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3022 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3023 F_LOCATE_request_sequence, hf_index, ett_ftam_F_LOCATE_request);
3024
3025 return offset;
3026 }
3027
3028
3029 static const ber_sequence_t F_LOCATE_response_sequence[] = {
3030 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3031 { &hf_ftam_file_access_data_unit_identity, BER_CLASS_APP, 15, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Identity },
3032 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3033 { NULL, 0, 0, 0, NULL }
3034 };
3035
3036 static int
dissect_ftam_F_LOCATE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3037 dissect_ftam_F_LOCATE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3038 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3039 F_LOCATE_response_sequence, hf_index, ett_ftam_F_LOCATE_response);
3040
3041 return offset;
3042 }
3043
3044
3045 static const ber_sequence_t F_ERASE_request_sequence[] = {
3046 { &hf_ftam_file_access_data_unit_identity, BER_CLASS_APP, 15, BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Identity },
3047 { NULL, 0, 0, 0, NULL }
3048 };
3049
3050 static int
dissect_ftam_F_ERASE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3051 dissect_ftam_F_ERASE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3052 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3053 F_ERASE_request_sequence, hf_index, ett_ftam_F_ERASE_request);
3054
3055 return offset;
3056 }
3057
3058
3059 static const ber_sequence_t F_ERASE_response_sequence[] = {
3060 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3061 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3062 { NULL, 0, 0, 0, NULL }
3063 };
3064
3065 static int
dissect_ftam_F_ERASE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3066 dissect_ftam_F_ERASE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3067 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3068 F_ERASE_response_sequence, hf_index, ett_ftam_F_ERASE_response);
3069
3070 return offset;
3071 }
3072
3073
3074 static const value_string ftam_File_PDU_vals[] = {
3075 { 6, "f-select-request" },
3076 { 7, "f-select-response" },
3077 { 8, "f-deselect-request" },
3078 { 9, "f-deselect-response" },
3079 { 10, "f-create-request" },
3080 { 11, "f-create-response" },
3081 { 12, "f-delete-request" },
3082 { 13, "f-delete-response" },
3083 { 14, "f-read-attrib-request" },
3084 { 15, "f-read-attrib-response" },
3085 { 16, "f-Change-attrib-reques" },
3086 { 17, "f-Change-attrib-respon" },
3087 { 18, "f-open-request" },
3088 { 19, "f-open-response" },
3089 { 20, "f-close-request" },
3090 { 21, "f-close-response" },
3091 { 22, "f-begin-group-request" },
3092 { 23, "f-begin-group-response" },
3093 { 24, "f-end-group-request" },
3094 { 25, "f-end-group-response" },
3095 { 26, "f-recover-request" },
3096 { 27, "f-recover-response" },
3097 { 28, "f-locate-request" },
3098 { 29, "f-locate-response" },
3099 { 30, "f-erase-request" },
3100 { 31, "f-erase-response" },
3101 { 0, NULL }
3102 };
3103
3104 static const ber_choice_t File_PDU_choice[] = {
3105 { 6, &hf_ftam_f_select_request, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_ftam_F_SELECT_request },
3106 { 7, &hf_ftam_f_select_response, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_ftam_F_SELECT_response },
3107 { 8, &hf_ftam_f_deselect_request, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_ftam_F_DESELECT_request },
3108 { 9, &hf_ftam_f_deselect_response, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_ftam_F_DESELECT_response },
3109 { 10, &hf_ftam_f_create_request, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_ftam_F_CREATE_request },
3110 { 11, &hf_ftam_f_create_response, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_ftam_F_CREATE_response },
3111 { 12, &hf_ftam_f_delete_request, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_ftam_F_DELETE_request },
3112 { 13, &hf_ftam_f_delete_response, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_ftam_F_DELETE_response },
3113 { 14, &hf_ftam_f_read_attrib_request, BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_ftam_F_READ_ATTRIB_request },
3114 { 15, &hf_ftam_f_read_attrib_response, BER_CLASS_CON, 15, BER_FLAGS_IMPLTAG, dissect_ftam_F_READ_ATTRIB_response },
3115 { 16, &hf_ftam_f_Change_attrib_reques, BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_ATTRIB_request },
3116 { 17, &hf_ftam_f_Change_attrib_respon, BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_ATTRIB_response },
3117 { 18, &hf_ftam_f_open_request , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_ftam_F_OPEN_request },
3118 { 19, &hf_ftam_f_open_response, BER_CLASS_CON, 19, BER_FLAGS_IMPLTAG, dissect_ftam_F_OPEN_response },
3119 { 20, &hf_ftam_f_close_request, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_ftam_F_CLOSE_request },
3120 { 21, &hf_ftam_f_close_response, BER_CLASS_CON, 21, BER_FLAGS_IMPLTAG, dissect_ftam_F_CLOSE_response },
3121 { 22, &hf_ftam_f_begin_group_request, BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_ftam_F_BEGIN_GROUP_request },
3122 { 23, &hf_ftam_f_begin_group_response, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_ftam_F_BEGIN_GROUP_response },
3123 { 24, &hf_ftam_f_end_group_request, BER_CLASS_CON, 24, BER_FLAGS_IMPLTAG, dissect_ftam_F_END_GROUP_request },
3124 { 25, &hf_ftam_f_end_group_response, BER_CLASS_CON, 25, BER_FLAGS_IMPLTAG, dissect_ftam_F_END_GROUP_response },
3125 { 26, &hf_ftam_f_recover_request, BER_CLASS_CON, 26, BER_FLAGS_IMPLTAG, dissect_ftam_F_RECOVER_request },
3126 { 27, &hf_ftam_f_recover_response, BER_CLASS_CON, 27, BER_FLAGS_IMPLTAG, dissect_ftam_F_RECOVER_response },
3127 { 28, &hf_ftam_f_locate_request, BER_CLASS_CON, 28, BER_FLAGS_IMPLTAG, dissect_ftam_F_LOCATE_request },
3128 { 29, &hf_ftam_f_locate_response, BER_CLASS_CON, 29, BER_FLAGS_IMPLTAG, dissect_ftam_F_LOCATE_response },
3129 { 30, &hf_ftam_f_erase_request, BER_CLASS_CON, 30, BER_FLAGS_IMPLTAG, dissect_ftam_F_ERASE_request },
3130 { 31, &hf_ftam_f_erase_response, BER_CLASS_CON, 31, BER_FLAGS_IMPLTAG, dissect_ftam_F_ERASE_response },
3131 { 0, NULL, 0, 0, 0, NULL }
3132 };
3133
3134 static int
dissect_ftam_File_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3135 dissect_ftam_File_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3136 #line 126 "./asn1/ftam/ftam.cnf"
3137 gint branch_taken;
3138
3139 offset = dissect_ber_choice(actx, tree, tvb, offset,
3140 File_PDU_choice, hf_index, ett_ftam_File_PDU,
3141 &branch_taken);
3142
3143
3144 if( (branch_taken!=-1) && ftam_File_PDU_vals[branch_taken].strptr ){
3145 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s:", ftam_File_PDU_vals[branch_taken].strptr);
3146 }
3147
3148
3149
3150 return offset;
3151 }
3152
3153
3154 static const value_string ftam_T_access_context_vals[] = {
3155 { 0, "hierarchical-all-data-units" },
3156 { 1, "hierarchical-no-data-units" },
3157 { 2, "flat-all-data-units" },
3158 { 3, "flat-one-level-data-unit" },
3159 { 4, "flat-Single-data-unit" },
3160 { 5, "unstructured-all-data-units" },
3161 { 6, "unstructured-Single-data-unit" },
3162 { 0, NULL }
3163 };
3164
3165
3166 static int
dissect_ftam_T_access_context(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3167 dissect_ftam_T_access_context(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3168 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3169 NULL);
3170
3171 return offset;
3172 }
3173
3174
3175 static const ber_sequence_t Access_Context_U_sequence[] = {
3176 { &hf_ftam_access_context , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_T_access_context },
3177 { &hf_ftam_level_number , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3178 { NULL, 0, 0, 0, NULL }
3179 };
3180
3181 static int
dissect_ftam_Access_Context_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3182 dissect_ftam_Access_Context_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3183 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3184 Access_Context_U_sequence, hf_index, ett_ftam_Access_Context_U);
3185
3186 return offset;
3187 }
3188
3189
3190
3191 static int
dissect_ftam_Access_Context(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3192 dissect_ftam_Access_Context(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3193 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3194 hf_index, BER_CLASS_APP, 1, TRUE, dissect_ftam_Access_Context_U);
3195
3196 return offset;
3197 }
3198
3199
3200 static const ber_sequence_t F_READ_request_sequence[] = {
3201 { &hf_ftam_file_access_data_unit_identity, BER_CLASS_APP, 15, BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Identity },
3202 { &hf_ftam_read_access_context, BER_CLASS_APP, 1, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Context },
3203 { &hf_ftam_fadu_lock , BER_CLASS_APP, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Lock },
3204 { &hf_ftam_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3205 { NULL, 0, 0, 0, NULL }
3206 };
3207
3208 static int
dissect_ftam_F_READ_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3209 dissect_ftam_F_READ_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3210 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3211 F_READ_request_sequence, hf_index, ett_ftam_F_READ_request);
3212
3213 return offset;
3214 }
3215
3216
3217 static const value_string ftam_T_file_access_data_unit_Operation_vals[] = {
3218 { 0, "insert" },
3219 { 1, "replace" },
3220 { 2, "extend" },
3221 { 0, NULL }
3222 };
3223
3224
3225 static int
dissect_ftam_T_file_access_data_unit_Operation(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3226 dissect_ftam_T_file_access_data_unit_Operation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3227 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3228 NULL);
3229
3230 return offset;
3231 }
3232
3233
3234 static const ber_sequence_t F_WRITE_request_sequence[] = {
3235 { &hf_ftam_file_access_data_unit_Operation, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_T_file_access_data_unit_Operation },
3236 { &hf_ftam_file_access_data_unit_identity, BER_CLASS_APP, 15, BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Identity },
3237 { &hf_ftam_fadu_lock , BER_CLASS_APP, 16, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_FADU_Lock },
3238 { &hf_ftam_transfer_number, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3239 { NULL, 0, 0, 0, NULL }
3240 };
3241
3242 static int
dissect_ftam_F_WRITE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3243 dissect_ftam_F_WRITE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3244 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3245 F_WRITE_request_sequence, hf_index, ett_ftam_F_WRITE_request);
3246
3247 return offset;
3248 }
3249
3250
3251 static const ber_sequence_t F_DATA_END_request_sequence[] = {
3252 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3253 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3254 { NULL, 0, 0, 0, NULL }
3255 };
3256
3257 static int
dissect_ftam_F_DATA_END_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3258 dissect_ftam_F_DATA_END_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3259 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3260 F_DATA_END_request_sequence, hf_index, ett_ftam_F_DATA_END_request);
3261
3262 return offset;
3263 }
3264
3265
3266 static const value_string ftam_Request_Type_U_vals[] = {
3267 { 0, "read" },
3268 { 1, "write" },
3269 { 0, NULL }
3270 };
3271
3272
3273 static int
dissect_ftam_Request_Type_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3274 dissect_ftam_Request_Type_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3275 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3276 NULL);
3277
3278 return offset;
3279 }
3280
3281
3282
3283 static int
dissect_ftam_Request_Type(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3284 dissect_ftam_Request_Type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3285 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3286 hf_index, BER_CLASS_APP, 31, TRUE, dissect_ftam_Request_Type_U);
3287
3288 return offset;
3289 }
3290
3291
3292 static const ber_sequence_t F_TRANSFER_END_request_sequence[] = {
3293 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
3294 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3295 { &hf_ftam_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3296 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3297 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3298 { NULL, 0, 0, 0, NULL }
3299 };
3300
3301 static int
dissect_ftam_F_TRANSFER_END_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3302 dissect_ftam_F_TRANSFER_END_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3303 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3304 F_TRANSFER_END_request_sequence, hf_index, ett_ftam_F_TRANSFER_END_request);
3305
3306 return offset;
3307 }
3308
3309
3310 static const ber_sequence_t F_TRANSFER_END_response_sequence[] = {
3311 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3312 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
3313 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3314 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3315 { &hf_ftam_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3316 { NULL, 0, 0, 0, NULL }
3317 };
3318
3319 static int
dissect_ftam_F_TRANSFER_END_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3320 dissect_ftam_F_TRANSFER_END_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3321 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3322 F_TRANSFER_END_response_sequence, hf_index, ett_ftam_F_TRANSFER_END_response);
3323
3324 return offset;
3325 }
3326
3327
3328 static const ber_sequence_t F_CANCEL_request_sequence[] = {
3329 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3330 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
3331 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3332 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3333 { &hf_ftam_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3334 { &hf_ftam_last_transfer_end_read_request, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3335 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3336 { &hf_ftam_last_transfer_end_write_request, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3337 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3338 { NULL, 0, 0, 0, NULL }
3339 };
3340
3341 static int
dissect_ftam_F_CANCEL_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3342 dissect_ftam_F_CANCEL_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3343 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3344 F_CANCEL_request_sequence, hf_index, ett_ftam_F_CANCEL_request);
3345
3346 return offset;
3347 }
3348
3349
3350 static const ber_sequence_t F_CANCEL_response_sequence[] = {
3351 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3352 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
3353 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3354 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3355 { &hf_ftam_transfer_number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3356 { &hf_ftam_last_transfer_end_read_request, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3357 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3358 { &hf_ftam_last_transfer_end_write_request, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3359 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3360 { NULL, 0, 0, 0, NULL }
3361 };
3362
3363 static int
dissect_ftam_F_CANCEL_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3364 dissect_ftam_F_CANCEL_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3365 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3366 F_CANCEL_response_sequence, hf_index, ett_ftam_F_CANCEL_response);
3367
3368 return offset;
3369 }
3370
3371
3372 static const ber_sequence_t F_RESTART_request_sequence[] = {
3373 { &hf_ftam_checkpoint_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3374 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3375 { &hf_ftam_transfer_number, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3376 { &hf_ftam_last_transfer_end_read_request, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3377 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3378 { &hf_ftam_last_transfer_end_write_request, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3379 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3380 { NULL, 0, 0, 0, NULL }
3381 };
3382
3383 static int
dissect_ftam_F_RESTART_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3384 dissect_ftam_F_RESTART_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3385 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3386 F_RESTART_request_sequence, hf_index, ett_ftam_F_RESTART_request);
3387
3388 return offset;
3389 }
3390
3391
3392 static const ber_sequence_t F_RESTART_response_sequence[] = {
3393 { &hf_ftam_checkpoint_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3394 { &hf_ftam_request_type , BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Type },
3395 { &hf_ftam_transfer_number, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3396 { &hf_ftam_last_transfer_end_read_request, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3397 { &hf_ftam_last_transfer_end_read_response, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3398 { &hf_ftam_last_transfer_end_write_request, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3399 { &hf_ftam_last_transfer_end_write_response, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3400 { NULL, 0, 0, 0, NULL }
3401 };
3402
3403 static int
dissect_ftam_F_RESTART_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3404 dissect_ftam_F_RESTART_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3405 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3406 F_RESTART_response_sequence, hf_index, ett_ftam_F_RESTART_response);
3407
3408 return offset;
3409 }
3410
3411
3412 static const value_string ftam_Bulk_Data_PDU_vals[] = {
3413 { 32, "f-read-request" },
3414 { 33, "f-write-request" },
3415 { 34, "f-data-end-request" },
3416 { 35, "f-transfer-end-request" },
3417 { 36, "f-transfer-end-response" },
3418 { 37, "f-cancel-request" },
3419 { 38, "f-cancel-response" },
3420 { 39, "f-restart-request" },
3421 { 40, "f-restart-response" },
3422 { 0, NULL }
3423 };
3424
3425 static const ber_choice_t Bulk_Data_PDU_choice[] = {
3426 { 32, &hf_ftam_f_read_request , BER_CLASS_CON, 32, BER_FLAGS_IMPLTAG, dissect_ftam_F_READ_request },
3427 { 33, &hf_ftam_f_write_request, BER_CLASS_CON, 33, BER_FLAGS_IMPLTAG, dissect_ftam_F_WRITE_request },
3428 { 34, &hf_ftam_f_data_end_request, BER_CLASS_CON, 34, BER_FLAGS_IMPLTAG, dissect_ftam_F_DATA_END_request },
3429 { 35, &hf_ftam_f_transfer_end_request, BER_CLASS_CON, 35, BER_FLAGS_IMPLTAG, dissect_ftam_F_TRANSFER_END_request },
3430 { 36, &hf_ftam_f_transfer_end_response, BER_CLASS_CON, 36, BER_FLAGS_IMPLTAG, dissect_ftam_F_TRANSFER_END_response },
3431 { 37, &hf_ftam_f_cancel_request, BER_CLASS_CON, 37, BER_FLAGS_IMPLTAG, dissect_ftam_F_CANCEL_request },
3432 { 38, &hf_ftam_f_cancel_response, BER_CLASS_CON, 38, BER_FLAGS_IMPLTAG, dissect_ftam_F_CANCEL_response },
3433 { 39, &hf_ftam_f_restart_request, BER_CLASS_CON, 39, BER_FLAGS_IMPLTAG, dissect_ftam_F_RESTART_request },
3434 { 40, &hf_ftam_f_restart_response, BER_CLASS_CON, 40, BER_FLAGS_IMPLTAG, dissect_ftam_F_RESTART_response },
3435 { 0, NULL, 0, 0, 0, NULL }
3436 };
3437
3438 static int
dissect_ftam_Bulk_Data_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3439 dissect_ftam_Bulk_Data_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3440 #line 135 "./asn1/ftam/ftam.cnf"
3441 gint branch_taken;
3442
3443 offset = dissect_ber_choice(actx, tree, tvb, offset,
3444 Bulk_Data_PDU_choice, hf_index, ett_ftam_Bulk_Data_PDU,
3445 &branch_taken);
3446
3447
3448 if( (branch_taken!=-1) && ftam_Bulk_Data_PDU_vals[branch_taken].strptr ){
3449 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s:", ftam_Bulk_Data_PDU_vals[branch_taken].strptr);
3450 }
3451
3452
3453
3454 return offset;
3455 }
3456
3457
3458
3459 static int
dissect_ftam_Destination_File_Directory(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3460 dissect_ftam_Destination_File_Directory(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3461 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3462 hf_index, BER_CLASS_APP, 24, FALSE, dissect_ftam_Pathname_Attribute);
3463
3464 return offset;
3465 }
3466
3467
3468 static const ber_sequence_t F_CHANGE_PREFIX_request_sequence[] = {
3469 { &hf_ftam_reset , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
3470 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
3471 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
3472 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
3473 { NULL, 0, 0, 0, NULL }
3474 };
3475
3476 static int
dissect_ftam_F_CHANGE_PREFIX_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3477 dissect_ftam_F_CHANGE_PREFIX_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3478 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3479 F_CHANGE_PREFIX_request_sequence, hf_index, ett_ftam_F_CHANGE_PREFIX_request);
3480
3481 return offset;
3482 }
3483
3484
3485 static const ber_sequence_t F_CHANGE_PREFIX_response_sequence[] = {
3486 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
3487 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
3488 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
3489 { NULL, 0, 0, 0, NULL }
3490 };
3491
3492 static int
dissect_ftam_F_CHANGE_PREFIX_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3493 dissect_ftam_F_CHANGE_PREFIX_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3494 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3495 F_CHANGE_PREFIX_response_sequence, hf_index, ett_ftam_F_CHANGE_PREFIX_response);
3496
3497 return offset;
3498 }
3499
3500
3501 static int * const Equality_Comparision_bits[] = {
3502 &hf_ftam_Equality_Comparision_no_value_available_matches,
3503 &hf_ftam_Equality_Comparision_equals_matches,
3504 NULL
3505 };
3506
3507 static int
dissect_ftam_Equality_Comparision(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3508 dissect_ftam_Equality_Comparision(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3509 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3510 Equality_Comparision_bits, 2, hf_index, ett_ftam_Equality_Comparision,
3511 NULL);
3512
3513 return offset;
3514 }
3515
3516
3517 static const value_string ftam_T_string_value_item_vals[] = {
3518 { 2, "substring-match" },
3519 { 3, "any-match" },
3520 { 4, "number-of-characters-match" },
3521 { 0, NULL }
3522 };
3523
3524 static const ber_choice_t T_string_value_item_choice[] = {
3525 { 2, &hf_ftam_substring_match, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_GraphicString },
3526 { 3, &hf_ftam_any_match , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
3527 { 4, &hf_ftam_number_of_characters_match, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3528 { 0, NULL, 0, 0, 0, NULL }
3529 };
3530
3531 static int
dissect_ftam_T_string_value_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3532 dissect_ftam_T_string_value_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3533 offset = dissect_ber_choice(actx, tree, tvb, offset,
3534 T_string_value_item_choice, hf_index, ett_ftam_T_string_value_item,
3535 NULL);
3536
3537 return offset;
3538 }
3539
3540
3541 static const ber_sequence_t T_string_value_sequence_of[1] = {
3542 { &hf_ftam_string_value_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_T_string_value_item },
3543 };
3544
3545 static int
dissect_ftam_T_string_value(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3546 dissect_ftam_T_string_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3547 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3548 T_string_value_sequence_of, hf_index, ett_ftam_T_string_value);
3549
3550 return offset;
3551 }
3552
3553
3554 static const ber_sequence_t String_Pattern_sequence[] = {
3555 { &hf_ftam_equality_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3556 { &hf_ftam_string_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_string_value },
3557 { NULL, 0, 0, 0, NULL }
3558 };
3559
3560 static int
dissect_ftam_String_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3561 dissect_ftam_String_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3562 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3563 String_Pattern_sequence, hf_index, ett_ftam_String_Pattern);
3564
3565 return offset;
3566 }
3567
3568
3569 static const value_string ftam_T_pathname_value_item_vals[] = {
3570 { 2, "string-match" },
3571 { 3, "any-match" },
3572 { 0, NULL }
3573 };
3574
3575 static const ber_choice_t T_pathname_value_item_choice[] = {
3576 { 2, &hf_ftam_string_match , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_String_Pattern },
3577 { 3, &hf_ftam_any_match , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_NULL },
3578 { 0, NULL, 0, 0, 0, NULL }
3579 };
3580
3581 static int
dissect_ftam_T_pathname_value_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3582 dissect_ftam_T_pathname_value_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3583 offset = dissect_ber_choice(actx, tree, tvb, offset,
3584 T_pathname_value_item_choice, hf_index, ett_ftam_T_pathname_value_item,
3585 NULL);
3586
3587 return offset;
3588 }
3589
3590
3591 static const ber_sequence_t T_pathname_value_sequence_of[1] = {
3592 { &hf_ftam_pathname_value_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_T_pathname_value_item },
3593 };
3594
3595 static int
dissect_ftam_T_pathname_value(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3596 dissect_ftam_T_pathname_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3597 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3598 T_pathname_value_sequence_of, hf_index, ett_ftam_T_pathname_value);
3599
3600 return offset;
3601 }
3602
3603
3604 static const ber_sequence_t Pathname_Pattern_sequence[] = {
3605 { &hf_ftam_equality_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3606 { &hf_ftam_pathname_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_pathname_value },
3607 { NULL, 0, 0, 0, NULL }
3608 };
3609
3610 static int
dissect_ftam_Pathname_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3611 dissect_ftam_Pathname_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3612 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3613 Pathname_Pattern_sequence, hf_index, ett_ftam_Pathname_Pattern);
3614
3615 return offset;
3616 }
3617
3618
3619 static int * const Relational_Comparision_bits[] = {
3620 &hf_ftam_Relational_Comparision_no_value_available_matches,
3621 &hf_ftam_Relational_Comparision_equals_matches,
3622 &hf_ftam_Relational_Comparision_less_than_matches,
3623 &hf_ftam_Relational_Comparision_greater_than_matches,
3624 NULL
3625 };
3626
3627 static int
dissect_ftam_Relational_Comparision(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3628 dissect_ftam_Relational_Comparision(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3629 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3630 Relational_Comparision_bits, 4, hf_index, ett_ftam_Relational_Comparision,
3631 NULL);
3632
3633 return offset;
3634 }
3635
3636
3637 static const ber_sequence_t Integer_Pattern_sequence[] = {
3638 { &hf_ftam_relational_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Relational_Comparision },
3639 { &hf_ftam_integer_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
3640 { NULL, 0, 0, 0, NULL }
3641 };
3642
3643 static int
dissect_ftam_Integer_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3644 dissect_ftam_Integer_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3645 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3646 Integer_Pattern_sequence, hf_index, ett_ftam_Integer_Pattern);
3647
3648 return offset;
3649 }
3650
3651
3652
3653 static int
dissect_ftam_BIT_STRING(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3654 dissect_ftam_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3655 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3656 NULL, 0, hf_index, -1,
3657 NULL);
3658
3659 return offset;
3660 }
3661
3662
3663 static const ber_sequence_t Bitstring_Pattern_sequence[] = {
3664 { &hf_ftam_equality_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3665 { &hf_ftam_match_bitstring, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_BIT_STRING },
3666 { &hf_ftam_significance_bitstring, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ftam_BIT_STRING },
3667 { NULL, 0, 0, 0, NULL }
3668 };
3669
3670 static int
dissect_ftam_Bitstring_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3671 dissect_ftam_Bitstring_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3672 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3673 Bitstring_Pattern_sequence, hf_index, ett_ftam_Bitstring_Pattern);
3674
3675 return offset;
3676 }
3677
3678
3679 static const ber_sequence_t Object_Identifier_Pattern_sequence[] = {
3680 { &hf_ftam_equality_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3681 { &hf_ftam_object_identifier_value, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_OBJECT_IDENTIFIER },
3682 { NULL, 0, 0, 0, NULL }
3683 };
3684
3685 static int
dissect_ftam_Object_Identifier_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3686 dissect_ftam_Object_Identifier_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3687 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3688 Object_Identifier_Pattern_sequence, hf_index, ett_ftam_Object_Identifier_Pattern);
3689
3690 return offset;
3691 }
3692
3693
3694 static const ber_sequence_t T_constraint_set_abstract_Syntax_Pattern_sequence[] = {
3695 { &hf_ftam_constraint_Set_Pattern, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Object_Identifier_Pattern },
3696 { &hf_ftam_abstract_Syntax_Pattern, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Object_Identifier_Pattern },
3697 { NULL, 0, 0, 0, NULL }
3698 };
3699
3700 static int
dissect_ftam_T_constraint_set_abstract_Syntax_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3701 dissect_ftam_T_constraint_set_abstract_Syntax_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3702 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3703 T_constraint_set_abstract_Syntax_Pattern_sequence, hf_index, ett_ftam_T_constraint_set_abstract_Syntax_Pattern);
3704
3705 return offset;
3706 }
3707
3708
3709 static const value_string ftam_Contents_Type_Pattern_vals[] = {
3710 { 0, "document-type-Pattern" },
3711 { 1, "constraint-set-abstract-Syntax-Pattern" },
3712 { 0, NULL }
3713 };
3714
3715 static const ber_choice_t Contents_Type_Pattern_choice[] = {
3716 { 0, &hf_ftam_document_type_Pattern, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Object_Identifier_Pattern },
3717 { 1, &hf_ftam_constraint_set_abstract_Syntax_Pattern, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_constraint_set_abstract_Syntax_Pattern },
3718 { 0, NULL, 0, 0, 0, NULL }
3719 };
3720
3721 static int
dissect_ftam_Contents_Type_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3722 dissect_ftam_Contents_Type_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3723 offset = dissect_ber_choice(actx, tree, tvb, offset,
3724 Contents_Type_Pattern_choice, hf_index, ett_ftam_Contents_Type_Pattern,
3725 NULL);
3726
3727 return offset;
3728 }
3729
3730
3731 static const ber_sequence_t Date_and_Time_Pattern_sequence[] = {
3732 { &hf_ftam_relational_camparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3733 { &hf_ftam_time_and_date_value, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_GeneralizedTime },
3734 { NULL, 0, 0, 0, NULL }
3735 };
3736
3737 static int
dissect_ftam_Date_and_Time_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3738 dissect_ftam_Date_and_Time_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3739 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3740 Date_and_Time_Pattern_sequence, hf_index, ett_ftam_Date_and_Time_Pattern);
3741
3742 return offset;
3743 }
3744
3745
3746
3747 static int
dissect_ftam_User_Identity_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3748 dissect_ftam_User_Identity_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3749 offset = dissect_ftam_String_Pattern(implicit_tag, tvb, offset, actx, tree, hf_index);
3750
3751 return offset;
3752 }
3753
3754
3755 static const ber_sequence_t Boolean_Pattern_sequence[] = {
3756 { &hf_ftam_equality_comparision, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Equality_Comparision },
3757 { &hf_ftam_boolean_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
3758 { NULL, 0, 0, 0, NULL }
3759 };
3760
3761 static int
dissect_ftam_Boolean_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3762 dissect_ftam_Boolean_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3763 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3764 Boolean_Pattern_sequence, hf_index, ett_ftam_Boolean_Pattern);
3765
3766 return offset;
3767 }
3768
3769
3770
3771 static int
dissect_ftam_T_attribute_extension_attribute_identifier(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3772 dissect_ftam_T_attribute_extension_attribute_identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3773 offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &actx->external.direct_reference);
3774
3775 return offset;
3776 }
3777
3778
3779
3780 static int
dissect_ftam_T_extension_attribute_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3781 dissect_ftam_T_extension_attribute_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3782 #line 107 "./asn1/ftam/ftam.cnf"
3783 if (actx->external.direct_reference) {
3784 offset=call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL);
3785 }
3786
3787
3788
3789 return offset;
3790 }
3791
3792
3793 static const ber_sequence_t T_extension_set_attribute_Patterns_item_sequence[] = {
3794 { &hf_ftam_attribute_extension_attribute_identifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ftam_T_attribute_extension_attribute_identifier },
3795 { &hf_ftam_extension_attribute_Pattern, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_ftam_T_extension_attribute_Pattern },
3796 { NULL, 0, 0, 0, NULL }
3797 };
3798
3799 static int
dissect_ftam_T_extension_set_attribute_Patterns_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3800 dissect_ftam_T_extension_set_attribute_Patterns_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3801 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3802 T_extension_set_attribute_Patterns_item_sequence, hf_index, ett_ftam_T_extension_set_attribute_Patterns_item);
3803
3804 return offset;
3805 }
3806
3807
3808 static const ber_sequence_t T_extension_set_attribute_Patterns_sequence_of[1] = {
3809 { &hf_ftam_extension_set_attribute_Patterns_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_T_extension_set_attribute_Patterns_item },
3810 };
3811
3812 static int
dissect_ftam_T_extension_set_attribute_Patterns(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3813 dissect_ftam_T_extension_set_attribute_Patterns(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3814 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3815 T_extension_set_attribute_Patterns_sequence_of, hf_index, ett_ftam_T_extension_set_attribute_Patterns);
3816
3817 return offset;
3818 }
3819
3820
3821 static const ber_sequence_t Attribute_Extensions_Pattern_item_sequence[] = {
3822 { &hf_ftam_extension_set_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Extension_Set_Identifier },
3823 { &hf_ftam_extension_set_attribute_Patterns, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_extension_set_attribute_Patterns },
3824 { NULL, 0, 0, 0, NULL }
3825 };
3826
3827 static int
dissect_ftam_Attribute_Extensions_Pattern_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3828 dissect_ftam_Attribute_Extensions_Pattern_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3829 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3830 Attribute_Extensions_Pattern_item_sequence, hf_index, ett_ftam_Attribute_Extensions_Pattern_item);
3831
3832 return offset;
3833 }
3834
3835
3836 static const ber_sequence_t Attribute_Extensions_Pattern_sequence_of[1] = {
3837 { &hf_ftam_Attribute_Extensions_Pattern_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Extensions_Pattern_item },
3838 };
3839
3840 static int
dissect_ftam_Attribute_Extensions_Pattern(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3841 dissect_ftam_Attribute_Extensions_Pattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3842 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3843 Attribute_Extensions_Pattern_sequence_of, hf_index, ett_ftam_Attribute_Extensions_Pattern);
3844
3845 return offset;
3846 }
3847
3848
3849 static const value_string ftam_AND_Set_item_vals[] = {
3850 { 0, "pathname-Pattern" },
3851 { 18, "object-type-Pattern" },
3852 { 1, "permitted-actions-Pattern" },
3853 { 2, "contents-type-Pattern" },
3854 { 19, "linked-Object-Pattern" },
3855 { 23, "child-objects-Pattern" },
3856 { 20, "primaty-pathname-Pattern" },
3857 { 3, "storage-account-Pattern" },
3858 { 4, "date-and-time-of-creation-Pattern" },
3859 { 5, "date-and-time-of-last-modification-Pattern" },
3860 { 6, "date-and-time-of-last-read-access-Pattern" },
3861 { 7, "date-and-time-of-last-attribute-modification-Pattern" },
3862 { 8, "identity-of-creator-Pattern" },
3863 { 9, "identity-of-last-modifier-Pattern" },
3864 { 10, "identity-of-last-reader-Pattern" },
3865 { 11, "identity-of-last-attribute-modifier-Pattern" },
3866 { 12, "object-availabiiity-Pattern" },
3867 { 13, "object-size-Pattern" },
3868 { 14, "future-object-size-Pattern" },
3869 { 16, "legal-quailfication-Pattern" },
3870 { 22, "attribute-extensions-pattern" },
3871 { 0, NULL }
3872 };
3873
3874 static const ber_choice_t AND_Set_item_choice[] = {
3875 { 0, &hf_ftam_pathname_Pattern, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname_Pattern },
3876 { 18, &hf_ftam_object_type_Pattern, BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_ftam_Integer_Pattern },
3877 { 1, &hf_ftam_permitted_actions_Pattern, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Bitstring_Pattern },
3878 { 2, &hf_ftam_contents_type_Pattern, BER_CLASS_CON, 2, 0, dissect_ftam_Contents_Type_Pattern },
3879 { 19, &hf_ftam_linked_Object_Pattern, BER_CLASS_CON, 19, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname_Pattern },
3880 { 23, &hf_ftam_child_objects_Pattern, BER_CLASS_CON, 23, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname_Pattern },
3881 { 20, &hf_ftam_primaty_pathname_Pattern, BER_CLASS_CON, 20, BER_FLAGS_IMPLTAG, dissect_ftam_Pathname_Pattern },
3882 { 3, &hf_ftam_storage_account_Pattern, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_ftam_String_Pattern },
3883 { 4, &hf_ftam_date_and_time_of_creation_Pattern, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_ftam_Date_and_Time_Pattern },
3884 { 5, &hf_ftam_date_and_time_of_last_modification_Pattern, BER_CLASS_CON, 5, BER_FLAGS_IMPLTAG, dissect_ftam_Date_and_Time_Pattern },
3885 { 6, &hf_ftam_date_and_time_of_last_read_access_Pattern, BER_CLASS_CON, 6, BER_FLAGS_IMPLTAG, dissect_ftam_Date_and_Time_Pattern },
3886 { 7, &hf_ftam_date_and_time_of_last_attribute_modification_Pattern, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_ftam_Date_and_Time_Pattern },
3887 { 8, &hf_ftam_identity_of_creator_Pattern, BER_CLASS_CON, 8, BER_FLAGS_IMPLTAG, dissect_ftam_User_Identity_Pattern },
3888 { 9, &hf_ftam_identity_of_last_modifier_Pattern, BER_CLASS_CON, 9, BER_FLAGS_IMPLTAG, dissect_ftam_User_Identity_Pattern },
3889 { 10, &hf_ftam_identity_of_last_reader_Pattern, BER_CLASS_CON, 10, BER_FLAGS_IMPLTAG, dissect_ftam_User_Identity_Pattern },
3890 { 11, &hf_ftam_identity_of_last_attribute_modifier_Pattern, BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_ftam_User_Identity_Pattern },
3891 { 12, &hf_ftam_object_availabiiity_Pattern, BER_CLASS_CON, 12, BER_FLAGS_IMPLTAG, dissect_ftam_Boolean_Pattern },
3892 { 13, &hf_ftam_object_size_Pattern, BER_CLASS_CON, 13, BER_FLAGS_IMPLTAG, dissect_ftam_Integer_Pattern },
3893 { 14, &hf_ftam_future_object_size_Pattern, BER_CLASS_CON, 14, BER_FLAGS_IMPLTAG, dissect_ftam_Integer_Pattern },
3894 { 16, &hf_ftam_legal_quailfication_Pattern, BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_ftam_String_Pattern },
3895 { 22, &hf_ftam_attribute_extensions_pattern, BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extensions_Pattern },
3896 { 0, NULL, 0, 0, 0, NULL }
3897 };
3898
3899 static int
dissect_ftam_AND_Set_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3900 dissect_ftam_AND_Set_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3901 offset = dissect_ber_choice(actx, tree, tvb, offset,
3902 AND_Set_item_choice, hf_index, ett_ftam_AND_Set_item,
3903 NULL);
3904
3905 return offset;
3906 }
3907
3908
3909 static const ber_sequence_t AND_Set_sequence_of[1] = {
3910 { &hf_ftam_AND_Set_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_AND_Set_item },
3911 };
3912
3913 static int
dissect_ftam_AND_Set(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3914 dissect_ftam_AND_Set(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3915 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3916 AND_Set_sequence_of, hf_index, ett_ftam_AND_Set);
3917
3918 return offset;
3919 }
3920
3921
3922 static const ber_sequence_t OR_Set_sequence_of[1] = {
3923 { &hf_ftam_OR_Set_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_AND_Set },
3924 };
3925
3926 static int
dissect_ftam_OR_Set(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3927 dissect_ftam_OR_Set(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3928 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3929 OR_Set_sequence_of, hf_index, ett_ftam_OR_Set);
3930
3931 return offset;
3932 }
3933
3934
3935
3936 static int
dissect_ftam_Attribute_Value_Assertions(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3937 dissect_ftam_Attribute_Value_Assertions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3938 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3939 hf_index, BER_CLASS_APP, 26, TRUE, dissect_ftam_OR_Set);
3940
3941 return offset;
3942 }
3943
3944
3945 static const value_string ftam_T_retrieval_scope_vals[] = {
3946 { 0, "child" },
3947 { 1, "all" },
3948 { 0, NULL }
3949 };
3950
3951
3952 static int
dissect_ftam_T_retrieval_scope(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3953 dissect_ftam_T_retrieval_scope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3954 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3955 NULL);
3956
3957 return offset;
3958 }
3959
3960
3961 static const ber_sequence_t T__untag_item_sequence[] = {
3962 { &hf_ftam_root_directory , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
3963 { &hf_ftam_retrieval_scope, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_T_retrieval_scope },
3964 { NULL, 0, 0, 0, NULL }
3965 };
3966
3967 static int
dissect_ftam_T__untag_item(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3968 dissect_ftam_T__untag_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3969 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3970 T__untag_item_sequence, hf_index, ett_ftam_T__untag_item);
3971
3972 return offset;
3973 }
3974
3975
3976 static const ber_sequence_t Scope_U_sequence_of[1] = {
3977 { &hf_ftam__untag_item_03 , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_T__untag_item },
3978 };
3979
3980 static int
dissect_ftam_Scope_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3981 dissect_ftam_Scope_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3982 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3983 Scope_U_sequence_of, hf_index, ett_ftam_Scope_U);
3984
3985 return offset;
3986 }
3987
3988
3989
3990 static int
dissect_ftam_Scope(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)3991 dissect_ftam_Scope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3992 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
3993 hf_index, BER_CLASS_APP, 28, TRUE, dissect_ftam_Scope_U);
3994
3995 return offset;
3996 }
3997
3998
3999 static const ber_sequence_t F_LIST_request_sequence[] = {
4000 { &hf_ftam_attribute_value_asset_tions, BER_CLASS_APP, 26, BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Value_Assertions },
4001 { &hf_ftam_scope , BER_CLASS_APP, 28, BER_FLAGS_NOOWNTAG, dissect_ftam_Scope },
4002 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4003 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4004 { &hf_ftam_attribute_names, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Names },
4005 { &hf_ftam_attribute_extension_names, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extension_Names },
4006 { NULL, 0, 0, 0, NULL }
4007 };
4008
4009 static int
dissect_ftam_F_LIST_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4010 dissect_ftam_F_LIST_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4011 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4012 F_LIST_request_sequence, hf_index, ett_ftam_F_LIST_request);
4013
4014 return offset;
4015 }
4016
4017
4018 static const ber_sequence_t SEQUENCE_OF_Read_Attributes_sequence_of[1] = {
4019 { &hf_ftam__untag_item_04 , BER_CLASS_APP, 18, BER_FLAGS_NOOWNTAG, dissect_ftam_Read_Attributes },
4020 };
4021
4022 static int
dissect_ftam_SEQUENCE_OF_Read_Attributes(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4023 dissect_ftam_SEQUENCE_OF_Read_Attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4024 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4025 SEQUENCE_OF_Read_Attributes_sequence_of, hf_index, ett_ftam_SEQUENCE_OF_Read_Attributes);
4026
4027 return offset;
4028 }
4029
4030
4031
4032 static int
dissect_ftam_Objects_Attributes_List(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4033 dissect_ftam_Objects_Attributes_List(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4034 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
4035 hf_index, BER_CLASS_APP, 25, TRUE, dissect_ftam_SEQUENCE_OF_Read_Attributes);
4036
4037 return offset;
4038 }
4039
4040
4041 static const ber_sequence_t F_LIST_response_sequence[] = {
4042 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4043 { &hf_ftam_objects_attributes_list, BER_CLASS_APP, 25, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Objects_Attributes_List },
4044 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4045 { NULL, 0, 0, 0, NULL }
4046 };
4047
4048 static int
dissect_ftam_F_LIST_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4049 dissect_ftam_F_LIST_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4050 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4051 F_LIST_response_sequence, hf_index, ett_ftam_F_LIST_response);
4052
4053 return offset;
4054 }
4055
4056
4057 static const ber_sequence_t F_GROUP_SELECT_request_sequence[] = {
4058 { &hf_ftam_attribute_value_assertions, BER_CLASS_APP, 26, BER_FLAGS_NOOWNTAG, dissect_ftam_Attribute_Value_Assertions },
4059 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
4060 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4061 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4062 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
4063 { &hf_ftam_maximum_set_size, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
4064 { &hf_ftam_scope , BER_CLASS_APP, 28, BER_FLAGS_NOOWNTAG, dissect_ftam_Scope },
4065 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
4066 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4067 { NULL, 0, 0, 0, NULL }
4068 };
4069
4070 static int
dissect_ftam_F_GROUP_SELECT_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4071 dissect_ftam_F_GROUP_SELECT_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4072 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4073 F_GROUP_SELECT_request_sequence, hf_index, ett_ftam_F_GROUP_SELECT_request);
4074
4075 return offset;
4076 }
4077
4078
4079 static const ber_sequence_t F_GROUP_SELECT_response_sequence[] = {
4080 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4081 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4082 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4083 { NULL, 0, 0, 0, NULL }
4084 };
4085
4086 static int
dissect_ftam_F_GROUP_SELECT_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4087 dissect_ftam_F_GROUP_SELECT_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4088 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4089 F_GROUP_SELECT_response_sequence, hf_index, ett_ftam_F_GROUP_SELECT_response);
4090
4091 return offset;
4092 }
4093
4094
4095 static const value_string ftam_Request_Operation_Result_U_vals[] = {
4096 { 0, "summary" },
4097 { 1, "fiii-list" },
4098 { 0, NULL }
4099 };
4100
4101
4102 static int
dissect_ftam_Request_Operation_Result_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4103 dissect_ftam_Request_Operation_Result_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4104 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4105 NULL);
4106
4107 return offset;
4108 }
4109
4110
4111
4112 static int
dissect_ftam_Request_Operation_Result(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4113 dissect_ftam_Request_Operation_Result(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4114 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
4115 hf_index, BER_CLASS_APP, 31, TRUE, dissect_ftam_Request_Operation_Result_U);
4116
4117 return offset;
4118 }
4119
4120
4121 static const ber_sequence_t F_GROUP_DELETE_request_sequence[] = {
4122 { &hf_ftam_request_Operation_result, BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Operation_Result },
4123 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4124 { NULL, 0, 0, 0, NULL }
4125 };
4126
4127 static int
dissect_ftam_F_GROUP_DELETE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4128 dissect_ftam_F_GROUP_DELETE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4129 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4130 F_GROUP_DELETE_request_sequence, hf_index, ett_ftam_F_GROUP_DELETE_request);
4131
4132 return offset;
4133 }
4134
4135
4136 static const ber_sequence_t SEQUENCE_OF_Pathname_sequence_of[1] = {
4137 { &hf_ftam_success_Object_names_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ftam_Pathname },
4138 };
4139
4140 static int
dissect_ftam_SEQUENCE_OF_Pathname(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4141 dissect_ftam_SEQUENCE_OF_Pathname(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4142 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
4143 SEQUENCE_OF_Pathname_sequence_of, hf_index, ett_ftam_SEQUENCE_OF_Pathname);
4144
4145 return offset;
4146 }
4147
4148
4149 static const value_string ftam_Operation_Result_U_vals[] = {
4150 { 0, "success-Object-count" },
4151 { 1, "success-Object-names" },
4152 { 0, NULL }
4153 };
4154
4155 static const ber_choice_t Operation_Result_U_choice[] = {
4156 { 0, &hf_ftam_success_Object_count, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_INTEGER },
4157 { 1, &hf_ftam_success_Object_names, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_SEQUENCE_OF_Pathname },
4158 { 0, NULL, 0, 0, 0, NULL }
4159 };
4160
4161 static int
dissect_ftam_Operation_Result_U(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4162 dissect_ftam_Operation_Result_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4163 offset = dissect_ber_choice(actx, tree, tvb, offset,
4164 Operation_Result_U_choice, hf_index, ett_ftam_Operation_Result_U,
4165 NULL);
4166
4167 return offset;
4168 }
4169
4170
4171
4172 static int
dissect_ftam_Operation_Result(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4173 dissect_ftam_Operation_Result(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4174 offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset,
4175 hf_index, BER_CLASS_APP, 30, FALSE, dissect_ftam_Operation_Result_U);
4176
4177 return offset;
4178 }
4179
4180
4181 static const ber_sequence_t F_GROUP_DELETE_response_sequence[] = {
4182 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4183 { &hf_ftam_charging , BER_CLASS_APP, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Charging },
4184 { &hf_ftam_operation_result, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Operation_Result },
4185 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4186 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4187 { NULL, 0, 0, 0, NULL }
4188 };
4189
4190 static int
dissect_ftam_F_GROUP_DELETE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4191 dissect_ftam_F_GROUP_DELETE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4192 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4193 F_GROUP_DELETE_response_sequence, hf_index, ett_ftam_F_GROUP_DELETE_response);
4194
4195 return offset;
4196 }
4197
4198
4199 static const value_string ftam_Error_Action_vals[] = {
4200 { 0, "terminate" },
4201 { 1, "continue" },
4202 { 0, NULL }
4203 };
4204
4205
4206 static int
dissect_ftam_Error_Action(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4207 dissect_ftam_Error_Action(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4208 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4209 NULL);
4210
4211 return offset;
4212 }
4213
4214
4215 static const ber_sequence_t F_GROUP_MOVE_request_sequence[] = {
4216 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4217 { &hf_ftam_override , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Override },
4218 { &hf_ftam_error_action , BER_CLASS_CON, 11, BER_FLAGS_IMPLTAG, dissect_ftam_Error_Action },
4219 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4220 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4221 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4222 { &hf_ftam_request_Operation_result, BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Operation_Result },
4223 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4224 { NULL, 0, 0, 0, NULL }
4225 };
4226
4227 static int
dissect_ftam_F_GROUP_MOVE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4228 dissect_ftam_F_GROUP_MOVE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4229 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4230 F_GROUP_MOVE_request_sequence, hf_index, ett_ftam_F_GROUP_MOVE_request);
4231
4232 return offset;
4233 }
4234
4235
4236 static const ber_sequence_t F_GROUP_MOVE_response_sequence[] = {
4237 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4238 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4239 { &hf_ftam_operation_result, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Operation_Result },
4240 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4241 { NULL, 0, 0, 0, NULL }
4242 };
4243
4244 static int
dissect_ftam_F_GROUP_MOVE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4245 dissect_ftam_F_GROUP_MOVE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4246 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4247 F_GROUP_MOVE_response_sequence, hf_index, ett_ftam_F_GROUP_MOVE_response);
4248
4249 return offset;
4250 }
4251
4252
4253 static const ber_sequence_t F_GROUP_COPY_request_sequence[] = {
4254 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4255 { &hf_ftam_override , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Override },
4256 { &hf_ftam_error_action , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Error_Action },
4257 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4258 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4259 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4260 { &hf_ftam_request_Operation_result, BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Operation_Result },
4261 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4262 { NULL, 0, 0, 0, NULL }
4263 };
4264
4265 static int
dissect_ftam_F_GROUP_COPY_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4266 dissect_ftam_F_GROUP_COPY_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4267 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4268 F_GROUP_COPY_request_sequence, hf_index, ett_ftam_F_GROUP_COPY_request);
4269
4270 return offset;
4271 }
4272
4273
4274 static const ber_sequence_t F_GROUP_COPY_response_sequence[] = {
4275 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4276 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4277 { &hf_ftam_operation_result, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Operation_Result },
4278 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4279 { NULL, 0, 0, 0, NULL }
4280 };
4281
4282 static int
dissect_ftam_F_GROUP_COPY_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4283 dissect_ftam_F_GROUP_COPY_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4284 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4285 F_GROUP_COPY_response_sequence, hf_index, ett_ftam_F_GROUP_COPY_response);
4286
4287 return offset;
4288 }
4289
4290
4291 static const ber_sequence_t F_GROUP_LIST_request_sequence[] = {
4292 { &hf_ftam_attribute_names, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Names },
4293 { &hf_ftam_attribute_extension_names, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extension_Names },
4294 { NULL, 0, 0, 0, NULL }
4295 };
4296
4297 static int
dissect_ftam_F_GROUP_LIST_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4298 dissect_ftam_F_GROUP_LIST_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4299 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4300 F_GROUP_LIST_request_sequence, hf_index, ett_ftam_F_GROUP_LIST_request);
4301
4302 return offset;
4303 }
4304
4305
4306 static const ber_sequence_t F_GROUP_LIST_response_sequence[] = {
4307 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4308 { &hf_ftam_objects_attributes_list, BER_CLASS_APP, 25, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Objects_Attributes_List },
4309 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4310 { NULL, 0, 0, 0, NULL }
4311 };
4312
4313 static int
dissect_ftam_F_GROUP_LIST_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4314 dissect_ftam_F_GROUP_LIST_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4315 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4316 F_GROUP_LIST_response_sequence, hf_index, ett_ftam_F_GROUP_LIST_response);
4317
4318 return offset;
4319 }
4320
4321
4322 static const ber_sequence_t F_GROUP_CHANGE_ATTRIB_request_sequence[] = {
4323 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4324 { &hf_ftam_error_action , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ftam_Error_Action },
4325 { &hf_ftam_request_Operation_result, BER_CLASS_APP, 31, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Request_Operation_Result },
4326 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4327 { NULL, 0, 0, 0, NULL }
4328 };
4329
4330 static int
dissect_ftam_F_GROUP_CHANGE_ATTRIB_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4331 dissect_ftam_F_GROUP_CHANGE_ATTRIB_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4332 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4333 F_GROUP_CHANGE_ATTRIB_request_sequence, hf_index, ett_ftam_F_GROUP_CHANGE_ATTRIB_request);
4334
4335 return offset;
4336 }
4337
4338
4339 static const ber_sequence_t F_GROUP_CHANGE_ATTRIB_response_sequence[] = {
4340 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4341 { &hf_ftam_operation_result, BER_CLASS_APP, 30, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Operation_Result },
4342 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4343 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4344 { NULL, 0, 0, 0, NULL }
4345 };
4346
4347 static int
dissect_ftam_F_GROUP_CHANGE_ATTRIB_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4348 dissect_ftam_F_GROUP_CHANGE_ATTRIB_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4349 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4350 F_GROUP_CHANGE_ATTRIB_response_sequence, hf_index, ett_ftam_F_GROUP_CHANGE_ATTRIB_response);
4351
4352 return offset;
4353 }
4354
4355
4356 static const ber_sequence_t F_SELECT_ANOTHER_request_sequence[] = {
4357 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4358 { NULL, 0, 0, 0, NULL }
4359 };
4360
4361 static int
dissect_ftam_F_SELECT_ANOTHER_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4362 dissect_ftam_F_SELECT_ANOTHER_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4363 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4364 F_SELECT_ANOTHER_request_sequence, hf_index, ett_ftam_F_SELECT_ANOTHER_request);
4365
4366 return offset;
4367 }
4368
4369
4370 static const ber_sequence_t F_SELECT_ANOTHER_response_sequence[] = {
4371 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
4372 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4373 { &hf_ftam_last_member_indicator, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_BOOLEAN },
4374 { &hf_ftam_referent_indicator, BER_CLASS_APP, 29, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Referent_Indicator },
4375 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4376 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4377 { NULL, 0, 0, 0, NULL }
4378 };
4379
4380 static int
dissect_ftam_F_SELECT_ANOTHER_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4381 dissect_ftam_F_SELECT_ANOTHER_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4382 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4383 F_SELECT_ANOTHER_response_sequence, hf_index, ett_ftam_F_SELECT_ANOTHER_response);
4384
4385 return offset;
4386 }
4387
4388
4389 static const ber_sequence_t F_CREATE_DIRECTORY_request_sequence[] = {
4390 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
4391 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4392 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
4393 { &hf_ftam_shared_ASE_infonnation, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4394 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
4395 { NULL, 0, 0, 0, NULL }
4396 };
4397
4398 static int
dissect_ftam_F_CREATE_DIRECTORY_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4399 dissect_ftam_F_CREATE_DIRECTORY_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4400 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4401 F_CREATE_DIRECTORY_request_sequence, hf_index, ett_ftam_F_CREATE_DIRECTORY_request);
4402
4403 return offset;
4404 }
4405
4406
4407 static const ber_sequence_t F_CREATE_DIRECTORY_response_sequence[] = {
4408 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
4409 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4410 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
4411 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4412 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4413 { NULL, 0, 0, 0, NULL }
4414 };
4415
4416 static int
dissect_ftam_F_CREATE_DIRECTORY_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4417 dissect_ftam_F_CREATE_DIRECTORY_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4418 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4419 F_CREATE_DIRECTORY_response_sequence, hf_index, ett_ftam_F_CREATE_DIRECTORY_response);
4420
4421 return offset;
4422 }
4423
4424
4425 static const ber_sequence_t F_LINK_request_sequence[] = {
4426 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
4427 { &hf_ftam_target_object , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
4428 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4429 { &hf_ftam_requested_access, BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Request },
4430 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4431 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4432 { &hf_ftam_concurrency_control, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Concurrency_Control },
4433 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4434 { &hf_ftam_account , BER_CLASS_APP, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Account },
4435 { NULL, 0, 0, 0, NULL }
4436 };
4437
4438 static int
dissect_ftam_F_LINK_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4439 dissect_ftam_F_LINK_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4440 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4441 F_LINK_request_sequence, hf_index, ett_ftam_F_LINK_request);
4442
4443 return offset;
4444 }
4445
4446
4447 static const ber_sequence_t F_LINK_response_sequence[] = {
4448 { &hf_ftam_state_result , BER_CLASS_APP, 21, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_State_Result },
4449 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4450 { &hf_ftam_initial_attributes, BER_CLASS_APP, 12, BER_FLAGS_NOOWNTAG, dissect_ftam_Create_Attributes },
4451 { &hf_ftam_target_Object , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ftam_Pathname_Attribute },
4452 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4453 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4454 { NULL, 0, 0, 0, NULL }
4455 };
4456
4457 static int
dissect_ftam_F_LINK_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4458 dissect_ftam_F_LINK_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4459 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4460 F_LINK_response_sequence, hf_index, ett_ftam_F_LINK_response);
4461
4462 return offset;
4463 }
4464
4465
4466 static const ber_sequence_t F_UNLINK_request_sequence[] = {
4467 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4468 { NULL, 0, 0, 0, NULL }
4469 };
4470
4471 static int
dissect_ftam_F_UNLINK_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4472 dissect_ftam_F_UNLINK_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4473 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4474 F_UNLINK_request_sequence, hf_index, ett_ftam_F_UNLINK_request);
4475
4476 return offset;
4477 }
4478
4479
4480 static const ber_sequence_t F_UNLINK_response_sequence[] = {
4481 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4482 { &hf_ftam_shared_ASE_information, BER_CLASS_APP, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Shared_ASE_Information },
4483 { &hf_ftam_charging , BER_CLASS_APP, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Charging },
4484 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4485 { NULL, 0, 0, 0, NULL }
4486 };
4487
4488 static int
dissect_ftam_F_UNLINK_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4489 dissect_ftam_F_UNLINK_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4490 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4491 F_UNLINK_response_sequence, hf_index, ett_ftam_F_UNLINK_response);
4492
4493 return offset;
4494 }
4495
4496
4497 static const ber_sequence_t F_READ_LINK_ATTRIB_request_sequence[] = {
4498 { &hf_ftam_attribute_names, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Names },
4499 { &hf_ftam_attribute_extension_names, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Attribute_Extension_Names },
4500 { NULL, 0, 0, 0, NULL }
4501 };
4502
4503 static int
dissect_ftam_F_READ_LINK_ATTRIB_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4504 dissect_ftam_F_READ_LINK_ATTRIB_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4505 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4506 F_READ_LINK_ATTRIB_request_sequence, hf_index, ett_ftam_F_READ_LINK_ATTRIB_request);
4507
4508 return offset;
4509 }
4510
4511
4512 static const ber_sequence_t F_READ_LINK_ATTRIB_response_sequence[] = {
4513 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4514 { &hf_ftam_read_link_attributes, BER_CLASS_APP, 18, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Read_Attributes },
4515 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4516 { NULL, 0, 0, 0, NULL }
4517 };
4518
4519 static int
dissect_ftam_F_READ_LINK_ATTRIB_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4520 dissect_ftam_F_READ_LINK_ATTRIB_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4521 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4522 F_READ_LINK_ATTRIB_response_sequence, hf_index, ett_ftam_F_READ_LINK_ATTRIB_response);
4523
4524 return offset;
4525 }
4526
4527
4528 static const ber_sequence_t F_CHANGE_LINK_ATTRIB_request_sequence[] = {
4529 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4530 { NULL, 0, 0, 0, NULL }
4531 };
4532
4533 static int
dissect_ftam_F_CHANGE_LINK_ATTRIB_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4534 dissect_ftam_F_CHANGE_LINK_ATTRIB_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4535 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4536 F_CHANGE_LINK_ATTRIB_request_sequence, hf_index, ett_ftam_F_CHANGE_LINK_ATTRIB_request);
4537
4538 return offset;
4539 }
4540
4541
4542 static const ber_sequence_t F_CHANGE_LINK_ATTRIB_response_sequence[] = {
4543 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4544 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4545 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4546 { NULL, 0, 0, 0, NULL }
4547 };
4548
4549 static int
dissect_ftam_F_CHANGE_LINK_ATTRIB_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4550 dissect_ftam_F_CHANGE_LINK_ATTRIB_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4551 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4552 F_CHANGE_LINK_ATTRIB_response_sequence, hf_index, ett_ftam_F_CHANGE_LINK_ATTRIB_response);
4553
4554 return offset;
4555 }
4556
4557
4558 static const ber_sequence_t F_MOVE_request_sequence[] = {
4559 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4560 { &hf_ftam_override , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Override },
4561 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4562 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4563 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4564 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4565 { NULL, 0, 0, 0, NULL }
4566 };
4567
4568 static int
dissect_ftam_F_MOVE_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4569 dissect_ftam_F_MOVE_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4570 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4571 F_MOVE_request_sequence, hf_index, ett_ftam_F_MOVE_request);
4572
4573 return offset;
4574 }
4575
4576
4577 static const ber_sequence_t F_MOVE_response_sequence[] = {
4578 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4579 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4580 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4581 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4582 { NULL, 0, 0, 0, NULL }
4583 };
4584
4585 static int
dissect_ftam_F_MOVE_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4586 dissect_ftam_F_MOVE_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4587 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4588 F_MOVE_response_sequence, hf_index, ett_ftam_F_MOVE_response);
4589
4590 return offset;
4591 }
4592
4593
4594 static const ber_sequence_t F_COPY_request_sequence[] = {
4595 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4596 { &hf_ftam_override , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_ftam_Override },
4597 { &hf_ftam_create_password, BER_CLASS_APP, 17, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Password },
4598 { &hf_ftam_access_passwords, BER_CLASS_APP, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Access_Passwords },
4599 { &hf_ftam_path_access_passwords, BER_CLASS_APP, 27, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Path_Access_Passwords },
4600 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4601 { NULL, 0, 0, 0, NULL }
4602 };
4603
4604 static int
dissect_ftam_F_COPY_request(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4605 dissect_ftam_F_COPY_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4606 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4607 F_COPY_request_sequence, hf_index, ett_ftam_F_COPY_request);
4608
4609 return offset;
4610 }
4611
4612
4613 static const ber_sequence_t F_COPY_response_sequence[] = {
4614 { &hf_ftam_action_result , BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Action_Result },
4615 { &hf_ftam_destination_file_directory, BER_CLASS_APP, 24, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Destination_File_Directory },
4616 { &hf_ftam_attributes , BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Change_Attributes },
4617 { &hf_ftam_diagnostic , BER_CLASS_APP, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ftam_Diagnostic },
4618 { NULL, 0, 0, 0, NULL }
4619 };
4620
4621 static int
dissect_ftam_F_COPY_response(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4622 dissect_ftam_F_COPY_response(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4623 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4624 F_COPY_response_sequence, hf_index, ett_ftam_F_COPY_response);
4625
4626 return offset;
4627 }
4628
4629
4630 static const value_string ftam_FSM_PDU_vals[] = {
4631 { 41, "f-Change-prefix-request" },
4632 { 42, "f-Change-prefix-response" },
4633 { 43, "f-list-request" },
4634 { 44, "f-list-response" },
4635 { 45, "f-group-select-request" },
4636 { 46, "f-group-select-response" },
4637 { 47, "f-group-delete-request" },
4638 { 48, "f-group-delete-response" },
4639 { 49, "f-group-move-request" },
4640 { 50, "f-group-move-response" },
4641 { 51, "f-group-copy-request" },
4642 { 52, "f-group-copy-response" },
4643 { 53, "f-group-list-request" },
4644 { 54, "f-group-list-response" },
4645 { 55, "f-group-Change-attrib-request" },
4646 { 56, "f-group-Change-attrib-response" },
4647 { 57, "f-select-another-request" },
4648 { 58, "f-select-another-response" },
4649 { 59, "f-create-directory-request" },
4650 { 60, "f-create-directory-response" },
4651 { 61, "f-link-request" },
4652 { 62, "f-link-response" },
4653 { 63, "f-unlink-request" },
4654 { 64, "f-unlink-response" },
4655 { 65, "f-read-link-attrib-request" },
4656 { 66, "f-read-link-attrib-response" },
4657 { 67, "f-Change-link-attrib-request" },
4658 { 68, "f-Change-Iink-attrib-response" },
4659 { 69, "f-move-request" },
4660 { 70, "f-move-response" },
4661 { 71, "f-copy-request" },
4662 { 72, "f-copy-response" },
4663 { 0, NULL }
4664 };
4665
4666 static const ber_choice_t FSM_PDU_choice[] = {
4667 { 41, &hf_ftam_f_Change_prefix_request, BER_CLASS_CON, 41, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_PREFIX_request },
4668 { 42, &hf_ftam_f_Change_prefix_response, BER_CLASS_CON, 42, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_PREFIX_response },
4669 { 43, &hf_ftam_f_list_request , BER_CLASS_CON, 43, BER_FLAGS_IMPLTAG, dissect_ftam_F_LIST_request },
4670 { 44, &hf_ftam_f_list_response, BER_CLASS_CON, 44, BER_FLAGS_IMPLTAG, dissect_ftam_F_LIST_response },
4671 { 45, &hf_ftam_f_group_select_request, BER_CLASS_CON, 45, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_SELECT_request },
4672 { 46, &hf_ftam_f_group_select_response, BER_CLASS_CON, 46, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_SELECT_response },
4673 { 47, &hf_ftam_f_group_delete_request, BER_CLASS_CON, 47, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_DELETE_request },
4674 { 48, &hf_ftam_f_group_delete_response, BER_CLASS_CON, 48, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_DELETE_response },
4675 { 49, &hf_ftam_f_group_move_request, BER_CLASS_CON, 49, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_MOVE_request },
4676 { 50, &hf_ftam_f_group_move_response, BER_CLASS_CON, 50, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_MOVE_response },
4677 { 51, &hf_ftam_f_group_copy_request, BER_CLASS_CON, 51, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_COPY_request },
4678 { 52, &hf_ftam_f_group_copy_response, BER_CLASS_CON, 52, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_COPY_response },
4679 { 53, &hf_ftam_f_group_list_request, BER_CLASS_CON, 53, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_LIST_request },
4680 { 54, &hf_ftam_f_group_list_response, BER_CLASS_CON, 54, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_LIST_response },
4681 { 55, &hf_ftam_f_group_Change_attrib_request, BER_CLASS_CON, 55, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_CHANGE_ATTRIB_request },
4682 { 56, &hf_ftam_f_group_Change_attrib_response, BER_CLASS_CON, 56, BER_FLAGS_IMPLTAG, dissect_ftam_F_GROUP_CHANGE_ATTRIB_response },
4683 { 57, &hf_ftam_f_select_another_request, BER_CLASS_CON, 57, BER_FLAGS_IMPLTAG, dissect_ftam_F_SELECT_ANOTHER_request },
4684 { 58, &hf_ftam_f_select_another_response, BER_CLASS_CON, 58, BER_FLAGS_IMPLTAG, dissect_ftam_F_SELECT_ANOTHER_response },
4685 { 59, &hf_ftam_f_create_directory_request, BER_CLASS_CON, 59, BER_FLAGS_IMPLTAG, dissect_ftam_F_CREATE_DIRECTORY_request },
4686 { 60, &hf_ftam_f_create_directory_response, BER_CLASS_CON, 60, BER_FLAGS_IMPLTAG, dissect_ftam_F_CREATE_DIRECTORY_response },
4687 { 61, &hf_ftam_f_link_request , BER_CLASS_CON, 61, BER_FLAGS_IMPLTAG, dissect_ftam_F_LINK_request },
4688 { 62, &hf_ftam_f_link_response, BER_CLASS_CON, 62, BER_FLAGS_IMPLTAG, dissect_ftam_F_LINK_response },
4689 { 63, &hf_ftam_f_unlink_request, BER_CLASS_CON, 63, BER_FLAGS_IMPLTAG, dissect_ftam_F_UNLINK_request },
4690 { 64, &hf_ftam_f_unlink_response, BER_CLASS_CON, 64, BER_FLAGS_IMPLTAG, dissect_ftam_F_UNLINK_response },
4691 { 65, &hf_ftam_f_read_link_attrib_request, BER_CLASS_CON, 65, BER_FLAGS_IMPLTAG, dissect_ftam_F_READ_LINK_ATTRIB_request },
4692 { 66, &hf_ftam_f_read_link_attrib_response, BER_CLASS_CON, 66, BER_FLAGS_IMPLTAG, dissect_ftam_F_READ_LINK_ATTRIB_response },
4693 { 67, &hf_ftam_f_Change_link_attrib_request, BER_CLASS_CON, 67, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_LINK_ATTRIB_request },
4694 { 68, &hf_ftam_f_Change_Iink_attrib_response, BER_CLASS_CON, 68, BER_FLAGS_IMPLTAG, dissect_ftam_F_CHANGE_LINK_ATTRIB_response },
4695 { 69, &hf_ftam_f_move_request , BER_CLASS_CON, 69, BER_FLAGS_IMPLTAG, dissect_ftam_F_MOVE_request },
4696 { 70, &hf_ftam_f_move_response, BER_CLASS_CON, 70, BER_FLAGS_IMPLTAG, dissect_ftam_F_MOVE_response },
4697 { 71, &hf_ftam_f_copy_request , BER_CLASS_CON, 71, BER_FLAGS_IMPLTAG, dissect_ftam_F_COPY_request },
4698 { 72, &hf_ftam_f_copy_response, BER_CLASS_CON, 72, BER_FLAGS_IMPLTAG, dissect_ftam_F_COPY_response },
4699 { 0, NULL, 0, 0, 0, NULL }
4700 };
4701
4702 static int
dissect_ftam_FSM_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4703 dissect_ftam_FSM_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4704 #line 144 "./asn1/ftam/ftam.cnf"
4705 gint branch_taken;
4706
4707 offset = dissect_ber_choice(actx, tree, tvb, offset,
4708 FSM_PDU_choice, hf_index, ett_ftam_FSM_PDU,
4709 &branch_taken);
4710
4711
4712 if( (branch_taken!=-1) && ftam_FSM_PDU_vals[branch_taken].strptr ){
4713 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s:", ftam_FSM_PDU_vals[branch_taken].strptr);
4714 }
4715
4716
4717
4718
4719 return offset;
4720 }
4721
4722
4723 static const ber_choice_t PDU_choice[] = {
4724 { -1/*choice*/, &hf_ftam_fTAM_Regime_PDU, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_ftam_FTAM_Regime_PDU },
4725 { -1/*choice*/, &hf_ftam_file_PDU , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_ftam_File_PDU },
4726 { -1/*choice*/, &hf_ftam_bulk_Data_PDU , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_ftam_Bulk_Data_PDU },
4727 { -1/*choice*/, &hf_ftam_fSM_PDU , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_ftam_FSM_PDU },
4728 { 0, NULL, 0, 0, 0, NULL }
4729 };
4730
4731 static int
dissect_ftam_PDU(gboolean implicit_tag _U_,tvbuff_t * tvb _U_,int offset _U_,asn1_ctx_t * actx _U_,proto_tree * tree _U_,int hf_index _U_)4732 dissect_ftam_PDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4733 offset = dissect_ber_choice(actx, tree, tvb, offset,
4734 PDU_choice, hf_index, ett_ftam_PDU,
4735 NULL);
4736
4737 return offset;
4738 }
4739
4740
4741 /*--- End of included file: packet-ftam-fn.c ---*/
4742 #line 52 "./asn1/ftam/packet-ftam-template.c"
4743
4744 /*
4745 * Dissect FTAM unstructured text
4746 */
4747 static int
dissect_ftam_unstructured_text(tvbuff_t * tvb,packet_info * pinfo _U_,proto_tree * parent_tree,void * data _U_)4748 dissect_ftam_unstructured_text(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void* data _U_)
4749 {
4750 proto_tree_add_item (parent_tree, hf_ftam_unstructured_text, tvb, 0, tvb_reported_length_remaining(tvb, 0), ENC_ASCII|ENC_NA);
4751 return tvb_captured_length(tvb);
4752 }
4753
4754 /*
4755 * Dissect FTAM unstructured binary
4756 */
4757 static int
dissect_ftam_unstructured_binary(tvbuff_t * tvb,packet_info * pinfo _U_,proto_tree * parent_tree,void * data _U_)4758 dissect_ftam_unstructured_binary(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void* data _U_)
4759 {
4760 proto_tree_add_item (parent_tree, hf_ftam_unstructured_binary, tvb, 0, tvb_reported_length_remaining(tvb, 0), ENC_NA);
4761 return tvb_captured_length(tvb);
4762 }
4763
4764 /*
4765 * Dissect FTAM PDUs inside a PPDU.
4766 */
4767 static int
dissect_ftam(tvbuff_t * tvb,packet_info * pinfo,proto_tree * parent_tree,void * data _U_)4768 dissect_ftam(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void* data _U_)
4769 {
4770 int offset = 0;
4771 int old_offset;
4772 proto_item *item=NULL;
4773 proto_tree *tree=NULL;
4774 asn1_ctx_t asn1_ctx;
4775
4776 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4777
4778 if(parent_tree){
4779 item = proto_tree_add_item(parent_tree, proto_ftam, tvb, 0, -1, ENC_NA);
4780 tree = proto_item_add_subtree(item, ett_ftam);
4781 }
4782 col_set_str(pinfo->cinfo, COL_PROTOCOL, "FTAM");
4783 col_clear(pinfo->cinfo, COL_INFO);
4784
4785 while (tvb_reported_length_remaining(tvb, offset) > 0){
4786 old_offset=offset;
4787 offset=dissect_ftam_PDU(FALSE, tvb, offset, &asn1_ctx, tree, -1);
4788 if(offset == old_offset){
4789 proto_tree_add_expert(tree, pinfo, &ei_ftam_zero_pdu, tvb, offset, -1);
4790 break;
4791 }
4792 }
4793 return tvb_captured_length(tvb);
4794 }
4795
4796
4797 /*--- proto_register_ftam -------------------------------------------*/
proto_register_ftam(void)4798 void proto_register_ftam(void) {
4799
4800 /* List of fields */
4801 static hf_register_info hf[] =
4802 {
4803 { &hf_ftam_unstructured_text,
4804 { "ISO FTAM unstructured text", "ftam.unstructured_text", FT_STRING,
4805 BASE_NONE, NULL, 0x0, NULL, HFILL } },
4806 { &hf_ftam_unstructured_binary,
4807 { "ISO FTAM unstructured binary", "ftam.unstructured_binary", FT_BYTES,
4808 BASE_NONE, NULL, 0x0, NULL, HFILL } },
4809
4810 /*--- Included file: packet-ftam-hfarr.c ---*/
4811 #line 1 "./asn1/ftam/packet-ftam-hfarr.c"
4812 { &hf_ftam_fTAM_Regime_PDU,
4813 { "fTAM-Regime-PDU", "ftam.fTAM_Regime_PDU",
4814 FT_UINT32, BASE_DEC, VALS(ftam_FTAM_Regime_PDU_vals), 0,
4815 NULL, HFILL }},
4816 { &hf_ftam_file_PDU,
4817 { "file-PDU", "ftam.file_PDU",
4818 FT_UINT32, BASE_DEC, VALS(ftam_File_PDU_vals), 0,
4819 NULL, HFILL }},
4820 { &hf_ftam_bulk_Data_PDU,
4821 { "bulk-Data-PDU", "ftam.bulk_Data_PDU",
4822 FT_UINT32, BASE_DEC, VALS(ftam_Bulk_Data_PDU_vals), 0,
4823 NULL, HFILL }},
4824 { &hf_ftam_fSM_PDU,
4825 { "fSM-PDU", "ftam.fSM_PDU",
4826 FT_UINT32, BASE_DEC, VALS(ftam_FSM_PDU_vals), 0,
4827 NULL, HFILL }},
4828 { &hf_ftam_f_initialize_request,
4829 { "f-initialize-request", "ftam.f_initialize_request_element",
4830 FT_NONE, BASE_NONE, NULL, 0,
4831 NULL, HFILL }},
4832 { &hf_ftam_f_initialize_response,
4833 { "f-initialize-response", "ftam.f_initialize_response_element",
4834 FT_NONE, BASE_NONE, NULL, 0,
4835 NULL, HFILL }},
4836 { &hf_ftam_f_terminate_request,
4837 { "f-terminate-request", "ftam.f_terminate_request_element",
4838 FT_NONE, BASE_NONE, NULL, 0,
4839 NULL, HFILL }},
4840 { &hf_ftam_f_terminate_response,
4841 { "f-terminate-response", "ftam.f_terminate_response_element",
4842 FT_NONE, BASE_NONE, NULL, 0,
4843 NULL, HFILL }},
4844 { &hf_ftam_f_u_abort_request,
4845 { "f-u-abort-request", "ftam.f_u_abort_request_element",
4846 FT_NONE, BASE_NONE, NULL, 0,
4847 NULL, HFILL }},
4848 { &hf_ftam_f_p_abort_request,
4849 { "f-p-abort-request", "ftam.f_p_abort_request_element",
4850 FT_NONE, BASE_NONE, NULL, 0,
4851 NULL, HFILL }},
4852 { &hf_ftam_protocol_Version,
4853 { "protocol-Version", "ftam.protocol_Version",
4854 FT_BYTES, BASE_NONE, NULL, 0,
4855 NULL, HFILL }},
4856 { &hf_ftam_implementation_information,
4857 { "implementation-information", "ftam.implementation_information",
4858 FT_STRING, BASE_NONE, NULL, 0,
4859 NULL, HFILL }},
4860 { &hf_ftam_presentation_tontext_management,
4861 { "presentation-tontext-management", "ftam.presentation_tontext_management",
4862 FT_BOOLEAN, BASE_NONE, NULL, 0,
4863 "BOOLEAN", HFILL }},
4864 { &hf_ftam_service_class,
4865 { "service-class", "ftam.service_class",
4866 FT_BYTES, BASE_NONE, NULL, 0,
4867 NULL, HFILL }},
4868 { &hf_ftam_functional_units,
4869 { "functional-units", "ftam.functional_units",
4870 FT_BYTES, BASE_NONE, NULL, 0,
4871 NULL, HFILL }},
4872 { &hf_ftam_attribute_groups,
4873 { "attribute-groups", "ftam.attribute_groups",
4874 FT_BYTES, BASE_NONE, NULL, 0,
4875 NULL, HFILL }},
4876 { &hf_ftam_shared_ASE_information,
4877 { "shared-ASE-information", "ftam.shared_ASE_information_element",
4878 FT_NONE, BASE_NONE, NULL, 0,
4879 NULL, HFILL }},
4880 { &hf_ftam_ftam_quality_of_Service,
4881 { "ftam-quality-of-Service", "ftam.ftam_quality_of_Service",
4882 FT_INT32, BASE_DEC, VALS(ftam_FTAM_Quality_of_Service_U_vals), 0,
4883 NULL, HFILL }},
4884 { &hf_ftam_contents_type_list,
4885 { "contents-type-list", "ftam.contents_type_list",
4886 FT_UINT32, BASE_DEC, NULL, 0,
4887 NULL, HFILL }},
4888 { &hf_ftam_initiator_identity,
4889 { "initiator-identity", "ftam.initiator_identity",
4890 FT_STRING, BASE_NONE, NULL, 0,
4891 "User_Identity", HFILL }},
4892 { &hf_ftam_account,
4893 { "account", "ftam.account",
4894 FT_STRING, BASE_NONE, NULL, 0,
4895 NULL, HFILL }},
4896 { &hf_ftam_filestore_password,
4897 { "filestore-password", "ftam.filestore_password",
4898 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
4899 "Password", HFILL }},
4900 { &hf_ftam_checkpoint_window,
4901 { "checkpoint-window", "ftam.checkpoint_window",
4902 FT_INT32, BASE_DEC, NULL, 0,
4903 "INTEGER", HFILL }},
4904 { &hf_ftam_state_result,
4905 { "state-result", "ftam.state_result",
4906 FT_INT32, BASE_DEC, VALS(ftam_State_Result_U_vals), 0,
4907 NULL, HFILL }},
4908 { &hf_ftam_action_result,
4909 { "action-result", "ftam.action_result",
4910 FT_INT32, BASE_DEC, VALS(ftam_Action_Result_U_vals), 0,
4911 NULL, HFILL }},
4912 { &hf_ftam_diagnostic,
4913 { "diagnostic", "ftam.diagnostic",
4914 FT_UINT32, BASE_DEC, NULL, 0,
4915 NULL, HFILL }},
4916 { &hf_ftam__untag_item,
4917 { "_untag item", "ftam._untag_item",
4918 FT_UINT32, BASE_DEC, VALS(ftam_Contents_Type_List_item_vals), 0,
4919 "Contents_Type_List_item", HFILL }},
4920 { &hf_ftam_document_type_name,
4921 { "document-type-name", "ftam.document_type_name",
4922 FT_OID, BASE_NONE, NULL, 0,
4923 NULL, HFILL }},
4924 { &hf_ftam_abstract_Syntax_name,
4925 { "abstract-Syntax-name", "ftam.abstract_Syntax_name",
4926 FT_OID, BASE_NONE, NULL, 0,
4927 NULL, HFILL }},
4928 { &hf_ftam_charging,
4929 { "charging", "ftam.charging",
4930 FT_UINT32, BASE_DEC, NULL, 0,
4931 NULL, HFILL }},
4932 { &hf_ftam_f_select_request,
4933 { "f-select-request", "ftam.f_select_request_element",
4934 FT_NONE, BASE_NONE, NULL, 0,
4935 NULL, HFILL }},
4936 { &hf_ftam_f_select_response,
4937 { "f-select-response", "ftam.f_select_response_element",
4938 FT_NONE, BASE_NONE, NULL, 0,
4939 NULL, HFILL }},
4940 { &hf_ftam_f_deselect_request,
4941 { "f-deselect-request", "ftam.f_deselect_request_element",
4942 FT_NONE, BASE_NONE, NULL, 0,
4943 NULL, HFILL }},
4944 { &hf_ftam_f_deselect_response,
4945 { "f-deselect-response", "ftam.f_deselect_response_element",
4946 FT_NONE, BASE_NONE, NULL, 0,
4947 NULL, HFILL }},
4948 { &hf_ftam_f_create_request,
4949 { "f-create-request", "ftam.f_create_request_element",
4950 FT_NONE, BASE_NONE, NULL, 0,
4951 NULL, HFILL }},
4952 { &hf_ftam_f_create_response,
4953 { "f-create-response", "ftam.f_create_response_element",
4954 FT_NONE, BASE_NONE, NULL, 0,
4955 NULL, HFILL }},
4956 { &hf_ftam_f_delete_request,
4957 { "f-delete-request", "ftam.f_delete_request_element",
4958 FT_NONE, BASE_NONE, NULL, 0,
4959 NULL, HFILL }},
4960 { &hf_ftam_f_delete_response,
4961 { "f-delete-response", "ftam.f_delete_response_element",
4962 FT_NONE, BASE_NONE, NULL, 0,
4963 NULL, HFILL }},
4964 { &hf_ftam_f_read_attrib_request,
4965 { "f-read-attrib-request", "ftam.f_read_attrib_request_element",
4966 FT_NONE, BASE_NONE, NULL, 0,
4967 NULL, HFILL }},
4968 { &hf_ftam_f_read_attrib_response,
4969 { "f-read-attrib-response", "ftam.f_read_attrib_response_element",
4970 FT_NONE, BASE_NONE, NULL, 0,
4971 NULL, HFILL }},
4972 { &hf_ftam_f_Change_attrib_reques,
4973 { "f-Change-attrib-reques", "ftam.f_Change_attrib_reques_element",
4974 FT_NONE, BASE_NONE, NULL, 0,
4975 "F_CHANGE_ATTRIB_request", HFILL }},
4976 { &hf_ftam_f_Change_attrib_respon,
4977 { "f-Change-attrib-respon", "ftam.f_Change_attrib_respon_element",
4978 FT_NONE, BASE_NONE, NULL, 0,
4979 "F_CHANGE_ATTRIB_response", HFILL }},
4980 { &hf_ftam_f_open_request,
4981 { "f-open-request", "ftam.f_open_request_element",
4982 FT_NONE, BASE_NONE, NULL, 0,
4983 NULL, HFILL }},
4984 { &hf_ftam_f_open_response,
4985 { "f-open-response", "ftam.f_open_response_element",
4986 FT_NONE, BASE_NONE, NULL, 0,
4987 NULL, HFILL }},
4988 { &hf_ftam_f_close_request,
4989 { "f-close-request", "ftam.f_close_request_element",
4990 FT_NONE, BASE_NONE, NULL, 0,
4991 NULL, HFILL }},
4992 { &hf_ftam_f_close_response,
4993 { "f-close-response", "ftam.f_close_response_element",
4994 FT_NONE, BASE_NONE, NULL, 0,
4995 NULL, HFILL }},
4996 { &hf_ftam_f_begin_group_request,
4997 { "f-begin-group-request", "ftam.f_begin_group_request_element",
4998 FT_NONE, BASE_NONE, NULL, 0,
4999 NULL, HFILL }},
5000 { &hf_ftam_f_begin_group_response,
5001 { "f-begin-group-response", "ftam.f_begin_group_response_element",
5002 FT_NONE, BASE_NONE, NULL, 0,
5003 NULL, HFILL }},
5004 { &hf_ftam_f_end_group_request,
5005 { "f-end-group-request", "ftam.f_end_group_request_element",
5006 FT_NONE, BASE_NONE, NULL, 0,
5007 NULL, HFILL }},
5008 { &hf_ftam_f_end_group_response,
5009 { "f-end-group-response", "ftam.f_end_group_response_element",
5010 FT_NONE, BASE_NONE, NULL, 0,
5011 NULL, HFILL }},
5012 { &hf_ftam_f_recover_request,
5013 { "f-recover-request", "ftam.f_recover_request_element",
5014 FT_NONE, BASE_NONE, NULL, 0,
5015 NULL, HFILL }},
5016 { &hf_ftam_f_recover_response,
5017 { "f-recover-response", "ftam.f_recover_response_element",
5018 FT_NONE, BASE_NONE, NULL, 0,
5019 NULL, HFILL }},
5020 { &hf_ftam_f_locate_request,
5021 { "f-locate-request", "ftam.f_locate_request_element",
5022 FT_NONE, BASE_NONE, NULL, 0,
5023 NULL, HFILL }},
5024 { &hf_ftam_f_locate_response,
5025 { "f-locate-response", "ftam.f_locate_response_element",
5026 FT_NONE, BASE_NONE, NULL, 0,
5027 NULL, HFILL }},
5028 { &hf_ftam_f_erase_request,
5029 { "f-erase-request", "ftam.f_erase_request_element",
5030 FT_NONE, BASE_NONE, NULL, 0,
5031 NULL, HFILL }},
5032 { &hf_ftam_f_erase_response,
5033 { "f-erase-response", "ftam.f_erase_response_element",
5034 FT_NONE, BASE_NONE, NULL, 0,
5035 NULL, HFILL }},
5036 { &hf_ftam_select_attributes,
5037 { "attributes", "ftam.attributes_element",
5038 FT_NONE, BASE_NONE, NULL, 0,
5039 "Select_Attributes", HFILL }},
5040 { &hf_ftam_requested_access,
5041 { "requested-access", "ftam.requested_access",
5042 FT_BYTES, BASE_NONE, NULL, 0,
5043 "Access_Request", HFILL }},
5044 { &hf_ftam_access_passwords,
5045 { "access-passwords", "ftam.access_passwords_element",
5046 FT_NONE, BASE_NONE, NULL, 0,
5047 NULL, HFILL }},
5048 { &hf_ftam_path_access_passwords,
5049 { "path-access-passwords", "ftam.path_access_passwords",
5050 FT_UINT32, BASE_DEC, NULL, 0,
5051 NULL, HFILL }},
5052 { &hf_ftam_concurrency_control,
5053 { "concurrency-control", "ftam.concurrency_control_element",
5054 FT_NONE, BASE_NONE, NULL, 0,
5055 NULL, HFILL }},
5056 { &hf_ftam_referent_indicator,
5057 { "referent-indicator", "ftam.referent_indicator",
5058 FT_BOOLEAN, BASE_NONE, NULL, 0,
5059 NULL, HFILL }},
5060 { &hf_ftam_override,
5061 { "override", "ftam.override",
5062 FT_INT32, BASE_DEC, VALS(ftam_Override_vals), 0,
5063 NULL, HFILL }},
5064 { &hf_ftam_initial_attributes,
5065 { "initial-attributes", "ftam.initial_attributes_element",
5066 FT_NONE, BASE_NONE, NULL, 0,
5067 "Create_Attributes", HFILL }},
5068 { &hf_ftam_create_password,
5069 { "create-password", "ftam.create_password",
5070 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5071 "Password", HFILL }},
5072 { &hf_ftam_attribute_names,
5073 { "attribute-names", "ftam.attribute_names",
5074 FT_BYTES, BASE_NONE, NULL, 0,
5075 NULL, HFILL }},
5076 { &hf_ftam_attribute_extension_names,
5077 { "attribute-extension-names", "ftam.attribute_extension_names",
5078 FT_UINT32, BASE_DEC, NULL, 0,
5079 NULL, HFILL }},
5080 { &hf_ftam_read_attributes,
5081 { "attributes", "ftam.attributes_element",
5082 FT_NONE, BASE_NONE, NULL, 0,
5083 "Read_Attributes", HFILL }},
5084 { &hf_ftam_attributes,
5085 { "attributes", "ftam.attributes_element",
5086 FT_NONE, BASE_NONE, NULL, 0,
5087 "Change_Attributes", HFILL }},
5088 { &hf_ftam_processing_mode,
5089 { "processing-mode", "ftam.processing_mode",
5090 FT_BYTES, BASE_NONE, NULL, 0,
5091 NULL, HFILL }},
5092 { &hf_ftam_open_contents_type,
5093 { "contents-type", "ftam.contents_type",
5094 FT_UINT32, BASE_DEC, VALS(ftam_T_open_contents_type_vals), 0,
5095 "T_open_contents_type", HFILL }},
5096 { &hf_ftam_unknown,
5097 { "unknown", "ftam.unknown_element",
5098 FT_NONE, BASE_NONE, NULL, 0,
5099 NULL, HFILL }},
5100 { &hf_ftam_proposed,
5101 { "proposed", "ftam.proposed",
5102 FT_UINT32, BASE_DEC, VALS(ftam_Contents_Type_Attribute_vals), 0,
5103 "Contents_Type_Attribute", HFILL }},
5104 { &hf_ftam_enable_fadu_locking,
5105 { "enable-fadu-locking", "ftam.enable_fadu_locking",
5106 FT_BOOLEAN, BASE_NONE, NULL, 0,
5107 "BOOLEAN", HFILL }},
5108 { &hf_ftam_activity_identifier,
5109 { "activity-identifier", "ftam.activity_identifier",
5110 FT_INT32, BASE_DEC, NULL, 0,
5111 NULL, HFILL }},
5112 { &hf_ftam_request_recovery_mode,
5113 { "recovery-mode", "ftam.recovery_mode",
5114 FT_INT32, BASE_DEC, VALS(ftam_T_request_recovery_mode_vals), 0,
5115 "T_request_recovery_mode", HFILL }},
5116 { &hf_ftam_remove_contexts,
5117 { "remove-contexts", "ftam.remove_contexts",
5118 FT_UINT32, BASE_DEC, NULL, 0,
5119 "SET_OF_Abstract_Syntax_Name", HFILL }},
5120 { &hf_ftam_remove_contexts_item,
5121 { "Abstract-Syntax-Name", "ftam.Abstract_Syntax_Name",
5122 FT_OID, BASE_NONE, NULL, 0,
5123 NULL, HFILL }},
5124 { &hf_ftam_define_contexts,
5125 { "define-contexts", "ftam.define_contexts",
5126 FT_UINT32, BASE_DEC, NULL, 0,
5127 "SET_OF_Abstract_Syntax_Name", HFILL }},
5128 { &hf_ftam_define_contexts_item,
5129 { "Abstract-Syntax-Name", "ftam.Abstract_Syntax_Name",
5130 FT_OID, BASE_NONE, NULL, 0,
5131 NULL, HFILL }},
5132 { &hf_ftam_degree_of_overlap,
5133 { "degree-of-overlap", "ftam.degree_of_overlap",
5134 FT_INT32, BASE_DEC, VALS(ftam_Degree_Of_Overlap_U_vals), 0,
5135 NULL, HFILL }},
5136 { &hf_ftam_transfer_window,
5137 { "transfer-window", "ftam.transfer_window",
5138 FT_INT32, BASE_DEC, NULL, 0,
5139 "INTEGER", HFILL }},
5140 { &hf_ftam_contents_type,
5141 { "contents-type", "ftam.contents_type",
5142 FT_UINT32, BASE_DEC, VALS(ftam_Contents_Type_Attribute_vals), 0,
5143 "Contents_Type_Attribute", HFILL }},
5144 { &hf_ftam_response_recovery_mode,
5145 { "recovery-mode", "ftam.recovery_mode",
5146 FT_INT32, BASE_DEC, VALS(ftam_T_response_recovery_mode_vals), 0,
5147 "T_response_recovery_mode", HFILL }},
5148 { &hf_ftam_presentation_action,
5149 { "presentation-action", "ftam.presentation_action",
5150 FT_BOOLEAN, BASE_NONE, NULL, 0,
5151 "BOOLEAN", HFILL }},
5152 { &hf_ftam_threshold,
5153 { "threshold", "ftam.threshold",
5154 FT_INT32, BASE_DEC, NULL, 0,
5155 "INTEGER", HFILL }},
5156 { &hf_ftam_bulk_transfer_number,
5157 { "bulk-transfer-number", "ftam.bulk_transfer_number",
5158 FT_INT32, BASE_DEC, NULL, 0,
5159 "INTEGER", HFILL }},
5160 { &hf_ftam_recovefy_Point,
5161 { "recovefy-Point", "ftam.recovefy_Point",
5162 FT_INT32, BASE_DEC, NULL, 0,
5163 "INTEGER", HFILL }},
5164 { &hf_ftam_concurrent_bulk_transfer_number,
5165 { "concurrent-bulk-transfer-number", "ftam.concurrent_bulk_transfer_number",
5166 FT_INT32, BASE_DEC, NULL, 0,
5167 "INTEGER", HFILL }},
5168 { &hf_ftam_concurrent_recovery_point,
5169 { "concurrent-recovery-point", "ftam.concurrent_recovery_point",
5170 FT_INT32, BASE_DEC, NULL, 0,
5171 "INTEGER", HFILL }},
5172 { &hf_ftam_last_transfer_end_read_response,
5173 { "last-transfer-end-read-response", "ftam.last_transfer_end_read_response",
5174 FT_INT32, BASE_DEC, NULL, 0,
5175 "INTEGER", HFILL }},
5176 { &hf_ftam_last_transfer_end_write_response,
5177 { "last-transfer-end-write-response", "ftam.last_transfer_end_write_response",
5178 FT_INT32, BASE_DEC, NULL, 0,
5179 "INTEGER", HFILL }},
5180 { &hf_ftam_recovety_Point,
5181 { "recovety-Point", "ftam.recovety_Point",
5182 FT_INT32, BASE_DEC, NULL, 0,
5183 "INTEGER", HFILL }},
5184 { &hf_ftam_last_transfer_end_read_request,
5185 { "last-transfer-end-read-request", "ftam.last_transfer_end_read_request",
5186 FT_INT32, BASE_DEC, NULL, 0,
5187 "INTEGER", HFILL }},
5188 { &hf_ftam_last_transfer_end_write_request,
5189 { "last-transfer-end-write-request", "ftam.last_transfer_end_write_request",
5190 FT_INT32, BASE_DEC, NULL, 0,
5191 "INTEGER", HFILL }},
5192 { &hf_ftam_file_access_data_unit_identity,
5193 { "file-access-data-unit-identity", "ftam.file_access_data_unit_identity",
5194 FT_UINT32, BASE_DEC, VALS(ftam_FADU_Identity_U_vals), 0,
5195 "FADU_Identity", HFILL }},
5196 { &hf_ftam_fadu_lock,
5197 { "fadu-lock", "ftam.fadu_lock",
5198 FT_INT32, BASE_DEC, VALS(ftam_FADU_Lock_U_vals), 0,
5199 NULL, HFILL }},
5200 { &hf_ftam_f_read_request,
5201 { "f-read-request", "ftam.f_read_request_element",
5202 FT_NONE, BASE_NONE, NULL, 0,
5203 NULL, HFILL }},
5204 { &hf_ftam_f_write_request,
5205 { "f-write-request", "ftam.f_write_request_element",
5206 FT_NONE, BASE_NONE, NULL, 0,
5207 NULL, HFILL }},
5208 { &hf_ftam_f_data_end_request,
5209 { "f-data-end-request", "ftam.f_data_end_request_element",
5210 FT_NONE, BASE_NONE, NULL, 0,
5211 NULL, HFILL }},
5212 { &hf_ftam_f_transfer_end_request,
5213 { "f-transfer-end-request", "ftam.f_transfer_end_request_element",
5214 FT_NONE, BASE_NONE, NULL, 0,
5215 NULL, HFILL }},
5216 { &hf_ftam_f_transfer_end_response,
5217 { "f-transfer-end-response", "ftam.f_transfer_end_response_element",
5218 FT_NONE, BASE_NONE, NULL, 0,
5219 NULL, HFILL }},
5220 { &hf_ftam_f_cancel_request,
5221 { "f-cancel-request", "ftam.f_cancel_request_element",
5222 FT_NONE, BASE_NONE, NULL, 0,
5223 NULL, HFILL }},
5224 { &hf_ftam_f_cancel_response,
5225 { "f-cancel-response", "ftam.f_cancel_response_element",
5226 FT_NONE, BASE_NONE, NULL, 0,
5227 NULL, HFILL }},
5228 { &hf_ftam_f_restart_request,
5229 { "f-restart-request", "ftam.f_restart_request_element",
5230 FT_NONE, BASE_NONE, NULL, 0,
5231 NULL, HFILL }},
5232 { &hf_ftam_f_restart_response,
5233 { "f-restart-response", "ftam.f_restart_response_element",
5234 FT_NONE, BASE_NONE, NULL, 0,
5235 NULL, HFILL }},
5236 { &hf_ftam_read_access_context,
5237 { "access-context", "ftam.access_context_element",
5238 FT_NONE, BASE_NONE, NULL, 0,
5239 NULL, HFILL }},
5240 { &hf_ftam_transfer_number,
5241 { "transfer-number", "ftam.transfer_number",
5242 FT_INT32, BASE_DEC, NULL, 0,
5243 "INTEGER", HFILL }},
5244 { &hf_ftam_file_access_data_unit_Operation,
5245 { "file-access-data-unit-Operation", "ftam.file_access_data_unit_Operation",
5246 FT_INT32, BASE_DEC, VALS(ftam_T_file_access_data_unit_Operation_vals), 0,
5247 "T_file_access_data_unit_Operation", HFILL }},
5248 { &hf_ftam_request_type,
5249 { "request-type", "ftam.request_type",
5250 FT_INT32, BASE_DEC, VALS(ftam_Request_Type_U_vals), 0,
5251 NULL, HFILL }},
5252 { &hf_ftam_checkpoint_identifier,
5253 { "checkpoint-identifier", "ftam.checkpoint_identifier",
5254 FT_INT32, BASE_DEC, NULL, 0,
5255 "INTEGER", HFILL }},
5256 { &hf_ftam_access_context,
5257 { "access-context", "ftam.access_context",
5258 FT_INT32, BASE_DEC, VALS(ftam_T_access_context_vals), 0,
5259 NULL, HFILL }},
5260 { &hf_ftam_level_number,
5261 { "level-number", "ftam.level_number",
5262 FT_INT32, BASE_DEC, NULL, 0,
5263 "INTEGER", HFILL }},
5264 { &hf_ftam_read_password,
5265 { "read-password", "ftam.read_password",
5266 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5267 "Password", HFILL }},
5268 { &hf_ftam_insert_password,
5269 { "insert-password", "ftam.insert_password",
5270 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5271 "Password", HFILL }},
5272 { &hf_ftam_replace_password,
5273 { "replace-password", "ftam.replace_password",
5274 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5275 "Password", HFILL }},
5276 { &hf_ftam_extend_password,
5277 { "extend-password", "ftam.extend_password",
5278 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5279 "Password", HFILL }},
5280 { &hf_ftam_erase_password,
5281 { "erase-password", "ftam.erase_password",
5282 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5283 "Password", HFILL }},
5284 { &hf_ftam_read_attribute_password,
5285 { "read-attribute-password", "ftam.read_attribute_password",
5286 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5287 "Password", HFILL }},
5288 { &hf_ftam_change_attribute_password,
5289 { "change-attribute-password", "ftam.change_attribute_password",
5290 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5291 "Password", HFILL }},
5292 { &hf_ftam_delete_password,
5293 { "delete-password", "ftam.delete_password",
5294 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5295 "Password", HFILL }},
5296 { &hf_ftam_pass_passwords,
5297 { "pass-passwords", "ftam.pass_passwords",
5298 FT_UINT32, BASE_DEC, NULL, 0,
5299 NULL, HFILL }},
5300 { &hf_ftam_link_password,
5301 { "link-password", "ftam.link_password",
5302 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
5303 "Password", HFILL }},
5304 { &hf_ftam_pathname,
5305 { "pathname", "ftam.pathname",
5306 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5307 "Pathname_Attribute", HFILL }},
5308 { &hf_ftam_storage_account,
5309 { "storage-account", "ftam.storage_account",
5310 FT_UINT32, BASE_DEC, VALS(ftam_Account_Attribute_vals), 0,
5311 "Account_Attribute", HFILL }},
5312 { &hf_ftam_object_availability,
5313 { "object-availability", "ftam.object_availability",
5314 FT_UINT32, BASE_DEC, VALS(ftam_Object_Availability_Attribute_vals), 0,
5315 "Object_Availability_Attribute", HFILL }},
5316 { &hf_ftam_future_Object_size,
5317 { "future-Object-size", "ftam.future_Object_size",
5318 FT_UINT32, BASE_DEC, VALS(ftam_Object_Size_Attribute_vals), 0,
5319 "Object_Size_Attribute", HFILL }},
5320 { &hf_ftam_change_attributes_access_control,
5321 { "access-control", "ftam.access_control",
5322 FT_UINT32, BASE_DEC, VALS(ftam_Access_Control_Change_Attribute_vals), 0,
5323 "Access_Control_Change_Attribute", HFILL }},
5324 { &hf_ftam_change_path_access_control,
5325 { "path-access-control", "ftam.path_access_control",
5326 FT_UINT32, BASE_DEC, VALS(ftam_Access_Control_Change_Attribute_vals), 0,
5327 "Access_Control_Change_Attribute", HFILL }},
5328 { &hf_ftam_legal_qualification,
5329 { "legal-qualification", "ftam.legal_qualification",
5330 FT_UINT32, BASE_DEC, VALS(ftam_Legal_Qualification_Attribute_vals), 0,
5331 "Legal_Qualification_Attribute", HFILL }},
5332 { &hf_ftam_private_use,
5333 { "private-use", "ftam.private_use",
5334 FT_UINT32, BASE_DEC, VALS(ftam_Private_Use_Attribute_vals), 0,
5335 "Private_Use_Attribute", HFILL }},
5336 { &hf_ftam_attribute_extensions,
5337 { "attribute-extensions", "ftam.attribute_extensions",
5338 FT_UINT32, BASE_DEC, NULL, 0,
5339 NULL, HFILL }},
5340 { &hf_ftam__untag_item_01,
5341 { "_untag item", "ftam._untag_item_element",
5342 FT_NONE, BASE_NONE, NULL, 0,
5343 "Charging_item", HFILL }},
5344 { &hf_ftam_resource_identifier,
5345 { "resource-identifier", "ftam.resource_identifier",
5346 FT_STRING, BASE_NONE, NULL, 0,
5347 "GraphicString", HFILL }},
5348 { &hf_ftam_charging_unit,
5349 { "charging-unit", "ftam.charging_unit",
5350 FT_STRING, BASE_NONE, NULL, 0,
5351 "GraphicString", HFILL }},
5352 { &hf_ftam_charging_value,
5353 { "charging-value", "ftam.charging_value",
5354 FT_INT32, BASE_DEC, NULL, 0,
5355 "INTEGER", HFILL }},
5356 { &hf_ftam_read,
5357 { "read", "ftam.read",
5358 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5359 "Lock", HFILL }},
5360 { &hf_ftam_insert,
5361 { "insert", "ftam.insert",
5362 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5363 "Lock", HFILL }},
5364 { &hf_ftam_replace,
5365 { "replace", "ftam.replace",
5366 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5367 "Lock", HFILL }},
5368 { &hf_ftam_extend,
5369 { "extend", "ftam.extend",
5370 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5371 "Lock", HFILL }},
5372 { &hf_ftam_erase,
5373 { "erase", "ftam.erase",
5374 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5375 "Lock", HFILL }},
5376 { &hf_ftam_read_attribute,
5377 { "read-attribute", "ftam.read_attribute",
5378 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5379 "Lock", HFILL }},
5380 { &hf_ftam_change_attribute,
5381 { "change-attribute", "ftam.change_attribute",
5382 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5383 "Lock", HFILL }},
5384 { &hf_ftam_delete_Object,
5385 { "delete-Object", "ftam.delete_Object",
5386 FT_INT32, BASE_DEC, VALS(ftam_Lock_vals), 0,
5387 "Lock", HFILL }},
5388 { &hf_ftam_object_type,
5389 { "object-type", "ftam.object_type",
5390 FT_INT32, BASE_DEC, VALS(ftam_Object_Type_Attribute_vals), 0,
5391 "Object_Type_Attribute", HFILL }},
5392 { &hf_ftam_permitted_actions,
5393 { "permitted-actions", "ftam.permitted_actions",
5394 FT_BYTES, BASE_NONE, NULL, 0,
5395 "Permitted_Actions_Attribute", HFILL }},
5396 { &hf_ftam_access_control,
5397 { "access-control", "ftam.access_control",
5398 FT_UINT32, BASE_DEC, VALS(ftam_Access_Control_Attribute_vals), 0,
5399 "Access_Control_Attribute", HFILL }},
5400 { &hf_ftam_path_access_control,
5401 { "path-access-control", "ftam.path_access_control",
5402 FT_UINT32, BASE_DEC, VALS(ftam_Access_Control_Attribute_vals), 0,
5403 "Access_Control_Attribute", HFILL }},
5404 { &hf_ftam__untag_item_02,
5405 { "_untag item", "ftam._untag_item_element",
5406 FT_NONE, BASE_NONE, NULL, 0,
5407 "Diagnostic_item", HFILL }},
5408 { &hf_ftam_diagnostic_type,
5409 { "diagnostic-type", "ftam.diagnostic_type",
5410 FT_INT32, BASE_DEC, VALS(ftam_T_diagnostic_type_vals), 0,
5411 NULL, HFILL }},
5412 { &hf_ftam_error_identifier,
5413 { "error-identifier", "ftam.error_identifier",
5414 FT_INT32, BASE_DEC, NULL, 0,
5415 "INTEGER", HFILL }},
5416 { &hf_ftam_error_observer,
5417 { "error-observer", "ftam.error_observer",
5418 FT_INT32, BASE_DEC, VALS(ftam_Entity_Reference_vals), 0,
5419 "Entity_Reference", HFILL }},
5420 { &hf_ftam_error_Source,
5421 { "error-Source", "ftam.error_Source",
5422 FT_INT32, BASE_DEC, VALS(ftam_Entity_Reference_vals), 0,
5423 "Entity_Reference", HFILL }},
5424 { &hf_ftam_suggested_delay,
5425 { "suggested-delay", "ftam.suggested_delay",
5426 FT_INT32, BASE_DEC, NULL, 0,
5427 "INTEGER", HFILL }},
5428 { &hf_ftam_further_details,
5429 { "further-details", "ftam.further_details",
5430 FT_STRING, BASE_NONE, NULL, 0,
5431 "GraphicString", HFILL }},
5432 { &hf_ftam_first_last,
5433 { "first-last", "ftam.first_last",
5434 FT_INT32, BASE_DEC, VALS(ftam_T_first_last_vals), 0,
5435 "T_first_last", HFILL }},
5436 { &hf_ftam_relative,
5437 { "relative", "ftam.relative",
5438 FT_INT32, BASE_DEC, VALS(ftam_T_relative_vals), 0,
5439 NULL, HFILL }},
5440 { &hf_ftam_begin_end,
5441 { "begin-end", "ftam.begin_end",
5442 FT_INT32, BASE_DEC, VALS(ftam_T_begin_end_vals), 0,
5443 NULL, HFILL }},
5444 { &hf_ftam_single_name,
5445 { "single-name", "ftam.single_name_element",
5446 FT_NONE, BASE_NONE, NULL, 0,
5447 "Node_Name", HFILL }},
5448 { &hf_ftam_name_list,
5449 { "name-list", "ftam.name_list",
5450 FT_UINT32, BASE_DEC, NULL, 0,
5451 "SEQUENCE_OF_Node_Name", HFILL }},
5452 { &hf_ftam_name_list_item,
5453 { "Node-Name", "ftam.Node_Name_element",
5454 FT_NONE, BASE_NONE, NULL, 0,
5455 NULL, HFILL }},
5456 { &hf_ftam_fadu_number,
5457 { "fadu-number", "ftam.fadu_number",
5458 FT_INT32, BASE_DEC, NULL, 0,
5459 "INTEGER", HFILL }},
5460 { &hf_ftam_graphicString,
5461 { "graphicString", "ftam.graphicString",
5462 FT_STRING, BASE_NONE, NULL, 0,
5463 NULL, HFILL }},
5464 { &hf_ftam_octetString,
5465 { "octetString", "ftam.octetString",
5466 FT_BYTES, BASE_NONE, NULL, 0,
5467 "OCTET_STRING", HFILL }},
5468 { &hf_ftam_linked_Object,
5469 { "linked-Object", "ftam.linked_Object",
5470 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5471 "Pathname_Attribute", HFILL }},
5472 { &hf_ftam_child_objects,
5473 { "child-objects", "ftam.child_objects",
5474 FT_UINT32, BASE_DEC, NULL, 0,
5475 "Child_Objects_Attribute", HFILL }},
5476 { &hf_ftam_primaty_pathname,
5477 { "primaty-pathname", "ftam.primaty_pathname",
5478 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5479 "Pathname_Attribute", HFILL }},
5480 { &hf_ftam_date_and_time_of_creation,
5481 { "date-and-time-of-creation", "ftam.date_and_time_of_creation",
5482 FT_UINT32, BASE_DEC, VALS(ftam_Date_and_Time_Attribute_vals), 0,
5483 "Date_and_Time_Attribute", HFILL }},
5484 { &hf_ftam_date_and_time_of_last_modification,
5485 { "date-and-time-of-last-modification", "ftam.date_and_time_of_last_modification",
5486 FT_UINT32, BASE_DEC, VALS(ftam_Date_and_Time_Attribute_vals), 0,
5487 "Date_and_Time_Attribute", HFILL }},
5488 { &hf_ftam_date_and_time_of_last_read_access,
5489 { "date-and-time-of-last-read-access", "ftam.date_and_time_of_last_read_access",
5490 FT_UINT32, BASE_DEC, VALS(ftam_Date_and_Time_Attribute_vals), 0,
5491 "Date_and_Time_Attribute", HFILL }},
5492 { &hf_ftam_date_and_time_of_last_attribute_modification,
5493 { "date-and-time-of-last-attribute-modification", "ftam.date_and_time_of_last_attribute_modification",
5494 FT_UINT32, BASE_DEC, VALS(ftam_Date_and_Time_Attribute_vals), 0,
5495 "Date_and_Time_Attribute", HFILL }},
5496 { &hf_ftam_identity_of_creator,
5497 { "identity-of-creator", "ftam.identity_of_creator",
5498 FT_UINT32, BASE_DEC, VALS(ftam_User_Identity_Attribute_vals), 0,
5499 "User_Identity_Attribute", HFILL }},
5500 { &hf_ftam_identity_of_last_modifier,
5501 { "identity-of-last-modifier", "ftam.identity_of_last_modifier",
5502 FT_UINT32, BASE_DEC, VALS(ftam_User_Identity_Attribute_vals), 0,
5503 "User_Identity_Attribute", HFILL }},
5504 { &hf_ftam_identity_of_last_reader,
5505 { "identity-of-last-reader", "ftam.identity_of_last_reader",
5506 FT_UINT32, BASE_DEC, VALS(ftam_User_Identity_Attribute_vals), 0,
5507 "User_Identity_Attribute", HFILL }},
5508 { &hf_ftam_identity_last_attribute_modifier,
5509 { "identity-last-attribute-modifier", "ftam.identity_last_attribute_modifier",
5510 FT_UINT32, BASE_DEC, VALS(ftam_User_Identity_Attribute_vals), 0,
5511 "User_Identity_Attribute", HFILL }},
5512 { &hf_ftam_object_size,
5513 { "object-size", "ftam.object_size",
5514 FT_UINT32, BASE_DEC, VALS(ftam_Object_Size_Attribute_vals), 0,
5515 "Object_Size_Attribute", HFILL }},
5516 { &hf_ftam_no_value_available,
5517 { "no-value-available", "ftam.no_value_available_element",
5518 FT_NONE, BASE_NONE, NULL, 0,
5519 NULL, HFILL }},
5520 { &hf_ftam_actual_values3,
5521 { "actual-values", "ftam.actual_values3",
5522 FT_UINT32, BASE_DEC, NULL, 0,
5523 "SET_OF_Access_Control_Element", HFILL }},
5524 { &hf_ftam_actual_values3_item,
5525 { "Access-Control-Element", "ftam.Access_Control_Element_element",
5526 FT_NONE, BASE_NONE, NULL, 0,
5527 NULL, HFILL }},
5528 { &hf_ftam_actual_values1,
5529 { "actual-values", "ftam.actual_values1_element",
5530 FT_NONE, BASE_NONE, NULL, 0,
5531 "T_actual_values1", HFILL }},
5532 { &hf_ftam_insert_values,
5533 { "insert-values", "ftam.insert_values",
5534 FT_UINT32, BASE_DEC, NULL, 0,
5535 "SET_OF_Access_Control_Element", HFILL }},
5536 { &hf_ftam_insert_values_item,
5537 { "Access-Control-Element", "ftam.Access_Control_Element_element",
5538 FT_NONE, BASE_NONE, NULL, 0,
5539 NULL, HFILL }},
5540 { &hf_ftam_delete_values,
5541 { "delete-values", "ftam.delete_values",
5542 FT_UINT32, BASE_DEC, NULL, 0,
5543 "SET_OF_Access_Control_Element", HFILL }},
5544 { &hf_ftam_delete_values_item,
5545 { "Access-Control-Element", "ftam.Access_Control_Element_element",
5546 FT_NONE, BASE_NONE, NULL, 0,
5547 NULL, HFILL }},
5548 { &hf_ftam_action_list,
5549 { "action-list", "ftam.action_list",
5550 FT_BYTES, BASE_NONE, NULL, 0,
5551 "Access_Request", HFILL }},
5552 { &hf_ftam_concurrency_access,
5553 { "concurrency-access", "ftam.concurrency_access_element",
5554 FT_NONE, BASE_NONE, NULL, 0,
5555 NULL, HFILL }},
5556 { &hf_ftam_identity,
5557 { "identity", "ftam.identity",
5558 FT_STRING, BASE_NONE, NULL, 0,
5559 "User_Identity", HFILL }},
5560 { &hf_ftam_passwords,
5561 { "passwords", "ftam.passwords_element",
5562 FT_NONE, BASE_NONE, NULL, 0,
5563 "Access_Passwords", HFILL }},
5564 { &hf_ftam_location,
5565 { "location", "ftam.location",
5566 FT_UINT32, BASE_DEC, VALS(acse_AE_title_vals), 0,
5567 "Application_Entity_Title", HFILL }},
5568 { &hf_ftam_read_key,
5569 { "read", "ftam.read_key",
5570 FT_BYTES, BASE_NONE, NULL, 0,
5571 "Concurrency_Key", HFILL }},
5572 { &hf_ftam_insert_key,
5573 { "insert", "ftam.insert_key",
5574 FT_BYTES, BASE_NONE, NULL, 0,
5575 "Concurrency_Key", HFILL }},
5576 { &hf_ftam_replace_key,
5577 { "replace", "ftam.replace_key",
5578 FT_BYTES, BASE_NONE, NULL, 0,
5579 "Concurrency_Key", HFILL }},
5580 { &hf_ftam_extend_key,
5581 { "extend", "ftam.extend_key",
5582 FT_BYTES, BASE_NONE, NULL, 0,
5583 "Concurrency_Key", HFILL }},
5584 { &hf_ftam_erase_key,
5585 { "erase", "ftam.erase_key",
5586 FT_BYTES, BASE_NONE, NULL, 0,
5587 "Concurrency_Key", HFILL }},
5588 { &hf_ftam_read_attribute_key,
5589 { "read-attribute", "ftam.read_attribute_key",
5590 FT_BYTES, BASE_NONE, NULL, 0,
5591 "Concurrency_Key", HFILL }},
5592 { &hf_ftam_change_attribute_key,
5593 { "change-attribute", "ftam.change_attribute_key",
5594 FT_BYTES, BASE_NONE, NULL, 0,
5595 "Concurrency_Key", HFILL }},
5596 { &hf_ftam_delete_Object_key,
5597 { "delete-Object", "ftam.delete_Object_key",
5598 FT_BYTES, BASE_NONE, NULL, 0,
5599 "Concurrency_Key", HFILL }},
5600 { &hf_ftam_actual_values2,
5601 { "actual-values", "ftam.actual_values2",
5602 FT_STRING, BASE_NONE, NULL, 0,
5603 "Account", HFILL }},
5604 { &hf_ftam_document_type,
5605 { "document-type", "ftam.document_type_element",
5606 FT_NONE, BASE_NONE, NULL, 0,
5607 "T_document_type", HFILL }},
5608 { &hf_ftam_parameter,
5609 { "parameter", "ftam.parameter_element",
5610 FT_NONE, BASE_NONE, NULL, 0,
5611 NULL, HFILL }},
5612 { &hf_ftam_constraint_set_and_abstract_Syntax,
5613 { "constraint-set-and-abstract-Syntax", "ftam.constraint_set_and_abstract_Syntax_element",
5614 FT_NONE, BASE_NONE, NULL, 0,
5615 "T_constraint_set_and_abstract_Syntax", HFILL }},
5616 { &hf_ftam_constraint_set_name,
5617 { "constraint-set-name", "ftam.constraint_set_name",
5618 FT_OID, BASE_NONE, NULL, 0,
5619 NULL, HFILL }},
5620 { &hf_ftam_actual_values5,
5621 { "actual-values", "ftam.actual_values5",
5622 FT_STRING, BASE_NONE, NULL, 0,
5623 "GeneralizedTime", HFILL }},
5624 { &hf_ftam_actual_values8,
5625 { "actual-values", "ftam.actual_values8",
5626 FT_INT32, BASE_DEC, VALS(ftam_T_actual_values8_vals), 0,
5627 "T_actual_values8", HFILL }},
5628 { &hf_ftam_incomplete_pathname,
5629 { "incomplete-pathname", "ftam.incomplete_pathname",
5630 FT_UINT32, BASE_DEC, NULL, 0,
5631 "Pathname", HFILL }},
5632 { &hf_ftam_complete_pathname,
5633 { "complete-pathname", "ftam.complete_pathname",
5634 FT_UINT32, BASE_DEC, NULL, 0,
5635 "Pathname", HFILL }},
5636 { &hf_ftam_actual_values7,
5637 { "actual-values", "ftam.actual_values7",
5638 FT_INT32, BASE_DEC, NULL, 0,
5639 "INTEGER", HFILL }},
5640 { &hf_ftam_actual_values9,
5641 { "actual-values", "ftam.actual_values9",
5642 FT_STRING, BASE_NONE, NULL, 0,
5643 "GraphicString", HFILL }},
5644 { &hf_ftam_abstract_Syntax_not_supported,
5645 { "abstract-Syntax-not-supported", "ftam.abstract_Syntax_not_supported_element",
5646 FT_NONE, BASE_NONE, NULL, 0,
5647 NULL, HFILL }},
5648 { &hf_ftam_actual_values4,
5649 { "actual-values", "ftam.actual_values4_element",
5650 FT_NONE, BASE_NONE, NULL, 0,
5651 "EXTERNAL", HFILL }},
5652 { &hf_ftam_actual_values6,
5653 { "actual-values", "ftam.actual_values6",
5654 FT_STRING, BASE_NONE, NULL, 0,
5655 "User_Identity", HFILL }},
5656 { &hf_ftam_Child_Objects_Attribute_item,
5657 { "Child-Objects-Attribute item", "ftam.Child_Objects_Attribute_item",
5658 FT_STRING, BASE_NONE, NULL, 0,
5659 "GraphicString", HFILL }},
5660 { &hf_ftam_f_Change_prefix_request,
5661 { "f-Change-prefix-request", "ftam.f_Change_prefix_request_element",
5662 FT_NONE, BASE_NONE, NULL, 0,
5663 NULL, HFILL }},
5664 { &hf_ftam_f_Change_prefix_response,
5665 { "f-Change-prefix-response", "ftam.f_Change_prefix_response_element",
5666 FT_NONE, BASE_NONE, NULL, 0,
5667 NULL, HFILL }},
5668 { &hf_ftam_f_list_request,
5669 { "f-list-request", "ftam.f_list_request_element",
5670 FT_NONE, BASE_NONE, NULL, 0,
5671 NULL, HFILL }},
5672 { &hf_ftam_f_list_response,
5673 { "f-list-response", "ftam.f_list_response_element",
5674 FT_NONE, BASE_NONE, NULL, 0,
5675 NULL, HFILL }},
5676 { &hf_ftam_f_group_select_request,
5677 { "f-group-select-request", "ftam.f_group_select_request_element",
5678 FT_NONE, BASE_NONE, NULL, 0,
5679 NULL, HFILL }},
5680 { &hf_ftam_f_group_select_response,
5681 { "f-group-select-response", "ftam.f_group_select_response_element",
5682 FT_NONE, BASE_NONE, NULL, 0,
5683 NULL, HFILL }},
5684 { &hf_ftam_f_group_delete_request,
5685 { "f-group-delete-request", "ftam.f_group_delete_request_element",
5686 FT_NONE, BASE_NONE, NULL, 0,
5687 NULL, HFILL }},
5688 { &hf_ftam_f_group_delete_response,
5689 { "f-group-delete-response", "ftam.f_group_delete_response_element",
5690 FT_NONE, BASE_NONE, NULL, 0,
5691 NULL, HFILL }},
5692 { &hf_ftam_f_group_move_request,
5693 { "f-group-move-request", "ftam.f_group_move_request_element",
5694 FT_NONE, BASE_NONE, NULL, 0,
5695 NULL, HFILL }},
5696 { &hf_ftam_f_group_move_response,
5697 { "f-group-move-response", "ftam.f_group_move_response_element",
5698 FT_NONE, BASE_NONE, NULL, 0,
5699 NULL, HFILL }},
5700 { &hf_ftam_f_group_copy_request,
5701 { "f-group-copy-request", "ftam.f_group_copy_request_element",
5702 FT_NONE, BASE_NONE, NULL, 0,
5703 NULL, HFILL }},
5704 { &hf_ftam_f_group_copy_response,
5705 { "f-group-copy-response", "ftam.f_group_copy_response_element",
5706 FT_NONE, BASE_NONE, NULL, 0,
5707 NULL, HFILL }},
5708 { &hf_ftam_f_group_list_request,
5709 { "f-group-list-request", "ftam.f_group_list_request_element",
5710 FT_NONE, BASE_NONE, NULL, 0,
5711 NULL, HFILL }},
5712 { &hf_ftam_f_group_list_response,
5713 { "f-group-list-response", "ftam.f_group_list_response_element",
5714 FT_NONE, BASE_NONE, NULL, 0,
5715 NULL, HFILL }},
5716 { &hf_ftam_f_group_Change_attrib_request,
5717 { "f-group-Change-attrib-request", "ftam.f_group_Change_attrib_request_element",
5718 FT_NONE, BASE_NONE, NULL, 0,
5719 NULL, HFILL }},
5720 { &hf_ftam_f_group_Change_attrib_response,
5721 { "f-group-Change-attrib-response", "ftam.f_group_Change_attrib_response_element",
5722 FT_NONE, BASE_NONE, NULL, 0,
5723 NULL, HFILL }},
5724 { &hf_ftam_f_select_another_request,
5725 { "f-select-another-request", "ftam.f_select_another_request_element",
5726 FT_NONE, BASE_NONE, NULL, 0,
5727 NULL, HFILL }},
5728 { &hf_ftam_f_select_another_response,
5729 { "f-select-another-response", "ftam.f_select_another_response_element",
5730 FT_NONE, BASE_NONE, NULL, 0,
5731 NULL, HFILL }},
5732 { &hf_ftam_f_create_directory_request,
5733 { "f-create-directory-request", "ftam.f_create_directory_request_element",
5734 FT_NONE, BASE_NONE, NULL, 0,
5735 NULL, HFILL }},
5736 { &hf_ftam_f_create_directory_response,
5737 { "f-create-directory-response", "ftam.f_create_directory_response_element",
5738 FT_NONE, BASE_NONE, NULL, 0,
5739 NULL, HFILL }},
5740 { &hf_ftam_f_link_request,
5741 { "f-link-request", "ftam.f_link_request_element",
5742 FT_NONE, BASE_NONE, NULL, 0,
5743 NULL, HFILL }},
5744 { &hf_ftam_f_link_response,
5745 { "f-link-response", "ftam.f_link_response_element",
5746 FT_NONE, BASE_NONE, NULL, 0,
5747 NULL, HFILL }},
5748 { &hf_ftam_f_unlink_request,
5749 { "f-unlink-request", "ftam.f_unlink_request_element",
5750 FT_NONE, BASE_NONE, NULL, 0,
5751 NULL, HFILL }},
5752 { &hf_ftam_f_unlink_response,
5753 { "f-unlink-response", "ftam.f_unlink_response_element",
5754 FT_NONE, BASE_NONE, NULL, 0,
5755 NULL, HFILL }},
5756 { &hf_ftam_f_read_link_attrib_request,
5757 { "f-read-link-attrib-request", "ftam.f_read_link_attrib_request_element",
5758 FT_NONE, BASE_NONE, NULL, 0,
5759 NULL, HFILL }},
5760 { &hf_ftam_f_read_link_attrib_response,
5761 { "f-read-link-attrib-response", "ftam.f_read_link_attrib_response_element",
5762 FT_NONE, BASE_NONE, NULL, 0,
5763 NULL, HFILL }},
5764 { &hf_ftam_f_Change_link_attrib_request,
5765 { "f-Change-link-attrib-request", "ftam.f_Change_link_attrib_request_element",
5766 FT_NONE, BASE_NONE, NULL, 0,
5767 NULL, HFILL }},
5768 { &hf_ftam_f_Change_Iink_attrib_response,
5769 { "f-Change-Iink-attrib-response", "ftam.f_Change_Iink_attrib_response_element",
5770 FT_NONE, BASE_NONE, NULL, 0,
5771 "F_CHANGE_LINK_ATTRIB_response", HFILL }},
5772 { &hf_ftam_f_move_request,
5773 { "f-move-request", "ftam.f_move_request_element",
5774 FT_NONE, BASE_NONE, NULL, 0,
5775 NULL, HFILL }},
5776 { &hf_ftam_f_move_response,
5777 { "f-move-response", "ftam.f_move_response_element",
5778 FT_NONE, BASE_NONE, NULL, 0,
5779 NULL, HFILL }},
5780 { &hf_ftam_f_copy_request,
5781 { "f-copy-request", "ftam.f_copy_request_element",
5782 FT_NONE, BASE_NONE, NULL, 0,
5783 NULL, HFILL }},
5784 { &hf_ftam_f_copy_response,
5785 { "f-copy-response", "ftam.f_copy_response_element",
5786 FT_NONE, BASE_NONE, NULL, 0,
5787 NULL, HFILL }},
5788 { &hf_ftam_reset,
5789 { "reset", "ftam.reset",
5790 FT_BOOLEAN, BASE_NONE, NULL, 0,
5791 "BOOLEAN", HFILL }},
5792 { &hf_ftam_destination_file_directory,
5793 { "destination-file-directory", "ftam.destination_file_directory",
5794 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5795 NULL, HFILL }},
5796 { &hf_ftam_attribute_value_asset_tions,
5797 { "attribute-value-asset-tions", "ftam.attribute_value_asset_tions",
5798 FT_UINT32, BASE_DEC, NULL, 0,
5799 "Attribute_Value_Assertions", HFILL }},
5800 { &hf_ftam_scope,
5801 { "scope", "ftam.scope",
5802 FT_UINT32, BASE_DEC, NULL, 0,
5803 NULL, HFILL }},
5804 { &hf_ftam_objects_attributes_list,
5805 { "objects-attributes-list", "ftam.objects_attributes_list",
5806 FT_UINT32, BASE_DEC, NULL, 0,
5807 NULL, HFILL }},
5808 { &hf_ftam_attribute_value_assertions,
5809 { "attribute-value-assertions", "ftam.attribute_value_assertions",
5810 FT_UINT32, BASE_DEC, NULL, 0,
5811 NULL, HFILL }},
5812 { &hf_ftam_maximum_set_size,
5813 { "maximum-set-size", "ftam.maximum_set_size",
5814 FT_INT32, BASE_DEC, NULL, 0,
5815 "INTEGER", HFILL }},
5816 { &hf_ftam_request_Operation_result,
5817 { "request-Operation-result", "ftam.request_Operation_result",
5818 FT_INT32, BASE_DEC, VALS(ftam_Request_Operation_Result_U_vals), 0,
5819 NULL, HFILL }},
5820 { &hf_ftam_operation_result,
5821 { "operation-result", "ftam.operation_result",
5822 FT_UINT32, BASE_DEC, VALS(ftam_Operation_Result_U_vals), 0,
5823 NULL, HFILL }},
5824 { &hf_ftam_error_action,
5825 { "error-action", "ftam.error_action",
5826 FT_INT32, BASE_DEC, VALS(ftam_Error_Action_vals), 0,
5827 NULL, HFILL }},
5828 { &hf_ftam_last_member_indicator,
5829 { "last-member-indicator", "ftam.last_member_indicator",
5830 FT_BOOLEAN, BASE_NONE, NULL, 0,
5831 "BOOLEAN", HFILL }},
5832 { &hf_ftam_shared_ASE_infonnation,
5833 { "shared-ASE-infonnation", "ftam.shared_ASE_infonnation_element",
5834 FT_NONE, BASE_NONE, NULL, 0,
5835 "Shared_ASE_Information", HFILL }},
5836 { &hf_ftam_target_object,
5837 { "target-object", "ftam.target_object",
5838 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5839 "Pathname_Attribute", HFILL }},
5840 { &hf_ftam_target_Object,
5841 { "target-Object", "ftam.target_Object",
5842 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5843 "Pathname_Attribute", HFILL }},
5844 { &hf_ftam_read_link_attributes,
5845 { "attributes", "ftam.attributes_element",
5846 FT_NONE, BASE_NONE, NULL, 0,
5847 "Read_Attributes", HFILL }},
5848 { &hf_ftam_Attribute_Extension_Names_item,
5849 { "Attribute-Extension-Set-Name", "ftam.Attribute_Extension_Set_Name_element",
5850 FT_NONE, BASE_NONE, NULL, 0,
5851 NULL, HFILL }},
5852 { &hf_ftam_extension_set_identifier,
5853 { "extension-set-identifier", "ftam.extension_set_identifier",
5854 FT_OID, BASE_NONE, NULL, 0,
5855 NULL, HFILL }},
5856 { &hf_ftam_extension_attribute_names,
5857 { "extension-attribute-names", "ftam.extension_attribute_names",
5858 FT_UINT32, BASE_DEC, NULL, 0,
5859 "SEQUENCE_OF_Extension_Attribute_identifier", HFILL }},
5860 { &hf_ftam_extension_attribute_names_item,
5861 { "Extension-Attribute-identifier", "ftam.Extension_Attribute_identifier",
5862 FT_OID, BASE_NONE, NULL, 0,
5863 NULL, HFILL }},
5864 { &hf_ftam_Attribute_Extensions_item,
5865 { "Attribute-Extension-Set", "ftam.Attribute_Extension_Set_element",
5866 FT_NONE, BASE_NONE, NULL, 0,
5867 NULL, HFILL }},
5868 { &hf_ftam_extension_set_attributes,
5869 { "extension-set-attributes", "ftam.extension_set_attributes",
5870 FT_UINT32, BASE_DEC, NULL, 0,
5871 "SEQUENCE_OF_Extension_Attribute", HFILL }},
5872 { &hf_ftam_extension_set_attributes_item,
5873 { "Extension-Attribute", "ftam.Extension_Attribute_element",
5874 FT_NONE, BASE_NONE, NULL, 0,
5875 NULL, HFILL }},
5876 { &hf_ftam_extension_attribute_identifier,
5877 { "extension-attribute-identifier", "ftam.extension_attribute_identifier",
5878 FT_OID, BASE_NONE, NULL, 0,
5879 NULL, HFILL }},
5880 { &hf_ftam_extension_attribute,
5881 { "extension-attribute", "ftam.extension_attribute_element",
5882 FT_NONE, BASE_NONE, NULL, 0,
5883 NULL, HFILL }},
5884 { &hf_ftam__untag_item_03,
5885 { "_untag item", "ftam._untag_item_element",
5886 FT_NONE, BASE_NONE, NULL, 0,
5887 NULL, HFILL }},
5888 { &hf_ftam_root_directory,
5889 { "root-directory", "ftam.root_directory",
5890 FT_UINT32, BASE_DEC, VALS(ftam_Pathname_Attribute_vals), 0,
5891 "Pathname_Attribute", HFILL }},
5892 { &hf_ftam_retrieval_scope,
5893 { "retrieval-scope", "ftam.retrieval_scope",
5894 FT_INT32, BASE_DEC, VALS(ftam_T_retrieval_scope_vals), 0,
5895 NULL, HFILL }},
5896 { &hf_ftam_OR_Set_item,
5897 { "AND-Set", "ftam.AND_Set",
5898 FT_UINT32, BASE_DEC, NULL, 0,
5899 NULL, HFILL }},
5900 { &hf_ftam_AND_Set_item,
5901 { "AND-Set item", "ftam.AND_Set_item",
5902 FT_UINT32, BASE_DEC, VALS(ftam_AND_Set_item_vals), 0,
5903 NULL, HFILL }},
5904 { &hf_ftam_pathname_Pattern,
5905 { "pathname-Pattern", "ftam.pathname_Pattern_element",
5906 FT_NONE, BASE_NONE, NULL, 0,
5907 NULL, HFILL }},
5908 { &hf_ftam_object_type_Pattern,
5909 { "object-type-Pattern", "ftam.object_type_Pattern_element",
5910 FT_NONE, BASE_NONE, NULL, 0,
5911 "Integer_Pattern", HFILL }},
5912 { &hf_ftam_permitted_actions_Pattern,
5913 { "permitted-actions-Pattern", "ftam.permitted_actions_Pattern_element",
5914 FT_NONE, BASE_NONE, NULL, 0,
5915 "Bitstring_Pattern", HFILL }},
5916 { &hf_ftam_contents_type_Pattern,
5917 { "contents-type-Pattern", "ftam.contents_type_Pattern",
5918 FT_UINT32, BASE_DEC, VALS(ftam_Contents_Type_Pattern_vals), 0,
5919 NULL, HFILL }},
5920 { &hf_ftam_linked_Object_Pattern,
5921 { "linked-Object-Pattern", "ftam.linked_Object_Pattern_element",
5922 FT_NONE, BASE_NONE, NULL, 0,
5923 "Pathname_Pattern", HFILL }},
5924 { &hf_ftam_child_objects_Pattern,
5925 { "child-objects-Pattern", "ftam.child_objects_Pattern_element",
5926 FT_NONE, BASE_NONE, NULL, 0,
5927 "Pathname_Pattern", HFILL }},
5928 { &hf_ftam_primaty_pathname_Pattern,
5929 { "primaty-pathname-Pattern", "ftam.primaty_pathname_Pattern_element",
5930 FT_NONE, BASE_NONE, NULL, 0,
5931 "Pathname_Pattern", HFILL }},
5932 { &hf_ftam_storage_account_Pattern,
5933 { "storage-account-Pattern", "ftam.storage_account_Pattern_element",
5934 FT_NONE, BASE_NONE, NULL, 0,
5935 "String_Pattern", HFILL }},
5936 { &hf_ftam_date_and_time_of_creation_Pattern,
5937 { "date-and-time-of-creation-Pattern", "ftam.date_and_time_of_creation_Pattern_element",
5938 FT_NONE, BASE_NONE, NULL, 0,
5939 "Date_and_Time_Pattern", HFILL }},
5940 { &hf_ftam_date_and_time_of_last_modification_Pattern,
5941 { "date-and-time-of-last-modification-Pattern", "ftam.date_and_time_of_last_modification_Pattern_element",
5942 FT_NONE, BASE_NONE, NULL, 0,
5943 "Date_and_Time_Pattern", HFILL }},
5944 { &hf_ftam_date_and_time_of_last_read_access_Pattern,
5945 { "date-and-time-of-last-read-access-Pattern", "ftam.date_and_time_of_last_read_access_Pattern_element",
5946 FT_NONE, BASE_NONE, NULL, 0,
5947 "Date_and_Time_Pattern", HFILL }},
5948 { &hf_ftam_date_and_time_of_last_attribute_modification_Pattern,
5949 { "date-and-time-of-last-attribute-modification-Pattern", "ftam.date_and_time_of_last_attribute_modification_Pattern_element",
5950 FT_NONE, BASE_NONE, NULL, 0,
5951 "Date_and_Time_Pattern", HFILL }},
5952 { &hf_ftam_identity_of_creator_Pattern,
5953 { "identity-of-creator-Pattern", "ftam.identity_of_creator_Pattern_element",
5954 FT_NONE, BASE_NONE, NULL, 0,
5955 "User_Identity_Pattern", HFILL }},
5956 { &hf_ftam_identity_of_last_modifier_Pattern,
5957 { "identity-of-last-modifier-Pattern", "ftam.identity_of_last_modifier_Pattern_element",
5958 FT_NONE, BASE_NONE, NULL, 0,
5959 "User_Identity_Pattern", HFILL }},
5960 { &hf_ftam_identity_of_last_reader_Pattern,
5961 { "identity-of-last-reader-Pattern", "ftam.identity_of_last_reader_Pattern_element",
5962 FT_NONE, BASE_NONE, NULL, 0,
5963 "User_Identity_Pattern", HFILL }},
5964 { &hf_ftam_identity_of_last_attribute_modifier_Pattern,
5965 { "identity-of-last-attribute-modifier-Pattern", "ftam.identity_of_last_attribute_modifier_Pattern_element",
5966 FT_NONE, BASE_NONE, NULL, 0,
5967 "User_Identity_Pattern", HFILL }},
5968 { &hf_ftam_object_availabiiity_Pattern,
5969 { "object-availabiiity-Pattern", "ftam.object_availabiiity_Pattern_element",
5970 FT_NONE, BASE_NONE, NULL, 0,
5971 "Boolean_Pattern", HFILL }},
5972 { &hf_ftam_object_size_Pattern,
5973 { "object-size-Pattern", "ftam.object_size_Pattern_element",
5974 FT_NONE, BASE_NONE, NULL, 0,
5975 "Integer_Pattern", HFILL }},
5976 { &hf_ftam_future_object_size_Pattern,
5977 { "future-object-size-Pattern", "ftam.future_object_size_Pattern_element",
5978 FT_NONE, BASE_NONE, NULL, 0,
5979 "Integer_Pattern", HFILL }},
5980 { &hf_ftam_legal_quailfication_Pattern,
5981 { "legal-quailfication-Pattern", "ftam.legal_quailfication_Pattern_element",
5982 FT_NONE, BASE_NONE, NULL, 0,
5983 "String_Pattern", HFILL }},
5984 { &hf_ftam_attribute_extensions_pattern,
5985 { "attribute-extensions-pattern", "ftam.attribute_extensions_pattern",
5986 FT_UINT32, BASE_DEC, NULL, 0,
5987 NULL, HFILL }},
5988 { &hf_ftam_equality_comparision,
5989 { "equality-comparision", "ftam.equality_comparision",
5990 FT_BYTES, BASE_NONE, NULL, 0,
5991 NULL, HFILL }},
5992 { &hf_ftam_pathname_value,
5993 { "pathname-value", "ftam.pathname_value",
5994 FT_UINT32, BASE_DEC, NULL, 0,
5995 NULL, HFILL }},
5996 { &hf_ftam_pathname_value_item,
5997 { "pathname-value item", "ftam.pathname_value_item",
5998 FT_UINT32, BASE_DEC, VALS(ftam_T_pathname_value_item_vals), 0,
5999 NULL, HFILL }},
6000 { &hf_ftam_string_match,
6001 { "string-match", "ftam.string_match_element",
6002 FT_NONE, BASE_NONE, NULL, 0,
6003 "String_Pattern", HFILL }},
6004 { &hf_ftam_any_match,
6005 { "any-match", "ftam.any_match_element",
6006 FT_NONE, BASE_NONE, NULL, 0,
6007 NULL, HFILL }},
6008 { &hf_ftam_string_value,
6009 { "string-value", "ftam.string_value",
6010 FT_UINT32, BASE_DEC, NULL, 0,
6011 NULL, HFILL }},
6012 { &hf_ftam_string_value_item,
6013 { "string-value item", "ftam.string_value_item",
6014 FT_UINT32, BASE_DEC, VALS(ftam_T_string_value_item_vals), 0,
6015 NULL, HFILL }},
6016 { &hf_ftam_substring_match,
6017 { "substring-match", "ftam.substring_match",
6018 FT_STRING, BASE_NONE, NULL, 0,
6019 "GraphicString", HFILL }},
6020 { &hf_ftam_number_of_characters_match,
6021 { "number-of-characters-match", "ftam.number_of_characters_match",
6022 FT_INT32, BASE_DEC, NULL, 0,
6023 "INTEGER", HFILL }},
6024 { &hf_ftam_match_bitstring,
6025 { "match-bitstring", "ftam.match_bitstring",
6026 FT_BYTES, BASE_NONE, NULL, 0,
6027 "BIT_STRING", HFILL }},
6028 { &hf_ftam_significance_bitstring,
6029 { "significance-bitstring", "ftam.significance_bitstring",
6030 FT_BYTES, BASE_NONE, NULL, 0,
6031 "BIT_STRING", HFILL }},
6032 { &hf_ftam_relational_camparision,
6033 { "relational-camparision", "ftam.relational_camparision",
6034 FT_BYTES, BASE_NONE, NULL, 0,
6035 "Equality_Comparision", HFILL }},
6036 { &hf_ftam_time_and_date_value,
6037 { "time-and-date-value", "ftam.time_and_date_value",
6038 FT_STRING, BASE_NONE, NULL, 0,
6039 "GeneralizedTime", HFILL }},
6040 { &hf_ftam_relational_comparision,
6041 { "relational-comparision", "ftam.relational_comparision",
6042 FT_BYTES, BASE_NONE, NULL, 0,
6043 NULL, HFILL }},
6044 { &hf_ftam_integer_value,
6045 { "integer-value", "ftam.integer_value",
6046 FT_INT32, BASE_DEC, NULL, 0,
6047 "INTEGER", HFILL }},
6048 { &hf_ftam_object_identifier_value,
6049 { "object-identifier-value", "ftam.object_identifier_value",
6050 FT_OID, BASE_NONE, NULL, 0,
6051 "OBJECT_IDENTIFIER", HFILL }},
6052 { &hf_ftam_boolean_value,
6053 { "boolean-value", "ftam.boolean_value",
6054 FT_BOOLEAN, BASE_NONE, NULL, 0,
6055 "BOOLEAN", HFILL }},
6056 { &hf_ftam_document_type_Pattern,
6057 { "document-type-Pattern", "ftam.document_type_Pattern_element",
6058 FT_NONE, BASE_NONE, NULL, 0,
6059 "Object_Identifier_Pattern", HFILL }},
6060 { &hf_ftam_constraint_set_abstract_Syntax_Pattern,
6061 { "constraint-set-abstract-Syntax-Pattern", "ftam.constraint_set_abstract_Syntax_Pattern_element",
6062 FT_NONE, BASE_NONE, NULL, 0,
6063 "T_constraint_set_abstract_Syntax_Pattern", HFILL }},
6064 { &hf_ftam_constraint_Set_Pattern,
6065 { "constraint-Set-Pattern", "ftam.constraint_Set_Pattern_element",
6066 FT_NONE, BASE_NONE, NULL, 0,
6067 "Object_Identifier_Pattern", HFILL }},
6068 { &hf_ftam_abstract_Syntax_Pattern,
6069 { "abstract-Syntax-Pattern", "ftam.abstract_Syntax_Pattern_element",
6070 FT_NONE, BASE_NONE, NULL, 0,
6071 "Object_Identifier_Pattern", HFILL }},
6072 { &hf_ftam_Attribute_Extensions_Pattern_item,
6073 { "Attribute-Extensions-Pattern item", "ftam.Attribute_Extensions_Pattern_item_element",
6074 FT_NONE, BASE_NONE, NULL, 0,
6075 NULL, HFILL }},
6076 { &hf_ftam_extension_set_attribute_Patterns,
6077 { "extension-set-attribute-Patterns", "ftam.extension_set_attribute_Patterns",
6078 FT_UINT32, BASE_DEC, NULL, 0,
6079 "T_extension_set_attribute_Patterns", HFILL }},
6080 { &hf_ftam_extension_set_attribute_Patterns_item,
6081 { "extension-set-attribute-Patterns item", "ftam.extension_set_attribute_Patterns_item_element",
6082 FT_NONE, BASE_NONE, NULL, 0,
6083 "T_extension_set_attribute_Patterns_item", HFILL }},
6084 { &hf_ftam_attribute_extension_attribute_identifier,
6085 { "extension-attribute-identifier", "ftam.extension_attribute_identifier",
6086 FT_OID, BASE_NONE, NULL, 0,
6087 "T_attribute_extension_attribute_identifier", HFILL }},
6088 { &hf_ftam_extension_attribute_Pattern,
6089 { "extension-attribute-Pattern", "ftam.extension_attribute_Pattern_element",
6090 FT_NONE, BASE_NONE, NULL, 0,
6091 NULL, HFILL }},
6092 { &hf_ftam__untag_item_04,
6093 { "Read-Attributes", "ftam.Read_Attributes_element",
6094 FT_NONE, BASE_NONE, NULL, 0,
6095 NULL, HFILL }},
6096 { &hf_ftam_success_Object_count,
6097 { "success-Object-count", "ftam.success_Object_count",
6098 FT_INT32, BASE_DEC, NULL, 0,
6099 "INTEGER", HFILL }},
6100 { &hf_ftam_success_Object_names,
6101 { "success-Object-names", "ftam.success_Object_names",
6102 FT_UINT32, BASE_DEC, NULL, 0,
6103 "SEQUENCE_OF_Pathname", HFILL }},
6104 { &hf_ftam_success_Object_names_item,
6105 { "Pathname", "ftam.Pathname",
6106 FT_UINT32, BASE_DEC, NULL, 0,
6107 NULL, HFILL }},
6108 { &hf_ftam_Pathname_item,
6109 { "Pathname item", "ftam.Pathname_item",
6110 FT_STRING, BASE_NONE, NULL, 0,
6111 "GraphicString", HFILL }},
6112 { &hf_ftam_Pass_Passwords_item,
6113 { "Password", "ftam.Password",
6114 FT_UINT32, BASE_DEC, VALS(ftam_Password_U_vals), 0,
6115 NULL, HFILL }},
6116 { &hf_ftam__untag_item_05,
6117 { "_untag item", "ftam._untag_item_element",
6118 FT_NONE, BASE_NONE, NULL, 0,
6119 "Path_Access_Passwords_item", HFILL }},
6120 { &hf_ftam_ap,
6121 { "ap", "ftam.ap",
6122 FT_UINT32, BASE_DEC, VALS(acse_AP_title_vals), 0,
6123 "AP_title", HFILL }},
6124 { &hf_ftam_ae,
6125 { "ae", "ftam.ae",
6126 FT_UINT32, BASE_DEC, VALS(acse_ASO_qualifier_vals), 0,
6127 "AE_qualifier", HFILL }},
6128 { &hf_ftam_Protocol_Version_U_version_1,
6129 { "version-1", "ftam.Protocol.Version.U.version.1",
6130 FT_BOOLEAN, 8, NULL, 0x80,
6131 NULL, HFILL }},
6132 { &hf_ftam_Protocol_Version_U_version_2,
6133 { "version-2", "ftam.Protocol.Version.U.version.2",
6134 FT_BOOLEAN, 8, NULL, 0x40,
6135 NULL, HFILL }},
6136 { &hf_ftam_Service_Class_U_unconstrained_class,
6137 { "unconstrained-class", "ftam.Service.Class.U.unconstrained.class",
6138 FT_BOOLEAN, 8, NULL, 0x80,
6139 NULL, HFILL }},
6140 { &hf_ftam_Service_Class_U_management_class,
6141 { "management-class", "ftam.Service.Class.U.management.class",
6142 FT_BOOLEAN, 8, NULL, 0x40,
6143 NULL, HFILL }},
6144 { &hf_ftam_Service_Class_U_transfer_class,
6145 { "transfer-class", "ftam.Service.Class.U.transfer.class",
6146 FT_BOOLEAN, 8, NULL, 0x20,
6147 NULL, HFILL }},
6148 { &hf_ftam_Service_Class_U_transfer_and_management_class,
6149 { "transfer-and-management-class", "ftam.Service.Class.U.transfer.and.management.class",
6150 FT_BOOLEAN, 8, NULL, 0x10,
6151 NULL, HFILL }},
6152 { &hf_ftam_Service_Class_U_access_class,
6153 { "access-class", "ftam.Service.Class.U.access.class",
6154 FT_BOOLEAN, 8, NULL, 0x08,
6155 NULL, HFILL }},
6156 { &hf_ftam_Functional_Units_U_spare_bit0,
6157 { "spare_bit0", "ftam.Functional.Units.U.spare.bit0",
6158 FT_BOOLEAN, 8, NULL, 0x80,
6159 NULL, HFILL }},
6160 { &hf_ftam_Functional_Units_U_spare_bit1,
6161 { "spare_bit1", "ftam.Functional.Units.U.spare.bit1",
6162 FT_BOOLEAN, 8, NULL, 0x40,
6163 NULL, HFILL }},
6164 { &hf_ftam_Functional_Units_U_read,
6165 { "read", "ftam.Functional.Units.U.read",
6166 FT_BOOLEAN, 8, NULL, 0x20,
6167 NULL, HFILL }},
6168 { &hf_ftam_Functional_Units_U_write,
6169 { "write", "ftam.Functional.Units.U.write",
6170 FT_BOOLEAN, 8, NULL, 0x10,
6171 NULL, HFILL }},
6172 { &hf_ftam_Functional_Units_U_file_access,
6173 { "file-access", "ftam.Functional.Units.U.file.access",
6174 FT_BOOLEAN, 8, NULL, 0x08,
6175 NULL, HFILL }},
6176 { &hf_ftam_Functional_Units_U_limited_file_management,
6177 { "limited-file-management", "ftam.Functional.Units.U.limited.file.management",
6178 FT_BOOLEAN, 8, NULL, 0x04,
6179 NULL, HFILL }},
6180 { &hf_ftam_Functional_Units_U_enhanced_file_management,
6181 { "enhanced-file-management", "ftam.Functional.Units.U.enhanced.file.management",
6182 FT_BOOLEAN, 8, NULL, 0x02,
6183 NULL, HFILL }},
6184 { &hf_ftam_Functional_Units_U_grouping,
6185 { "grouping", "ftam.Functional.Units.U.grouping",
6186 FT_BOOLEAN, 8, NULL, 0x01,
6187 NULL, HFILL }},
6188 { &hf_ftam_Functional_Units_U_fadu_locking,
6189 { "fadu-locking", "ftam.Functional.Units.U.fadu.locking",
6190 FT_BOOLEAN, 8, NULL, 0x80,
6191 NULL, HFILL }},
6192 { &hf_ftam_Functional_Units_U_recovery,
6193 { "recovery", "ftam.Functional.Units.U.recovery",
6194 FT_BOOLEAN, 8, NULL, 0x40,
6195 NULL, HFILL }},
6196 { &hf_ftam_Functional_Units_U_restart_data_transfer,
6197 { "restart-data-transfer", "ftam.Functional.Units.U.restart.data.transfer",
6198 FT_BOOLEAN, 8, NULL, 0x20,
6199 NULL, HFILL }},
6200 { &hf_ftam_Functional_Units_U_limited_filestore_management,
6201 { "limited-filestore-management", "ftam.Functional.Units.U.limited.filestore.management",
6202 FT_BOOLEAN, 8, NULL, 0x10,
6203 NULL, HFILL }},
6204 { &hf_ftam_Functional_Units_U_enhanced_filestore_management,
6205 { "enhanced-filestore-management", "ftam.Functional.Units.U.enhanced.filestore.management",
6206 FT_BOOLEAN, 8, NULL, 0x08,
6207 NULL, HFILL }},
6208 { &hf_ftam_Functional_Units_U_object_manipulation,
6209 { "object-manipulation", "ftam.Functional.Units.U.object.manipulation",
6210 FT_BOOLEAN, 8, NULL, 0x04,
6211 NULL, HFILL }},
6212 { &hf_ftam_Functional_Units_U_group_manipulation,
6213 { "group-manipulation", "ftam.Functional.Units.U.group.manipulation",
6214 FT_BOOLEAN, 8, NULL, 0x02,
6215 NULL, HFILL }},
6216 { &hf_ftam_Functional_Units_U_consecutive_access,
6217 { "consecutive-access", "ftam.Functional.Units.U.consecutive.access",
6218 FT_BOOLEAN, 8, NULL, 0x01,
6219 NULL, HFILL }},
6220 { &hf_ftam_Functional_Units_U_concurrent_access,
6221 { "concurrent-access", "ftam.Functional.Units.U.concurrent.access",
6222 FT_BOOLEAN, 8, NULL, 0x80,
6223 NULL, HFILL }},
6224 { &hf_ftam_Attribute_Groups_U_storage,
6225 { "storage", "ftam.Attribute.Groups.U.storage",
6226 FT_BOOLEAN, 8, NULL, 0x80,
6227 NULL, HFILL }},
6228 { &hf_ftam_Attribute_Groups_U_security,
6229 { "security", "ftam.Attribute.Groups.U.security",
6230 FT_BOOLEAN, 8, NULL, 0x40,
6231 NULL, HFILL }},
6232 { &hf_ftam_Attribute_Groups_U_private,
6233 { "private", "ftam.Attribute.Groups.U.private",
6234 FT_BOOLEAN, 8, NULL, 0x20,
6235 NULL, HFILL }},
6236 { &hf_ftam_Attribute_Groups_U_extension,
6237 { "extension", "ftam.Attribute.Groups.U.extension",
6238 FT_BOOLEAN, 8, NULL, 0x10,
6239 NULL, HFILL }},
6240 { &hf_ftam_T_processing_mode_f_read,
6241 { "f-read", "ftam.T.processing.mode.f.read",
6242 FT_BOOLEAN, 8, NULL, 0x80,
6243 NULL, HFILL }},
6244 { &hf_ftam_T_processing_mode_f_insert,
6245 { "f-insert", "ftam.T.processing.mode.f.insert",
6246 FT_BOOLEAN, 8, NULL, 0x40,
6247 NULL, HFILL }},
6248 { &hf_ftam_T_processing_mode_f_replace,
6249 { "f-replace", "ftam.T.processing.mode.f.replace",
6250 FT_BOOLEAN, 8, NULL, 0x20,
6251 NULL, HFILL }},
6252 { &hf_ftam_T_processing_mode_f_extend,
6253 { "f-extend", "ftam.T.processing.mode.f.extend",
6254 FT_BOOLEAN, 8, NULL, 0x10,
6255 NULL, HFILL }},
6256 { &hf_ftam_T_processing_mode_f_erase,
6257 { "f-erase", "ftam.T.processing.mode.f.erase",
6258 FT_BOOLEAN, 8, NULL, 0x08,
6259 NULL, HFILL }},
6260 { &hf_ftam_Access_Request_U_read,
6261 { "read", "ftam.Access.Request.U.read",
6262 FT_BOOLEAN, 8, NULL, 0x80,
6263 NULL, HFILL }},
6264 { &hf_ftam_Access_Request_U_insert,
6265 { "insert", "ftam.Access.Request.U.insert",
6266 FT_BOOLEAN, 8, NULL, 0x40,
6267 NULL, HFILL }},
6268 { &hf_ftam_Access_Request_U_replace,
6269 { "replace", "ftam.Access.Request.U.replace",
6270 FT_BOOLEAN, 8, NULL, 0x20,
6271 NULL, HFILL }},
6272 { &hf_ftam_Access_Request_U_extend,
6273 { "extend", "ftam.Access.Request.U.extend",
6274 FT_BOOLEAN, 8, NULL, 0x10,
6275 NULL, HFILL }},
6276 { &hf_ftam_Access_Request_U_erase,
6277 { "erase", "ftam.Access.Request.U.erase",
6278 FT_BOOLEAN, 8, NULL, 0x08,
6279 NULL, HFILL }},
6280 { &hf_ftam_Access_Request_U_read_attribute,
6281 { "read-attribute", "ftam.Access.Request.U.read.attribute",
6282 FT_BOOLEAN, 8, NULL, 0x04,
6283 NULL, HFILL }},
6284 { &hf_ftam_Access_Request_U_change_attribute,
6285 { "change-attribute", "ftam.Access.Request.U.change.attribute",
6286 FT_BOOLEAN, 8, NULL, 0x02,
6287 NULL, HFILL }},
6288 { &hf_ftam_Access_Request_U_delete_Object,
6289 { "delete-Object", "ftam.Access.Request.U.delete.Object",
6290 FT_BOOLEAN, 8, NULL, 0x01,
6291 NULL, HFILL }},
6292 { &hf_ftam_Concurrency_Key_not_required,
6293 { "not-required", "ftam.Concurrency.Key.not.required",
6294 FT_BOOLEAN, 8, NULL, 0x80,
6295 NULL, HFILL }},
6296 { &hf_ftam_Concurrency_Key_shared,
6297 { "shared", "ftam.Concurrency.Key.shared",
6298 FT_BOOLEAN, 8, NULL, 0x40,
6299 NULL, HFILL }},
6300 { &hf_ftam_Concurrency_Key_exclusive,
6301 { "exclusive", "ftam.Concurrency.Key.exclusive",
6302 FT_BOOLEAN, 8, NULL, 0x20,
6303 NULL, HFILL }},
6304 { &hf_ftam_Concurrency_Key_no_access,
6305 { "no-access", "ftam.Concurrency.Key.no.access",
6306 FT_BOOLEAN, 8, NULL, 0x10,
6307 NULL, HFILL }},
6308 { &hf_ftam_Permitted_Actions_Attribute_read,
6309 { "read", "ftam.Permitted.Actions.Attribute.read",
6310 FT_BOOLEAN, 8, NULL, 0x80,
6311 NULL, HFILL }},
6312 { &hf_ftam_Permitted_Actions_Attribute_insert,
6313 { "insert", "ftam.Permitted.Actions.Attribute.insert",
6314 FT_BOOLEAN, 8, NULL, 0x40,
6315 NULL, HFILL }},
6316 { &hf_ftam_Permitted_Actions_Attribute_replace,
6317 { "replace", "ftam.Permitted.Actions.Attribute.replace",
6318 FT_BOOLEAN, 8, NULL, 0x20,
6319 NULL, HFILL }},
6320 { &hf_ftam_Permitted_Actions_Attribute_extend,
6321 { "extend", "ftam.Permitted.Actions.Attribute.extend",
6322 FT_BOOLEAN, 8, NULL, 0x10,
6323 NULL, HFILL }},
6324 { &hf_ftam_Permitted_Actions_Attribute_erase,
6325 { "erase", "ftam.Permitted.Actions.Attribute.erase",
6326 FT_BOOLEAN, 8, NULL, 0x08,
6327 NULL, HFILL }},
6328 { &hf_ftam_Permitted_Actions_Attribute_read_attribute,
6329 { "read-attribute", "ftam.Permitted.Actions.Attribute.read.attribute",
6330 FT_BOOLEAN, 8, NULL, 0x04,
6331 NULL, HFILL }},
6332 { &hf_ftam_Permitted_Actions_Attribute_change_attribute,
6333 { "change-attribute", "ftam.Permitted.Actions.Attribute.change.attribute",
6334 FT_BOOLEAN, 8, NULL, 0x02,
6335 NULL, HFILL }},
6336 { &hf_ftam_Permitted_Actions_Attribute_delete_Object,
6337 { "delete-Object", "ftam.Permitted.Actions.Attribute.delete.Object",
6338 FT_BOOLEAN, 8, NULL, 0x01,
6339 NULL, HFILL }},
6340 { &hf_ftam_Permitted_Actions_Attribute_traversal,
6341 { "traversal", "ftam.Permitted.Actions.Attribute.traversal",
6342 FT_BOOLEAN, 8, NULL, 0x80,
6343 NULL, HFILL }},
6344 { &hf_ftam_Permitted_Actions_Attribute_reverse_traversal,
6345 { "reverse-traversal", "ftam.Permitted.Actions.Attribute.reverse.traversal",
6346 FT_BOOLEAN, 8, NULL, 0x40,
6347 NULL, HFILL }},
6348 { &hf_ftam_Permitted_Actions_Attribute_random_Order,
6349 { "random-Order", "ftam.Permitted.Actions.Attribute.random.Order",
6350 FT_BOOLEAN, 8, NULL, 0x20,
6351 NULL, HFILL }},
6352 { &hf_ftam_Permitted_Actions_Attribute_pass,
6353 { "pass", "ftam.Permitted.Actions.Attribute.pass",
6354 FT_BOOLEAN, 8, NULL, 0x10,
6355 NULL, HFILL }},
6356 { &hf_ftam_Permitted_Actions_Attribute_link,
6357 { "link", "ftam.Permitted.Actions.Attribute.link",
6358 FT_BOOLEAN, 8, NULL, 0x08,
6359 NULL, HFILL }},
6360 { &hf_ftam_Equality_Comparision_no_value_available_matches,
6361 { "no-value-available-matches", "ftam.Equality.Comparision.no.value.available.matches",
6362 FT_BOOLEAN, 8, NULL, 0x80,
6363 NULL, HFILL }},
6364 { &hf_ftam_Equality_Comparision_equals_matches,
6365 { "equals-matches", "ftam.Equality.Comparision.equals.matches",
6366 FT_BOOLEAN, 8, NULL, 0x40,
6367 NULL, HFILL }},
6368 { &hf_ftam_Relational_Comparision_no_value_available_matches,
6369 { "no-value-available-matches", "ftam.Relational.Comparision.no.value.available.matches",
6370 FT_BOOLEAN, 8, NULL, 0x80,
6371 NULL, HFILL }},
6372 { &hf_ftam_Relational_Comparision_equals_matches,
6373 { "equals-matches", "ftam.Relational.Comparision.equals.matches",
6374 FT_BOOLEAN, 8, NULL, 0x40,
6375 NULL, HFILL }},
6376 { &hf_ftam_Relational_Comparision_less_than_matches,
6377 { "less-than-matches", "ftam.Relational.Comparision.less.than.matches",
6378 FT_BOOLEAN, 8, NULL, 0x20,
6379 NULL, HFILL }},
6380 { &hf_ftam_Relational_Comparision_greater_than_matches,
6381 { "greater-than-matches", "ftam.Relational.Comparision.greater.than.matches",
6382 FT_BOOLEAN, 8, NULL, 0x10,
6383 NULL, HFILL }},
6384 { &hf_ftam_Attribute_Names_read_pathname,
6385 { "read-pathname", "ftam.Attribute.Names.read.pathname",
6386 FT_BOOLEAN, 8, NULL, 0x80,
6387 NULL, HFILL }},
6388 { &hf_ftam_Attribute_Names_read_permitted_actions,
6389 { "read-permitted-actions", "ftam.Attribute.Names.read.permitted.actions",
6390 FT_BOOLEAN, 8, NULL, 0x40,
6391 NULL, HFILL }},
6392 { &hf_ftam_Attribute_Names_read_contents_type,
6393 { "read-contents-type", "ftam.Attribute.Names.read.contents.type",
6394 FT_BOOLEAN, 8, NULL, 0x20,
6395 NULL, HFILL }},
6396 { &hf_ftam_Attribute_Names_read_storage_account,
6397 { "read-storage-account", "ftam.Attribute.Names.read.storage.account",
6398 FT_BOOLEAN, 8, NULL, 0x10,
6399 NULL, HFILL }},
6400 { &hf_ftam_Attribute_Names_read_date_and_time_of_creation,
6401 { "read-date-and-time-of-creation", "ftam.Attribute.Names.read.date.and.time.of.creation",
6402 FT_BOOLEAN, 8, NULL, 0x08,
6403 NULL, HFILL }},
6404 { &hf_ftam_Attribute_Names_read_date_and_time_of_last_modification,
6405 { "read-date-and-time-of-last-modification", "ftam.Attribute.Names.read.date.and.time.of.last.modification",
6406 FT_BOOLEAN, 8, NULL, 0x04,
6407 NULL, HFILL }},
6408 { &hf_ftam_Attribute_Names_read_date_and_time_of_last_read_access,
6409 { "read-date-and-time-of-last-read-access", "ftam.Attribute.Names.read.date.and.time.of.last.read.access",
6410 FT_BOOLEAN, 8, NULL, 0x02,
6411 NULL, HFILL }},
6412 { &hf_ftam_Attribute_Names_read_date_and_time_of_last_attribute_modification,
6413 { "read-date-and-time-of-last-attribute-modification", "ftam.Attribute.Names.read.date.and.time.of.last.attribute.modification",
6414 FT_BOOLEAN, 8, NULL, 0x01,
6415 NULL, HFILL }},
6416 { &hf_ftam_Attribute_Names_read_identity_of_creator,
6417 { "read-identity-of-creator", "ftam.Attribute.Names.read.identity.of.creator",
6418 FT_BOOLEAN, 8, NULL, 0x80,
6419 NULL, HFILL }},
6420 { &hf_ftam_Attribute_Names_read_identity_of_last_modifier,
6421 { "read-identity-of-last-modifier", "ftam.Attribute.Names.read.identity.of.last.modifier",
6422 FT_BOOLEAN, 8, NULL, 0x40,
6423 NULL, HFILL }},
6424 { &hf_ftam_Attribute_Names_read_identity_of_last_reader,
6425 { "read-identity-of-last-reader", "ftam.Attribute.Names.read.identity.of.last.reader",
6426 FT_BOOLEAN, 8, NULL, 0x20,
6427 NULL, HFILL }},
6428 { &hf_ftam_Attribute_Names_read_identity_of_last_attribute_modifier,
6429 { "read-identity-of-last-attribute-modifier", "ftam.Attribute.Names.read.identity.of.last.attribute.modifier",
6430 FT_BOOLEAN, 8, NULL, 0x10,
6431 NULL, HFILL }},
6432 { &hf_ftam_Attribute_Names_read_Object_availability,
6433 { "read-Object-availability", "ftam.Attribute.Names.read.Object.availability",
6434 FT_BOOLEAN, 8, NULL, 0x08,
6435 NULL, HFILL }},
6436 { &hf_ftam_Attribute_Names_read_Object_size,
6437 { "read-Object-size", "ftam.Attribute.Names.read.Object.size",
6438 FT_BOOLEAN, 8, NULL, 0x04,
6439 NULL, HFILL }},
6440 { &hf_ftam_Attribute_Names_read_future_Object_size,
6441 { "read-future-Object-size", "ftam.Attribute.Names.read.future.Object.size",
6442 FT_BOOLEAN, 8, NULL, 0x02,
6443 NULL, HFILL }},
6444 { &hf_ftam_Attribute_Names_read_access_control,
6445 { "read-access-control", "ftam.Attribute.Names.read.access.control",
6446 FT_BOOLEAN, 8, NULL, 0x01,
6447 NULL, HFILL }},
6448 { &hf_ftam_Attribute_Names_read_l8gal_qualifiCatiOnS,
6449 { "read-l8gal-qualifiCatiOnS", "ftam.Attribute.Names.read.l8gal.qualifiCatiOnS",
6450 FT_BOOLEAN, 8, NULL, 0x80,
6451 NULL, HFILL }},
6452 { &hf_ftam_Attribute_Names_read_private_use,
6453 { "read-private-use", "ftam.Attribute.Names.read.private.use",
6454 FT_BOOLEAN, 8, NULL, 0x40,
6455 NULL, HFILL }},
6456 { &hf_ftam_Attribute_Names_read_Object_type,
6457 { "read-Object-type", "ftam.Attribute.Names.read.Object.type",
6458 FT_BOOLEAN, 8, NULL, 0x20,
6459 NULL, HFILL }},
6460 { &hf_ftam_Attribute_Names_read_linked_Object,
6461 { "read-linked-Object", "ftam.Attribute.Names.read.linked.Object",
6462 FT_BOOLEAN, 8, NULL, 0x10,
6463 NULL, HFILL }},
6464 { &hf_ftam_Attribute_Names_read_primary_pathname,
6465 { "read-primary-pathname", "ftam.Attribute.Names.read.primary.pathname",
6466 FT_BOOLEAN, 8, NULL, 0x08,
6467 NULL, HFILL }},
6468 { &hf_ftam_Attribute_Names_read_path_access_control,
6469 { "read-path-access-control", "ftam.Attribute.Names.read.path.access.control",
6470 FT_BOOLEAN, 8, NULL, 0x04,
6471 NULL, HFILL }},
6472 { &hf_ftam_Attribute_Names_spare_bit22,
6473 { "spare_bit22", "ftam.Attribute.Names.spare.bit22",
6474 FT_BOOLEAN, 8, NULL, 0x02,
6475 NULL, HFILL }},
6476 { &hf_ftam_Attribute_Names_read_Child_objects,
6477 { "read-Child-objects", "ftam.Attribute.Names.read.Child.objects",
6478 FT_BOOLEAN, 8, NULL, 0x01,
6479 NULL, HFILL }},
6480
6481 /*--- End of included file: packet-ftam-hfarr.c ---*/
6482 #line 119 "./asn1/ftam/packet-ftam-template.c"
6483 };
6484
6485 /* List of subtrees */
6486 static gint *ett[] = {
6487 &ett_ftam,
6488
6489 /*--- Included file: packet-ftam-ettarr.c ---*/
6490 #line 1 "./asn1/ftam/packet-ftam-ettarr.c"
6491 &ett_ftam_PDU,
6492 &ett_ftam_FTAM_Regime_PDU,
6493 &ett_ftam_F_INITIALIZE_request,
6494 &ett_ftam_F_INITIALIZE_response,
6495 &ett_ftam_Protocol_Version_U,
6496 &ett_ftam_Service_Class_U,
6497 &ett_ftam_Functional_Units_U,
6498 &ett_ftam_Attribute_Groups_U,
6499 &ett_ftam_Contents_Type_List_U,
6500 &ett_ftam_Contents_Type_List_item,
6501 &ett_ftam_F_TERMINATE_request,
6502 &ett_ftam_F_TERMINATE_response,
6503 &ett_ftam_F_U_ABORT_request,
6504 &ett_ftam_F_P_ABORT_request,
6505 &ett_ftam_File_PDU,
6506 &ett_ftam_F_SELECT_request,
6507 &ett_ftam_F_SELECT_response,
6508 &ett_ftam_F_DESELECT_request,
6509 &ett_ftam_F_DESELECT_response,
6510 &ett_ftam_F_CREATE_request,
6511 &ett_ftam_F_CREATE_response,
6512 &ett_ftam_F_DELETE_request,
6513 &ett_ftam_F_DELETE_response,
6514 &ett_ftam_F_READ_ATTRIB_request,
6515 &ett_ftam_F_READ_ATTRIB_response,
6516 &ett_ftam_F_CHANGE_ATTRIB_request,
6517 &ett_ftam_F_CHANGE_ATTRIB_response,
6518 &ett_ftam_F_OPEN_request,
6519 &ett_ftam_T_processing_mode,
6520 &ett_ftam_T_open_contents_type,
6521 &ett_ftam_SET_OF_Abstract_Syntax_Name,
6522 &ett_ftam_F_OPEN_response,
6523 &ett_ftam_F_CLOSE_request,
6524 &ett_ftam_F_CLOSE_response,
6525 &ett_ftam_F_BEGIN_GROUP_request,
6526 &ett_ftam_F_BEGIN_GROUP_response,
6527 &ett_ftam_F_END_GROUP_request,
6528 &ett_ftam_F_END_GROUP_response,
6529 &ett_ftam_F_RECOVER_request,
6530 &ett_ftam_F_RECOVER_response,
6531 &ett_ftam_F_LOCATE_request,
6532 &ett_ftam_F_LOCATE_response,
6533 &ett_ftam_F_ERASE_request,
6534 &ett_ftam_F_ERASE_response,
6535 &ett_ftam_Bulk_Data_PDU,
6536 &ett_ftam_F_READ_request,
6537 &ett_ftam_F_WRITE_request,
6538 &ett_ftam_F_DATA_END_request,
6539 &ett_ftam_F_TRANSFER_END_request,
6540 &ett_ftam_F_TRANSFER_END_response,
6541 &ett_ftam_F_CANCEL_request,
6542 &ett_ftam_F_CANCEL_response,
6543 &ett_ftam_F_RESTART_request,
6544 &ett_ftam_F_RESTART_response,
6545 &ett_ftam_Access_Context_U,
6546 &ett_ftam_Access_Passwords_U,
6547 &ett_ftam_Access_Request_U,
6548 &ett_ftam_Change_Attributes_U,
6549 &ett_ftam_Charging_U,
6550 &ett_ftam_Charging_item,
6551 &ett_ftam_Concurrency_Control_U,
6552 &ett_ftam_Create_Attributes_U,
6553 &ett_ftam_Diagnostic_U,
6554 &ett_ftam_Diagnostic_item,
6555 &ett_ftam_FADU_Identity_U,
6556 &ett_ftam_SEQUENCE_OF_Node_Name,
6557 &ett_ftam_Password_U,
6558 &ett_ftam_Read_Attributes_U,
6559 &ett_ftam_Select_Attributes_U,
6560 &ett_ftam_Access_Control_Attribute,
6561 &ett_ftam_SET_OF_Access_Control_Element,
6562 &ett_ftam_Access_Control_Change_Attribute,
6563 &ett_ftam_T_actual_values1,
6564 &ett_ftam_Access_Control_Element,
6565 &ett_ftam_Concurrency_Access,
6566 &ett_ftam_Concurrency_Key,
6567 &ett_ftam_Account_Attribute,
6568 &ett_ftam_Contents_Type_Attribute,
6569 &ett_ftam_T_document_type,
6570 &ett_ftam_T_constraint_set_and_abstract_Syntax,
6571 &ett_ftam_Date_and_Time_Attribute,
6572 &ett_ftam_Object_Availability_Attribute,
6573 &ett_ftam_Pathname_Attribute,
6574 &ett_ftam_Object_Size_Attribute,
6575 &ett_ftam_Legal_Qualification_Attribute,
6576 &ett_ftam_Permitted_Actions_Attribute,
6577 &ett_ftam_Private_Use_Attribute,
6578 &ett_ftam_User_Identity_Attribute,
6579 &ett_ftam_Child_Objects_Attribute,
6580 &ett_ftam_FSM_PDU,
6581 &ett_ftam_F_CHANGE_PREFIX_request,
6582 &ett_ftam_F_CHANGE_PREFIX_response,
6583 &ett_ftam_F_LIST_request,
6584 &ett_ftam_F_LIST_response,
6585 &ett_ftam_F_GROUP_SELECT_request,
6586 &ett_ftam_F_GROUP_SELECT_response,
6587 &ett_ftam_F_GROUP_DELETE_request,
6588 &ett_ftam_F_GROUP_DELETE_response,
6589 &ett_ftam_F_GROUP_MOVE_request,
6590 &ett_ftam_F_GROUP_MOVE_response,
6591 &ett_ftam_F_GROUP_COPY_request,
6592 &ett_ftam_F_GROUP_COPY_response,
6593 &ett_ftam_F_GROUP_LIST_request,
6594 &ett_ftam_F_GROUP_LIST_response,
6595 &ett_ftam_F_GROUP_CHANGE_ATTRIB_request,
6596 &ett_ftam_F_GROUP_CHANGE_ATTRIB_response,
6597 &ett_ftam_F_SELECT_ANOTHER_request,
6598 &ett_ftam_F_SELECT_ANOTHER_response,
6599 &ett_ftam_F_CREATE_DIRECTORY_request,
6600 &ett_ftam_F_CREATE_DIRECTORY_response,
6601 &ett_ftam_F_LINK_request,
6602 &ett_ftam_F_LINK_response,
6603 &ett_ftam_F_UNLINK_request,
6604 &ett_ftam_F_UNLINK_response,
6605 &ett_ftam_F_READ_LINK_ATTRIB_request,
6606 &ett_ftam_F_READ_LINK_ATTRIB_response,
6607 &ett_ftam_F_CHANGE_LINK_ATTRIB_request,
6608 &ett_ftam_F_CHANGE_LINK_ATTRIB_response,
6609 &ett_ftam_F_MOVE_request,
6610 &ett_ftam_F_MOVE_response,
6611 &ett_ftam_F_COPY_request,
6612 &ett_ftam_F_COPY_response,
6613 &ett_ftam_Attribute_Extension_Names,
6614 &ett_ftam_Attribute_Extension_Set_Name,
6615 &ett_ftam_SEQUENCE_OF_Extension_Attribute_identifier,
6616 &ett_ftam_Attribute_Extensions,
6617 &ett_ftam_Attribute_Extension_Set,
6618 &ett_ftam_SEQUENCE_OF_Extension_Attribute,
6619 &ett_ftam_Extension_Attribute,
6620 &ett_ftam_Scope_U,
6621 &ett_ftam_T__untag_item,
6622 &ett_ftam_OR_Set,
6623 &ett_ftam_AND_Set,
6624 &ett_ftam_AND_Set_item,
6625 &ett_ftam_Equality_Comparision,
6626 &ett_ftam_Relational_Comparision,
6627 &ett_ftam_Pathname_Pattern,
6628 &ett_ftam_T_pathname_value,
6629 &ett_ftam_T_pathname_value_item,
6630 &ett_ftam_String_Pattern,
6631 &ett_ftam_T_string_value,
6632 &ett_ftam_T_string_value_item,
6633 &ett_ftam_Bitstring_Pattern,
6634 &ett_ftam_Date_and_Time_Pattern,
6635 &ett_ftam_Integer_Pattern,
6636 &ett_ftam_Object_Identifier_Pattern,
6637 &ett_ftam_Boolean_Pattern,
6638 &ett_ftam_Contents_Type_Pattern,
6639 &ett_ftam_T_constraint_set_abstract_Syntax_Pattern,
6640 &ett_ftam_Attribute_Extensions_Pattern,
6641 &ett_ftam_Attribute_Extensions_Pattern_item,
6642 &ett_ftam_T_extension_set_attribute_Patterns,
6643 &ett_ftam_T_extension_set_attribute_Patterns_item,
6644 &ett_ftam_SEQUENCE_OF_Read_Attributes,
6645 &ett_ftam_Operation_Result_U,
6646 &ett_ftam_SEQUENCE_OF_Pathname,
6647 &ett_ftam_Pathname,
6648 &ett_ftam_Pass_Passwords,
6649 &ett_ftam_Path_Access_Passwords_U,
6650 &ett_ftam_Path_Access_Passwords_item,
6651 &ett_ftam_Attribute_Names,
6652 &ett_ftam_AE_title,
6653
6654 /*--- End of included file: packet-ftam-ettarr.c ---*/
6655 #line 125 "./asn1/ftam/packet-ftam-template.c"
6656 };
6657 static ei_register_info ei[] = {
6658 { &ei_ftam_zero_pdu, { "ftam.zero_pdu", PI_PROTOCOL, PI_ERROR, "Internal error, zero-byte FTAM PDU", EXPFILL }},
6659 };
6660
6661 expert_module_t* expert_ftam;
6662
6663 /* Register protocol */
6664 proto_ftam = proto_register_protocol(PNAME, PSNAME, PFNAME);
6665 register_dissector("ftam", dissect_ftam, proto_ftam);
6666 /* Register fields and subtrees */
6667 proto_register_field_array(proto_ftam, hf, array_length(hf));
6668 proto_register_subtree_array(ett, array_length(ett));
6669 expert_ftam = expert_register_protocol(proto_ftam);
6670 expert_register_field_array(expert_ftam, ei, array_length(ei));
6671
6672 }
6673
6674
6675 /*--- proto_reg_handoff_ftam --- */
proto_reg_handoff_ftam(void)6676 void proto_reg_handoff_ftam(void) {
6677 register_ber_oid_dissector("1.0.8571.1.1", dissect_ftam, proto_ftam,"iso-ftam(1)");
6678 register_ber_oid_dissector("1.0.8571.2.1", dissect_ftam, proto_ftam,"ftam-pci(1)");
6679 register_ber_oid_dissector("1.3.14.5.2.2", dissect_ftam, proto_ftam,"NIST file directory entry abstract syntax");
6680
6681 /* Unstructured text file document type FTAM-1 */
6682 register_ber_oid_dissector("1.0.8571.5.1", dissect_ftam_unstructured_text, proto_ftam,"ISO FTAM unstructured text");
6683 oid_add_from_string("ISO FTAM sequential text","1.0.8571.5.2");
6684 oid_add_from_string("FTAM unstructured text abstract syntax","1.0.8571.2.3");
6685 oid_add_from_string("FTAM simple-hierarchy","1.0.8571.2.5");
6686 oid_add_from_string("FTAM hierarchical file model","1.0.8571.3.1");
6687 oid_add_from_string("FTAM unstructured constraint set","1.0.8571.4.1");
6688
6689 /* Unstructured binary file document type FTAM-3 */
6690 register_ber_oid_dissector("1.0.8571.5.3", dissect_ftam_unstructured_binary, proto_ftam,"ISO FTAM unstructured binary");
6691 oid_add_from_string("FTAM unstructured binary abstract syntax","1.0.8571.2.4");
6692
6693 /* Filedirectory file document type NBS-9 */
6694 oid_add_from_string("NBS-9 FTAM file directory file","1.3.14.5.5.9");
6695
6696 /* Filedirectory file document type NBS-9 (WITH OLD NIST OIDs)*/
6697 oid_add_from_string("NBS-9-OLD FTAM file directory file","1.3.9999.1.5.9");
6698 oid_add_from_string("NIST file directory entry abstract syntax","1.3.9999.1.2.2");
6699 }
6700