diff options
Diffstat (limited to 'epan/dissectors/asn1/ilp/ilp.cnf')
-rw-r--r-- | epan/dissectors/asn1/ilp/ilp.cnf | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/ilp/ilp.cnf b/epan/dissectors/asn1/ilp/ilp.cnf new file mode 100644 index 00000000..093b51ac --- /dev/null +++ b/epan/dissectors/asn1/ilp/ilp.cnf @@ -0,0 +1,115 @@ +# ilp.cnf +# ilp conformation file +# Copyright 2013 e.yimjia + +#.OPT +PER +UNALIGNED +#.END + +#.PDU +ILP-PDU +#.END + + +#.TYPE_RENAME +FrequencyInfo/modeSpecificInfo FrequencySpecificInfo +#.END + +#.FIELD_RENAME +FrequencyInfo/modeSpecificInfo modeSpecificFrequencyInfo +FrequencyInfo/modeSpecificInfo/fdd fdd_fr +FrequencyInfo/modeSpecificInfo/tdd tdd_fr +SETId/min minsi +LocationDataLCI/latitude LocationDataLCI_latitude +LocationDataLCI/longitude LocationDataLCI_longitude +LocationDataLCI/altitude LocationDataLCI_altitude +CellGlobalIdEUTRA/cellIdentity eutra_cellIdentity + +#.FIELD_ATTR +SETId/min ABBREV=minsi +LocationDataLCI/latitude ABBREV=locationdatalci.latitude +LocationDataLCI/latitude ABBREV=locationdatalci.longitude +LocationDataLCI/altitude ABBREV=locationdatalci.altitude +CellGlobalIdEUTRA/cellIdentity ABBREV=cellglobalideutra.cellIdentity + + +#.END + +#.FN_HDR ILP-PDU + proto_item *it; + proto_tree *ilp_tree; + + it = proto_tree_add_item(tree, proto_ilp, tvb, 0, -1, ENC_NA); + ilp_tree = proto_item_add_subtree(it, ett_ilp); + + col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, PSNAME); + col_clear(actx->pinfo->cinfo, COL_INFO); +#.END + +#.FN_BODY ILP-PDU TREE=ilp_tree +%(DEFAULT_BODY)s +#.END + +#.FN_BODY IlpMessage VAL_PTR = &IlpMessage + +guint32 IlpMessage; + + %(DEFAULT_BODY)s + + col_append_fstr(%(ACTX)s->pinfo->cinfo, COL_INFO, "%%s ", val_to_str_const(IlpMessage,ilp_IlpMessage_vals,"Unknown")); + +#.END + +#.FN_BODY PosPayLoad/rrlpPayload VAL_PTR = &rrlp_tvb + tvbuff_t *rrlp_tvb; + +%(DEFAULT_BODY)s + + if (rrlp_tvb && rrlp_handle) { + call_dissector(rrlp_handle, rrlp_tvb, %(ACTX)s->pinfo, tree); + } + +#.FN_BODY MultiPosPayLoad/lPPPayload/_item VAL_PTR = &lpp_tvb + tvbuff_t *lpp_tvb; + +%(DEFAULT_BODY)s + + if (lpp_tvb && lpp_handle) { + call_dissector(lpp_handle, lpp_tvb, %(ACTX)s->pinfo, tree); + } + +#.FN_BODY SETId/msisdn VAL_PTR=&msisdn_tvb + tvbuff_t *msisdn_tvb; +%(DEFAULT_BODY)s + if (msisdn_tvb) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ilp_setid); + dissect_e164_msisdn(msisdn_tvb, subtree, 0, 8, E164_ENC_BCD); + } + +#.FN_BODY SETId/mdn VAL_PTR=&mdn_tvb + tvbuff_t *mdn_tvb; +%(DEFAULT_BODY)s + if (mdn_tvb) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ilp_setid); + proto_tree_add_item(subtree, hf_ilp_mobile_directory_number, mdn_tvb, 0, 8, ENC_BCD_DIGITS_0_9); + } + +#.FN_BODY SETId/imsi VAL_PTR=&imsi_tvb + tvbuff_t *imsi_tvb; +%(DEFAULT_BODY)s + if (imsi_tvb) { + proto_tree *subtree; + + subtree = proto_item_add_subtree(actx->created_item, ett_ilp_setid); + dissect_e212_imsi(imsi_tvb, actx->pinfo, subtree, 0, 8, FALSE); + } + +#.TYPE_ATTR +IPAddress/ipv4Address TYPE = FT_IPv4 DISPLAY = BASE_NONE STRINGS = NULL +IPAddress/ipv6Address TYPE = FT_IPv6 DISPLAY = BASE_NONE STRINGS = NULL +#.END |