1# HI2Operations.cnf
2# HI2Operations conformation file
3
4#.MODULE
5UmtsHI2Operations UmtsHI2
6PCESP PCESP
7TS101909201 TS101909201
8EN301040	EN301040
9HI3CCLinkData	hi3cclinkdata
10#.MODULE_IMPORT
11
12#.EXPORTS
13
14#.REGISTER
15
16#.PDU
17IRIsContent
18UUS1-Content
19
20#.NO_EMIT
21
22#.OMIT_ASSIGNMENT
23# Get rid of unused code warnings
24TTRAFFIC
25CTTRAFFIC
26LIACTIVATEreq
27LIACTIVATEconf
28LIMODIFYreq
29LIMODIFYconf
30LISTATUSind
31StatusType
32
33#.FIELD_RENAME
34GSMLocation/geoCoordinates/latitude geoCoordinates_latitude
35GSMLocation/geoCoordinates/longitude geoCoordinates_longitude
36TetraLocation/ms-Loc/mnc ms_Loc_mnc
37TetraLocation/ms-Loc/mcc ms_Loc_mcc
38TetraLocation/ms-Loc/lai ms_Loc_lai
39
40#.FN_HDR UUS1-Content
41
42/* Heuristic test to see if it's our content */
43    gint8    tmp_class;
44    gboolean tmp_pc;
45    gint32   tmp_tag;
46    int      tmp_offset;
47    guint    length = tvb_captured_length(tvb);
48    guint32  tmp_length;
49    gboolean tmp_ind;
50
51    /* Check for min length */
52    if (length < 6){
53      return 0;
54    }
55    /* We start with UUS1-Content ::= SEQUENCE */
56    tmp_offset = get_ber_identifier(tvb, offset, &tmp_class, &tmp_pc, &tmp_tag);
57    if(tmp_class != BER_CLASS_UNI){
58      return 0;
59    }
60    if(tmp_pc != 1){
61      return 0;
62    }
63    if(tmp_tag != BER_UNI_TAG_SEQUENCE){
64      return 0;
65    }
66    /* Get length just to move offset forward */
67    tmp_offset = get_ber_length(tvb, tmp_offset, &tmp_length, &tmp_ind);
68
69    /* Next 2 mandatorry elements
70     *  lawfullInterceptionIdentifier [1] LawfulInterceptionIdentifier,
71     *  communicationIdentifier       [2] CommunicationIdentifier,
72     */
73    get_ber_identifier(tvb, tmp_offset, &tmp_class, &tmp_pc, &tmp_tag);
74    if(tmp_class != BER_CLASS_CON){
75      return 0;
76    }
77    if(tmp_pc != 0){
78      return 0;
79    }
80    if(tmp_tag != 1){
81      return 0;
82    }
83
84#.FN_BODY Network-Element-Identifier/e164-Format VAL_PTR = &parameter_tvb
85  tvbuff_t *parameter_tvb=NULL;
86
87%(DEFAULT_BODY)s
88  if (!parameter_tvb)
89    return offset;
90
91  dissect_isup_calling_party_number_parameter(parameter_tvb, actx->pinfo, tree, NULL);
92
93#.FN_BODY UUS1-Content/bearer-capability VAL_PTR =&parameter_tvb
94  tvbuff_t *parameter_tvb;
95
96%(DEFAULT_BODY)s
97
98  if (!parameter_tvb)
99    return offset;
100
101  dissect_q931_bearer_capability_ie(parameter_tvb, 0, tvb_reported_length_remaining(parameter_tvb,0), tree);
102
103#.FIELD_ATTR
104GSMLocation/geoCoordinates/latitude ABBREV=geoCoordinates.latitude
105GSMLocation/geoCoordinates/longitude ABBREV=geoCoordinates.longitude
106TetraLocation/ms-Loc/mnc ABBREV=ms_loc.mnc
107TetraLocation/ms-Loc/mcc ABBREV=ms_loc.mcc
108TetraLocation/ms-Loc/lai ABBREV=ms_loc.lai
109#.END
110
111