2 # FTAM conformation file
6 #.INCLUDE ../acse/acse-exp.cnf
11 Date-and-Time-Attribute
12 Legal-Qualification-Attribute
13 Object-Availability-Attribute
16 Permitted-Actions-Attribute
24 F-OPEN-request/recovery-mode T_request_recovery_mode
25 F-OPEN-response/recovery-mode T_response_recovery_mode
26 Access-Control-Change-Attribute/actual-values T_actual_values1
29 F-OPEN-request/recovery-mode request_recovery_mode
30 F-OPEN-response/recovery-mode response_recovery_mode
31 Concurrency-Control/replace replace_lock
32 Concurrency-Access/replace replace_key
33 Concurrency-Control/read-attribute read_attribute_lock
34 Concurrency-Access/read-attribute read_attribute_key
35 Concurrency-Control/read read_lock
36 Concurrency-Access/read read_key
37 Concurrency-Control/insert insert_lock
38 Concurrency-Access/insert insert_key
39 Concurrency-Control/extend extend_lock
40 Concurrency-Access/extend extend_key
41 Concurrency-Control/erase erase_lock
42 Concurrency-Access/erase erase_key
43 Concurrency-Control/change-attribute change_attribute_lock
44 Concurrency-Access/change-attribute change_attribute_key
45 Concurrency-Control/delete-Object delete_Object_lock
46 Concurrency-Access/delete-Object delete_Object_key
47 F-READ-request/access-context read_access_context
48 Change-Attributes/path-access-control change_path_access_control
49 Create-Attributes/path-access-control create_path_access_control
50 Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-identifier attribute_extension_attribute_identifier
51 F-OPEN-request/contents-type open_contents_type
52 F-READ-ATTRIB-response/attributes read_attributes
53 F-READ-LINK-ATTRIB-response/attributes read_link_attributes
54 F-SELECT-request/attributes select_attributes
55 F-SELECT-response/attributes select_attributes
56 Change-Attributes/access-control change_attributes_access_control
57 Access-Control-Change-Attribute/actual-values actual_values1
58 Account-Attribute/actual-values actual_values2
59 Access-Control-Attribute/actual-values actual_values3
60 Private-Use-Attribute/actual-values actual_values4
61 Date-and-Time-Attribute/actual-values actual_values5
62 User-Identity-Attribute/actual-values actual_values6
63 Object-Size-Attribute/actual-values actual_values7
64 Object-Availability-Attribute/actual-values actual_values8
65 Legal-Qualification-Attribute/actual-values actual_values9
67 #.FN_PARS Extension-Attribute/extension-attribute-identifier
68 FN_VARIANT = _str VAL_PTR = &object_identifier_id
70 #.FN_BODY Contents-Type-Attribute/document-type/parameter
71 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
73 #.FN_BODY Extension-Attribute/extension-attribute
74 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
76 #.FN_PARS Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-identifier
77 FN_VARIANT = _str VAL_PTR = &object_identifier_id
79 #.FN_BODY Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-Pattern
80 offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree);
83 /* XXX have no idea about this one */
84 #.FN_BODY AE-qualifier
85 /* XXX have no idea about this one */
87 #.FN_BODY Implementation-Information
89 gboolean pc, ind_field;
94 /* XXX asn2wrs can not yet handle tagged assignment yes so this
95 * XXX is some conformance file magic to work around that bug
97 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
98 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
100 offset = dissect_ber_restricted_string(TRUE, 1,
101 actx, tree, tvb, offset, hf_index,
104 #.FN_BODY Protocol-Version
106 gboolean pc, ind_field;
111 /* XXX asn2wrs can not yet handle tagged assignment yes so this
112 * XXX is some conformance file magic to work around that bug
114 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
115 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
117 offset = dissect_ber_bitstring(TRUE, actx, tree, tvb, offset,
118 Protocol_Version_bits, hf_index, ett_ftam_Protocol_Version,
121 #.FN_BODY Service-Class
123 gboolean pc, ind_field;
128 /* XXX asn2wrs can not yet handle tagged assignment yes so this
129 * XXX is some conformance file magic to work around that bug
131 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
132 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
134 offset = dissect_ber_bitstring(TRUE, actx, tree, tvb, offset,
135 Service_Class_bits, hf_index, ett_ftam_Service_Class,
138 #.FN_BODY Functional-Units
140 gboolean pc, ind_field;
145 /* XXX asn2wrs can not yet handle tagged assignment yes so this
146 * XXX is some conformance file magic to work around that bug
148 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
149 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
151 offset = dissect_ber_bitstring(TRUE, actx, tree, tvb, offset,
152 Functional_Units_bits, hf_index, ett_ftam_Functional_Units,
156 #.FN_BODY Attribute-Groups
158 gboolean pc, ind_field;
163 /* XXX asn2wrs can not yet handle tagged assignment yes so this
164 * XXX is some conformance file magic to work around that bug
166 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
167 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
169 offset = dissect_ber_bitstring(TRUE, actx, tree, tvb, offset,
170 Attribute_Groups_bits, hf_index, ett_ftam_Attribute_Groups,
174 #.FN_BODY FTAM-Quality-of-Service
176 gboolean pc, ind_field;
181 /* XXX asn2wrs can not yet handle tagged assignment yes so this
182 * XXX is some conformance file magic to work around that bug
184 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
185 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
187 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
190 #.FN_BODY Contents-Type-List
192 gboolean pc, ind_field;
197 /* XXX asn2wrs can not yet handle tagged assignment yes so this
198 * XXX is some conformance file magic to work around that bug
200 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
201 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
203 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
204 Contents_Type_List_sequence_of, hf_index, ett_ftam_Contents_Type_List);
207 #.FN_BODY Degree-Of-Overlap
209 gboolean pc, ind_field;
214 /* XXX asn2wrs can not yet handle tagged assignment yes so this
215 * XXX is some conformance file magic to work around that bug
217 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
218 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
220 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
223 #.FN_BODY Request-Type
225 gboolean pc, ind_field;
230 /* XXX asn2wrs can not yet handle tagged assignment yes so this
231 * XXX is some conformance file magic to work around that bug
233 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
234 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
236 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
239 #.FN_BODY Abstract-Syntax-Name
241 gboolean pc, ind_field;
246 /* XXX asn2wrs can not yet handle tagged assignment yes so this
247 * XXX is some conformance file magic to work around that bug
249 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
250 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
252 offset = dissect_ber_object_identifier(TRUE, actx, tree, tvb, offset, hf_index,
256 #.FN_BODY Access-Context
258 gboolean pc, ind_field;
263 /* XXX asn2wrs can not yet handle tagged assignment yes so this
264 * XXX is some conformance file magic to work around that bug
266 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
267 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
269 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
270 Access_Context_sequence, hf_index, ett_ftam_Access_Context);
272 #.FN_BODY Access-Passwords
274 gboolean pc, ind_field;
279 /* XXX asn2wrs can not yet handle tagged assignment yes so this
280 * XXX is some conformance file magic to work around that bug
282 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
283 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
285 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
286 Access_Passwords_sequence, hf_index, ett_ftam_Access_Passwords);
288 #.FN_BODY Access-Request
290 gboolean pc, ind_field;
295 /* XXX asn2wrs can not yet handle tagged assignment yes so this
296 * XXX is some conformance file magic to work around that bug
298 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
299 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
301 offset = dissect_ber_bitstring(TRUE, actx, tree, tvb, offset,
302 Access_Request_bits, hf_index, ett_ftam_Access_Request,
306 gboolean pc, ind_field;
311 /* XXX asn2wrs can not yet handle tagged assignment yes so this
312 * XXX is some conformance file magic to work around that bug
314 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
315 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
317 offset = dissect_ber_restricted_string(TRUE, 4,
318 actx, tree, tvb, offset, hf_index,
320 #.FN_BODY Action-Result
322 gboolean pc, ind_field;
327 /* XXX asn2wrs can not yet handle tagged assignment yes so this
328 * XXX is some conformance file magic to work around that bug
330 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
331 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
333 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
337 #.FN_BODY Activity-Identifier
339 gboolean pc, ind_field;
344 /* XXX asn2wrs can not yet handle tagged assignment yes so this
345 * XXX is some conformance file magic to work around that bug
347 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
348 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
350 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
353 #.FN_BODY Change-Attributes
355 gboolean pc, ind_field;
360 /* XXX asn2wrs can not yet handle tagged assignment yes so this
361 * XXX is some conformance file magic to work around that bug
363 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
364 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
366 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
367 Change_Attributes_sequence, hf_index, ett_ftam_Change_Attributes);
372 gboolean pc, ind_field;
377 /* XXX asn2wrs can not yet handle tagged assignment yes so this
378 * XXX is some conformance file magic to work around that bug
380 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
381 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
383 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
384 Charging_sequence_of, hf_index, ett_ftam_Charging);
387 #.FN_BODY Concurrency-Control
389 gboolean pc, ind_field;
394 /* XXX asn2wrs can not yet handle tagged assignment yes so this
395 * XXX is some conformance file magic to work around that bug
397 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
398 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
400 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
401 Concurrency_Control_sequence, hf_index, ett_ftam_Concurrency_Control);
404 #.FN_BODY Constraint-Set-Name
406 gboolean pc, ind_field;
411 /* XXX asn2wrs can not yet handle tagged assignment yes so this
412 * XXX is some conformance file magic to work around that bug
414 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
415 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
417 offset = dissect_ber_object_identifier(TRUE, actx, tree, tvb, offset, hf_index,
420 #.FN_BODY Create-Attributes
422 gboolean pc, ind_field;
427 /* XXX asn2wrs can not yet handle tagged assignment yes so this
428 * XXX is some conformance file magic to work around that bug
430 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
431 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
433 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
434 Create_Attributes_sequence, hf_index, ett_ftam_Create_Attributes);
438 gboolean pc, ind_field;
443 /* XXX asn2wrs can not yet handle tagged assignment yes so this
444 * XXX is some conformance file magic to work around that bug
446 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
447 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
449 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
450 Diagnostic_sequence_of, hf_index, ett_ftam_Diagnostic);
453 #.FN_PARS Document-Type-Name FN_VARIANT = _str VAL_PTR = &object_identifier_id
457 gboolean pc, ind_field;
462 /* XXX asn2wrs can not yet handle tagged assignment yes so this
463 * XXX is some conformance file magic to work around that bug
465 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
466 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
468 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
471 #.FN_BODY Read-Attributes
473 gboolean pc, ind_field;
478 /* XXX asn2wrs can not yet handle tagged assignment yes so this
479 * XXX is some conformance file magic to work around that bug
481 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
482 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
484 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
485 Read_Attributes_sequence, hf_index, ett_ftam_Read_Attributes);
487 #.FN_BODY Select-Attributes
489 gboolean pc, ind_field;
494 /* XXX asn2wrs can not yet handle tagged assignment yes so this
495 * XXX is some conformance file magic to work around that bug
497 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
498 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
500 offset = dissect_ber_old_sequence(TRUE, actx, tree, tvb, offset,
501 Select_Attributes_sequence, hf_index, ett_ftam_Select_Attributes);
503 #.FN_BODY State-Result
505 gboolean pc, ind_field;
510 /* XXX asn2wrs can not yet handle tagged assignment yes so this
511 * XXX is some conformance file magic to work around that bug
513 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
514 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
516 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
519 #.FN_BODY User-Identity
521 gboolean pc, ind_field;
526 /* XXX asn2wrs can not yet handle tagged assignment yes so this
527 * XXX is some conformance file magic to work around that bug
529 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
530 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
532 offset = dissect_ber_restricted_string(TRUE, 22,
533 actx, tree, tvb, offset, hf_index,
537 gboolean pc, ind_field;
542 /* XXX asn2wrs can not yet handle tagged assignment yes so this
543 * XXX is some conformance file magic to work around that bug
545 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
546 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
548 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
549 Scope_sequence_of, hf_index, ett_ftam_Scope);
551 #.FN_BODY Objects-Attributes-List
553 gboolean pc, ind_field;
558 /* XXX asn2wrs can not yet handle tagged assignment yes so this
559 * XXX is some conformance file magic to work around that bug
561 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
562 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
564 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
565 Objects_Attributes_List_sequence_of, hf_index, ett_ftam_Objects_Attributes_List);
568 #.FN_BODY Path-Access-Passwords
570 gboolean pc, ind_field;
575 /* XXX asn2wrs can not yet handle tagged assignment yes so this
576 * XXX is some conformance file magic to work around that bug
578 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
579 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
581 offset = dissect_ber_old_sequence_of(TRUE, actx, tree, tvb, offset,
582 Path_Access_Passwords_sequence_of, hf_index, ett_ftam_Path_Access_Passwords);
584 #.FN_BODY Request-Operation-Result
586 gboolean pc, ind_field;
591 /* XXX asn2wrs can not yet handle tagged assignment yes so this
592 * XXX is some conformance file magic to work around that bug
594 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
595 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
597 offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index,
600 #.FN_BODY Shared-ASE-Informatio
602 gboolean pc, ind_field;
607 /* XXX asn2wrs can not yet handle tagged assignment yes so this
608 * XXX is some conformance file magic to work around that bug
610 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
611 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
613 offset = dissect_acse_EXTERNALt(TRUE, tvb, offset, actx->pinfo, tree, hf_index);
615 #.FN_BODY Attribute-Value-Assertions
617 gboolean pc, ind_field;
622 /* XXX asn2wrs can not yet handle tagged assignment yes so this
623 * XXX is some conformance file magic to work around that bug
625 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
626 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
628 offset = dissect_ftam_OR_Set(TRUE, tvb, offset, actx, tree, hf_index);
630 #.FN_BODY Referent-Indicator
632 gboolean pc, ind_field;
637 /* XXX asn2wrs can not yet handle tagged assignment yes so this
638 * XXX is some conformance file magic to work around that bug
640 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
641 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
643 offset = dissect_ber_boolean(TRUE, actx, tree, tvb, offset, hf_index);
647 gboolean pc, ind_field;
652 /* XXX asn2wrs can not yet handle tagged assignment yes so this
653 * XXX is some conformance file magic to work around that bug
655 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
656 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
658 offset = dissect_ber_old_choice(actx, tree, tvb, offset,
659 Password_choice, hf_index, ett_ftam_Password, NULL);
662 #.FN_BODY FADU-Identity
664 gboolean pc, ind_field;
669 /* XXX asn2wrs can not yet handle tagged assignment yes so this
670 * XXX is some conformance file magic to work around that bug
672 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
673 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
675 offset = dissect_ber_old_choice(actx, tree, tvb, offset,
676 FADU_Identity_choice, hf_index, ett_ftam_FADU_Identity, NULL);
678 #.FN_BODY Operation-Result
680 gboolean pc, ind_field;
685 /* XXX asn2wrs can not yet handle tagged assignment yes so this
686 * XXX is some conformance file magic to work around that bug
688 offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
689 offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
691 offset = dissect_ber_old_choice(actx, tree, tvb, offset,
692 Operation_Result_choice, hf_index, ett_ftam_Operation_Result, NULL);
693 #.FN_PARS FTAM-Regime-PDU
694 VAL_PTR = &branch_taken
696 #.FN_BODY FTAM-Regime-PDU
701 if( (branch_taken!=-1) && ftam_FTAM_Regime_PDU_vals[branch_taken].strptr ){
702 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
703 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s:", ftam_FTAM_Regime_PDU_vals[branch_taken].strptr);
708 VAL_PTR = &branch_taken
715 if( (branch_taken!=-1) && ftam_File_PDU_vals[branch_taken].strptr ){
716 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
717 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s:", ftam_File_PDU_vals[branch_taken].strptr);
721 #.FN_PARS Bulk-Data-PDU
722 VAL_PTR = &branch_taken
724 #.FN_BODY Bulk-Data-PDU
729 if( (branch_taken!=-1) && ftam_Bulk_Data_PDU_vals[branch_taken].strptr ){
730 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
731 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s:", ftam_Bulk_Data_PDU_vals[branch_taken].strptr);
736 VAL_PTR = &branch_taken
743 if( (branch_taken!=-1) && ftam_FSM_PDU_vals[branch_taken].strptr ){
744 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
745 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s:", ftam_FSM_PDU_vals[branch_taken].strptr);