summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/c1222/c1222.cnf
blob: 51e6d8af9ed6d98e4bc8e84d819768b0be8a8c46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# c1222.cnf
# C1222 conformation file
# Copyright 2010, Edward J. Beroset, edward.beroset@elster.com

#.MODULE_IMPORT
IMPORT ../acse/acse.inf

#.EXPORTS

#.PDU
MESSAGE

#.NO_EMIT

#.TYPE_RENAME

#.FIELD_RENAME

#.TYPE_ATTR
Calling-authentication-value-c1222/_untag/iv-element  BLURB="c1222.iv-element"
Calling-authentication-value-c1222/_untag/key-id-element BLURB = "c1222.key-id-element"
AP-invocation-id TYPE=FT_UINT32
AE-qualifier TYPE=FT_UINT32

#.FN_BODY User-information
  int8_t end_device_class;
  bool pc, ind;
  int32_t tag;
  uint32_t len;
  proto_item *tf = NULL;
  proto_tree *epsem_tree = NULL;
  FILL_START;

  /* get Tag and Length */
  offset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, &end_device_class, &pc, &tag);
  offset = dissect_ber_length(actx->pinfo, tree, tvb, offset, &len, &ind);
  FILL_TABLE_TRUNCATE(user_information, len+offset-start_offset);
  if (tag == 0x8) {  /* BER_TAG_EXTERNAL */
    offset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, &end_device_class, &pc, &tag);
    offset = dissect_ber_length(actx->pinfo, tree, tvb, offset, &len, &ind);
    if (tag == 0x1) { /* implicit octet string */
      tf = proto_tree_add_item(tree, hf_c1222_user_information, tvb, offset, len, ENC_NA);
      epsem_tree = proto_item_add_subtree(tf, ett_c1222_epsem);
      dissect_epsem(tvb, offset, len, actx->pinfo, epsem_tree);
      offset += len;
    }
  }

#.FN_BODY ASO-qualifier
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(aSO_context);

#.FN_BODY Called-AP-title
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE_APTITLE(called_AP_title);

#.FN_BODY Called-AP-invocation-id
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(called_AP_invocation_id);

#.FN_BODY Calling-AE-qualifier
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(calling_AE_qualifier);

#.FN_BODY Calling-AP-invocation-id
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(calling_AP_invocation_id);

#.FN_BODY Mechanism-name
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(mechanism_name);

#.FN_BODY Calling-authentication-value
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(calling_authentication_value);

#.FN_BODY Calling-AP-title
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE_APTITLE(calling_AP_title);

#.FN_BODY Key-id-element
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(key_id_element);

#.FN_BODY Iv-element
  FILL_START;
  %(DEFAULT_BODY)s
  FILL_TABLE(iv_element);

#.FN_BODY MESSAGE
  clear_canon();
  %(DEFAULT_BODY)s
#.END

#
# Editor modelines  -  https://www.wireshark.org/tools/modelines.html
#
# Local variables:
# c-basic-offset: 2
# tab-width: 8
# indent-tabs-mode: nil
# End:
#
# vi: set shiftwidth=2 tabstop=8 expandtab:
# :indentSize=2:tabSize=8:noTabs=true:
#