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:
#
|