- dissect_ber_object_identifier() returns value as tvb
[obnox/wireshark/wip.git] / asn1 / ftam / ftam.cnf
1 # FTAM.cnf
2 # FTAM conformation file
3
4 # $Id$
5
6 #.MODULE_IMPORT
7 ACSE-1 acse
8
9 #.INCLUDE ../acse/acse-exp.cnf
10
11 #.EXPORTS
12 Attribute-Extensions
13 Concurrency-Access
14 Date-and-Time-Attribute
15 Legal-Qualification-Attribute
16 Object-Availability-Attribute
17 Object-Size-Attribute
18 Pathname
19 Permitted-Actions-Attribute
20 Private-Use-Attribute
21
22 #.PDU
23
24 #.NO_EMIT
25
26 #.TYPE_RENAME
27 F-OPEN-request/recovery-mode    T_request_recovery_mode
28 F-OPEN-response/recovery-mode   T_response_recovery_mode
29 Access-Control-Change-Attribute/actual-values   T_actual_values1
30
31 #.FIELD_RENAME
32 F-OPEN-request/recovery-mode    request_recovery_mode
33 F-OPEN-response/recovery-mode   response_recovery_mode
34 Concurrency-Control/replace     replace_lock
35 Concurrency-Access/replace      replace_key
36 Concurrency-Control/read-attribute      read_attribute_lock
37 Concurrency-Access/read-attribute       read_attribute_key
38 Concurrency-Control/read        read_lock
39 Concurrency-Access/read         read_key
40 Concurrency-Control/insert      insert_lock
41 Concurrency-Access/insert       insert_key
42 Concurrency-Control/extend      extend_lock
43 Concurrency-Access/extend       extend_key
44 Concurrency-Control/erase       erase_lock
45 Concurrency-Access/erase        erase_key
46 Concurrency-Control/change-attribute    change_attribute_lock
47 Concurrency-Access/change-attribute     change_attribute_key
48 Concurrency-Control/delete-Object       delete_Object_lock
49 Concurrency-Access/delete-Object        delete_Object_key
50 F-READ-request/access-context           read_access_context
51 Change-Attributes/path-access-control   change_path_access_control
52 Create-Attributes/path-access-control   create_path_access_control
53 Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-identifier        attribute_extension_attribute_identifier
54 F-OPEN-request/contents-type            open_contents_type
55 F-READ-ATTRIB-response/attributes       read_attributes
56 F-READ-LINK-ATTRIB-response/attributes  read_link_attributes
57 F-SELECT-request/attributes             select_attributes
58 F-SELECT-response/attributes            select_attributes
59 Change-Attributes/access-control        change_attributes_access_control
60 Access-Control-Change-Attribute/actual-values   actual_values1
61 Account-Attribute/actual-values actual_values2
62 Access-Control-Attribute/actual-values  actual_values3
63 Private-Use-Attribute/actual-values     actual_values4
64 Date-and-Time-Attribute/actual-values   actual_values5
65 User-Identity-Attribute/actual-values   actual_values6
66 Object-Size-Attribute/actual-values     actual_values7
67 Object-Availability-Attribute/actual-values     actual_values8
68 Legal-Qualification-Attribute/actual-values     actual_values9
69
70 #.FN_PARS Extension-Attribute/extension-attribute-identifier
71         FN_VARIANT = _str  VAL_PTR = &object_identifier_id
72
73 #.FN_BODY Contents-Type-Attribute/document-type/parameter
74   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
75
76 #.FN_BODY Extension-Attribute/extension-attribute
77   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
78
79 #.FN_PARS Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-identifier
80         FN_VARIANT = _str  VAL_PTR = &object_identifier_id
81
82 #.FN_BODY Attribute-Extensions-Pattern/_item/extension-set-attribute-Patterns/_item/extension-attribute-Pattern
83   offset=call_ber_oid_callback(object_identifier_id, tvb, offset, pinfo, tree);
84
85 #.FN_BODY AP-title
86         /* XXX have no idea about this one */
87 #.FN_BODY AE-qualifier
88         /* XXX have no idea about this one */
89
90 #.FN_BODY Implementation-Information
91  gint8 class;
92  gboolean pc, ind_field;
93  gint32 tag;
94  guint32 len1;
95
96  if(!implicit_tag){
97    /* XXX  asn2eth can not yet handle tagged assignment yes so this
98     * XXX is some conformance file magic to work around that bug
99     */
100     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
101     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
102  }
103   offset = dissect_ber_restricted_string(TRUE, 1,
104                                          pinfo, tree, tvb, offset, hf_index,
105                                          NULL);
106
107 #.FN_BODY Protocol-Version
108  gint8 class;
109  gboolean pc, ind_field;
110  gint32 tag;
111  guint32 len1;
112
113  if(!implicit_tag){
114    /* XXX  asn2eth can not yet handle tagged assignment yes so this
115     * XXX is some conformance file magic to work around that bug
116     */
117     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
118     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
119  }
120   offset = dissect_ber_bitstring(TRUE, pinfo, tree, tvb, offset,
121                                  Protocol_Version_bits, hf_index, ett_ftam_Protocol_Version,
122                                  NULL);
123
124 #.FN_BODY Service-Class
125  gint8 class;
126  gboolean pc, ind_field;
127  gint32 tag;
128  guint32 len1;
129
130  if(!implicit_tag){
131    /* XXX  asn2eth can not yet handle tagged assignment yes so this
132     * XXX is some conformance file magic to work around that bug
133     */
134     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
135     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
136  }
137   offset = dissect_ber_bitstring(TRUE, pinfo, tree, tvb, offset,
138                                  Service_Class_bits, hf_index, ett_ftam_Service_Class,
139                                  NULL);
140
141 #.FN_BODY Functional-Units
142  gint8 class;
143  gboolean pc, ind_field;
144  gint32 tag;
145  guint32 len1;
146
147  if(!implicit_tag){
148    /* XXX  asn2eth can not yet handle tagged assignment yes so this
149     * XXX is some conformance file magic to work around that bug
150     */
151     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
152     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
153  }
154   offset = dissect_ber_bitstring(TRUE, pinfo, tree, tvb, offset,
155                                  Functional_Units_bits, hf_index, ett_ftam_Functional_Units,
156                                  NULL);
157
158
159 #.FN_BODY Attribute-Groups
160  gint8 class;
161  gboolean pc, ind_field;
162  gint32 tag;
163  guint32 len1;
164
165  if(!implicit_tag){
166    /* XXX  asn2eth can not yet handle tagged assignment yes so this
167     * XXX is some conformance file magic to work around that bug
168     */
169     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
170     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
171  }
172   offset = dissect_ber_bitstring(TRUE, pinfo, tree, tvb, offset,
173                                  Attribute_Groups_bits, hf_index, ett_ftam_Attribute_Groups,
174                                  NULL);
175
176
177 #.FN_BODY FTAM-Quality-of-Service
178  gint8 class;
179  gboolean pc, ind_field;
180  gint32 tag;
181  guint32 len1;
182
183  if(!implicit_tag){
184    /* XXX  asn2eth can not yet handle tagged assignment yes so this
185     * XXX is some conformance file magic to work around that bug
186     */
187     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
188     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
189  }
190   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
191                                   NULL);
192
193 #.FN_BODY Contents-Type-List
194  gint8 class;
195  gboolean pc, ind_field;
196  gint32 tag;
197  guint32 len1;
198
199  if(!implicit_tag){
200    /* XXX  asn2eth can not yet handle tagged assignment yes so this
201     * XXX is some conformance file magic to work around that bug
202     */
203     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
204     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
205  }
206   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
207                                    Contents_Type_List_sequence_of, hf_index, ett_ftam_Contents_Type_List);
208
209
210 #.FN_BODY Degree-Of-Overlap
211  gint8 class;
212  gboolean pc, ind_field;
213  gint32 tag;
214  guint32 len1;
215
216  if(!implicit_tag){
217    /* XXX  asn2eth can not yet handle tagged assignment yes so this
218     * XXX is some conformance file magic to work around that bug
219     */
220     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
221     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
222  }
223   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
224                                   NULL);
225
226 #.FN_BODY Request-Type
227  gint8 class;
228  gboolean pc, ind_field;
229  gint32 tag;
230  guint32 len1;
231
232  if(!implicit_tag){
233    /* XXX  asn2eth can not yet handle tagged assignment yes so this
234     * XXX is some conformance file magic to work around that bug
235     */
236     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
237     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
238  }
239   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
240                                   NULL);
241
242 #.FN_BODY Abstract-Syntax-Name
243  gint8 class;
244  gboolean pc, ind_field;
245  gint32 tag;
246  guint32 len1;
247
248  if(!implicit_tag){
249    /* XXX  asn2eth can not yet handle tagged assignment yes so this
250     * XXX is some conformance file magic to work around that bug
251     */
252     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
253     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
254  }
255   offset = dissect_ber_object_identifier(TRUE, pinfo, tree, tvb, offset, hf_index,
256                                             NULL);
257
258
259 #.FN_BODY Access-Context
260  gint8 class;
261  gboolean pc, ind_field;
262  gint32 tag;
263  guint32 len1;
264
265  if(!implicit_tag){
266    /* XXX  asn2eth can not yet handle tagged assignment yes so this
267     * XXX is some conformance file magic to work around that bug
268     */
269     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
270     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
271  }
272   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
273                                 Access_Context_sequence, hf_index, ett_ftam_Access_Context);
274
275 #.FN_BODY Access-Passwords
276  gint8 class;
277  gboolean pc, ind_field;
278  gint32 tag;
279  guint32 len1;
280
281  if(!implicit_tag){
282    /* XXX  asn2eth can not yet handle tagged assignment yes so this
283     * XXX is some conformance file magic to work around that bug
284     */
285     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
286     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
287  }
288   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
289                                 Access_Passwords_sequence, hf_index, ett_ftam_Access_Passwords);
290
291 #.FN_BODY Access-Request
292  gint8 class;
293  gboolean pc, ind_field;
294  gint32 tag;
295  guint32 len1;
296
297    if(!implicit_tag){
298      /* XXX  asn2eth can not yet handle tagged assignment yes so this
299       * XXX is some conformance file magic to work around that bug
300       */
301       offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
302       offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
303   }
304   offset = dissect_ber_bitstring(TRUE, pinfo, tree, tvb, offset,
305                                  Access_Request_bits, hf_index, ett_ftam_Access_Request,
306                                  NULL);
307 #.FN_BODY Account
308  gint8 class;
309  gboolean pc, ind_field;
310  gint32 tag;
311  guint32 len1;
312
313  if(!implicit_tag){
314    /* XXX  asn2eth can not yet handle tagged assignment yes so this
315     * XXX is some conformance file magic to work around that bug
316     */
317     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
318     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
319  }
320   offset = dissect_ber_restricted_string(TRUE, 4,
321                                          pinfo, tree, tvb, offset, hf_index,
322                                          NULL);
323 #.FN_BODY Action-Result
324  gint8 class;
325  gboolean pc, ind_field;
326  gint32 tag;
327  guint32 len1;
328
329  if(!implicit_tag){
330    /* XXX  asn2eth can not yet handle tagged assignment yes so this
331     * XXX is some conformance file magic to work around that bug
332     */
333     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
334     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
335  }
336   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
337                                   NULL);
338
339
340 #.FN_BODY Activity-Identifier
341  gint8 class;
342  gboolean pc, ind_field;
343  gint32 tag;
344  guint32 len1;
345
346  if(!implicit_tag){
347    /* XXX  asn2eth can not yet handle tagged assignment yes so this
348     * XXX is some conformance file magic to work around that bug
349     */
350     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
351     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
352  }
353   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
354                                   NULL);
355
356 #.FN_BODY Change-Attributes
357  gint8 class;
358  gboolean pc, ind_field;
359  gint32 tag;
360  guint32 len1;
361
362  if(!implicit_tag){
363    /* XXX  asn2eth can not yet handle tagged assignment yes so this
364     * XXX is some conformance file magic to work around that bug
365     */
366     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
367     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
368  }
369   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
370                                 Change_Attributes_sequence, hf_index, ett_ftam_Change_Attributes);
371
372
373 #.FN_BODY Charging
374  gint8 class;
375  gboolean pc, ind_field;
376  gint32 tag;
377  guint32 len1;
378
379  if(!implicit_tag){
380    /* XXX  asn2eth can not yet handle tagged assignment yes so this
381     * XXX is some conformance file magic to work around that bug
382     */
383     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
384     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
385  }
386   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
387                                    Charging_sequence_of, hf_index, ett_ftam_Charging);
388
389
390 #.FN_BODY Concurrency-Control
391  gint8 class;
392  gboolean pc, ind_field;
393  gint32 tag;
394  guint32 len1;
395
396  if(!implicit_tag){
397    /* XXX  asn2eth can not yet handle tagged assignment yes so this
398     * XXX is some conformance file magic to work around that bug
399     */
400     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
401     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
402  }
403   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
404                                 Concurrency_Control_sequence, hf_index, ett_ftam_Concurrency_Control);
405
406
407 #.FN_BODY Constraint-Set-Name
408  gint8 class;
409  gboolean pc, ind_field;
410  gint32 tag;
411  guint32 len1;
412
413  if(!implicit_tag){
414    /* XXX  asn2eth can not yet handle tagged assignment yes so this
415     * XXX is some conformance file magic to work around that bug
416     */
417     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
418     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
419  }
420   offset = dissect_ber_object_identifier(TRUE, pinfo, tree, tvb, offset, hf_index,
421                                             NULL);
422
423 #.FN_BODY Create-Attributes
424  gint8 class;
425  gboolean pc, ind_field;
426  gint32 tag;
427  guint32 len1;
428
429  if(!implicit_tag){
430    /* XXX  asn2eth can not yet handle tagged assignment yes so this
431     * XXX is some conformance file magic to work around that bug
432     */
433     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
434     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
435  }
436   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
437                                 Create_Attributes_sequence, hf_index, ett_ftam_Create_Attributes);
438
439 #.FN_BODY Diagnostic
440  gint8 class;
441  gboolean pc, ind_field;
442  gint32 tag;
443  guint32 len1;
444
445  if(!implicit_tag){
446    /* XXX  asn2eth can not yet handle tagged assignment yes so this
447     * XXX is some conformance file magic to work around that bug
448     */
449     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
450     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
451  }
452   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
453                                    Diagnostic_sequence_of, hf_index, ett_ftam_Diagnostic);
454
455
456 #.FN_BODY Document-Type-Name  FN_VARIANT = _str  VAL_PTR = &object_identifier_id
457  gint8 class;
458  gboolean pc, ind_field;
459  gint32 tag;
460  guint32 len1;
461
462  if(!implicit_tag){
463    /* XXX  asn2eth can not yet handle tagged assignment yes so this
464     * XXX is some conformance file magic to work around that bug
465     */
466     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
467     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
468  }
469 %(DEFAULT_BODY)s
470
471 #.FN_BODY FADU-Lock
472  gint8 class;
473  gboolean pc, ind_field;
474  gint32 tag;
475  guint32 len1;
476
477  if(!implicit_tag){
478    /* XXX  asn2eth can not yet handle tagged assignment yes so this
479     * XXX is some conformance file magic to work around that bug
480     */
481     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
482     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
483  }
484   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
485                                   NULL);
486
487 #.FN_BODY Read-Attributes
488  gint8 class;
489  gboolean pc, ind_field;
490  gint32 tag;
491  guint32 len1;
492
493  if(!implicit_tag){
494    /* XXX  asn2eth can not yet handle tagged assignment yes so this
495     * XXX is some conformance file magic to work around that bug
496     */
497     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
498     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
499  }
500   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
501                                 Read_Attributes_sequence, hf_index, ett_ftam_Read_Attributes);
502
503 #.FN_BODY Select-Attributes
504  gint8 class;
505  gboolean pc, ind_field;
506  gint32 tag;
507  guint32 len1;
508
509  if(!implicit_tag){
510    /* XXX  asn2eth can not yet handle tagged assignment yes so this
511     * XXX is some conformance file magic to work around that bug
512     */
513     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
514     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
515  }
516   offset = dissect_ber_sequence(TRUE, pinfo, tree, tvb, offset,
517                                 Select_Attributes_sequence, hf_index, ett_ftam_Select_Attributes);
518
519 #.FN_BODY State-Result
520  gint8 class;
521  gboolean pc, ind_field;
522  gint32 tag;
523  guint32 len1;
524
525  if(!implicit_tag){
526    /* XXX  asn2eth can not yet handle tagged assignment yes so this
527     * XXX is some conformance file magic to work around that bug
528     */
529     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
530     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
531  }
532   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
533                                   NULL);
534
535 #.FN_BODY User-Identity
536  gint8 class;
537  gboolean pc, ind_field;
538  gint32 tag;
539  guint32 len1;
540
541  if(!implicit_tag){
542    /* XXX  asn2eth can not yet handle tagged assignment yes so this
543     * XXX is some conformance file magic to work around that bug
544     */
545     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
546     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
547  }
548   offset = dissect_ber_restricted_string(TRUE, 22,
549                                          pinfo, tree, tvb, offset, hf_index,
550                                          NULL);
551 #.FN_BODY Scope
552  gint8 class;
553  gboolean pc, ind_field;
554  gint32 tag;
555  guint32 len1;
556
557  if(!implicit_tag){
558    /* XXX  asn2eth can not yet handle tagged assignment yes so this
559     * XXX is some conformance file magic to work around that bug
560     */
561     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
562     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
563  }
564   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
565                                    Scope_sequence_of, hf_index, ett_ftam_Scope);
566
567 #.FN_BODY Objects-Attributes-List
568  gint8 class;
569  gboolean pc, ind_field;
570  gint32 tag;
571  guint32 len1;
572
573  if(!implicit_tag){
574    /* XXX  asn2eth can not yet handle tagged assignment yes so this
575     * XXX is some conformance file magic to work around that bug
576     */
577     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
578     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
579  }
580   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
581                                    Objects_Attributes_List_sequence_of, hf_index, ett_ftam_Objects_Attributes_List);
582
583
584 #.FN_BODY Path-Access-Passwords
585  gint8 class;
586  gboolean pc, ind_field;
587  gint32 tag;
588  guint32 len1;
589
590  if(!implicit_tag){
591    /* XXX  asn2eth can not yet handle tagged assignment yes so this
592     * XXX is some conformance file magic to work around that bug
593     */
594     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
595     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
596  }
597   offset = dissect_ber_sequence_of(TRUE, pinfo, tree, tvb, offset,
598                                    Path_Access_Passwords_sequence_of, hf_index, ett_ftam_Path_Access_Passwords);
599
600 #.FN_BODY Request-Operation-Result
601  gint8 class;
602  gboolean pc, ind_field;
603  gint32 tag;
604  guint32 len1;
605
606  if(!implicit_tag){
607    /* XXX  asn2eth can not yet handle tagged assignment yes so this
608     * XXX is some conformance file magic to work around that bug
609     */
610     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
611     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
612  }
613   offset = dissect_ber_integer(TRUE, pinfo, tree, tvb, offset, hf_index,
614                                   NULL);
615
616 #.FN_BODY Shared-ASE-Informatio
617  gint8 class;
618  gboolean pc, ind_field;
619  gint32 tag;
620  guint32 len1;
621
622  if(!implicit_tag){
623    /* XXX  asn2eth can not yet handle tagged assignment yes so this
624     * XXX is some conformance file magic to work around that bug
625     */
626     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
627     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
628  }
629   offset = dissect_acse_EXTERNAL(TRUE, tvb, offset, pinfo, tree, hf_index);
630
631 #.FN_BODY Attribute-Value-Assertions
632  gint8 class;
633  gboolean pc, ind_field;
634  gint32 tag;
635  guint32 len1;
636
637  if(!implicit_tag){
638    /* XXX  asn2eth can not yet handle tagged assignment yes so this
639     * XXX is some conformance file magic to work around that bug
640     */
641     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
642     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
643  }
644   offset = dissect_ftam_OR_Set(TRUE, tvb, offset, pinfo, tree, hf_index);
645
646 #.FN_BODY Referent-Indicator
647  gint8 class;
648  gboolean pc, ind_field;
649  gint32 tag;
650  guint32 len1;
651
652  if(!implicit_tag){
653    /* XXX  asn2eth can not yet handle tagged assignment yes so this
654     * XXX is some conformance file magic to work around that bug
655     */
656     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
657     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
658  }
659   offset = dissect_ber_boolean(TRUE, pinfo, tree, tvb, offset, hf_index);
660
661 #.FN_BODY Password
662  gint8 class;
663  gboolean pc, ind_field;
664  gint32 tag;
665  guint32 len1;
666
667  if(!implicit_tag){
668    /* XXX  asn2eth can not yet handle tagged assignment yes so this
669     * XXX is some conformance file magic to work around that bug
670     */
671     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
672     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
673  }
674   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
675                               Password_choice, hf_index, ett_ftam_Password, NULL);
676
677
678 #.FN_BODY FADU-Identity
679  gint8 class;
680  gboolean pc, ind_field;
681  gint32 tag;
682  guint32 len1;
683
684  if(!implicit_tag){
685    /* XXX  asn2eth can not yet handle tagged assignment yes so this
686     * XXX is some conformance file magic to work around that bug
687     */
688     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
689     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
690  }
691   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
692                               FADU_Identity_choice, hf_index, ett_ftam_FADU_Identity, NULL);
693
694 #.FN_BODY Operation-Result
695  gint8 class;
696  gboolean pc, ind_field;
697  gint32 tag;
698  guint32 len1;
699
700  if(!implicit_tag){
701    /* XXX  asn2eth can not yet handle tagged assignment yes so this
702     * XXX is some conformance file magic to work around that bug
703     */
704     offset = get_ber_identifier(tvb, offset, &class, &pc, &tag);
705     offset = get_ber_length(tree, tvb, offset, &len1, &ind_field);
706  }
707   offset = dissect_ber_choice(pinfo, tree, tvb, offset,
708                               Operation_Result_choice, hf_index, ett_ftam_Operation_Result, NULL);
709 #.FN_PARS FTAM-Regime-PDU
710         VAL_PTR = &branch_taken
711
712 #.FN_BODY FTAM-Regime-PDU
713   gint branch_taken;
714
715   %(DEFAULT_BODY)s
716   
717   if( (branch_taken!=-1) && ftam_FTAM_Regime_PDU_vals[branch_taken].strptr ){
718         if (check_col(pinfo->cinfo, COL_INFO)) {
719                 col_append_fstr(pinfo->cinfo, COL_INFO, " %%s:", ftam_FTAM_Regime_PDU_vals[branch_taken].strptr);
720         }
721   }
722
723 #.FN_PARS File-PDU
724         VAL_PTR = &branch_taken
725
726 #.FN_BODY File-PDU
727   gint branch_taken;
728
729   %(DEFAULT_BODY)s
730
731   if( (branch_taken!=-1) && ftam_File_PDU_vals[branch_taken].strptr ){
732         if (check_col(pinfo->cinfo, COL_INFO)) {
733                 col_append_fstr(pinfo->cinfo, COL_INFO, " %%s:", ftam_File_PDU_vals[branch_taken].strptr);
734         }
735   }
736
737 #.FN_PARS Bulk-Data-PDU
738         VAL_PTR = &branch_taken
739
740 #.FN_BODY Bulk-Data-PDU
741   gint branch_taken;
742
743   %(DEFAULT_BODY)s
744
745   if( (branch_taken!=-1) && ftam_Bulk_Data_PDU_vals[branch_taken].strptr ){
746         if (check_col(pinfo->cinfo, COL_INFO)) {
747                 col_append_fstr(pinfo->cinfo, COL_INFO, " %%s:", ftam_Bulk_Data_PDU_vals[branch_taken].strptr);
748         }
749   }
750
751 #.FN_PARS FSM-PDU
752         VAL_PTR = &branch_taken
753
754 #.FN_BODY FSM-PDU
755   gint branch_taken;
756
757   %(DEFAULT_BODY)s
758
759   if( (branch_taken!=-1) && ftam_FSM_PDU_vals[branch_taken].strptr ){
760         if (check_col(pinfo->cinfo, COL_INFO)) {
761                 col_append_fstr(pinfo->cinfo, COL_INFO, " %%s:", ftam_FSM_PDU_vals[branch_taken].strptr);
762         }
763   }