For fields of type FT_ABSOLUTE_TIME, have the "display" value be one of
[obnox/wireshark/wip.git] / epan / dissectors / packet-h225.c
index 433ab9c7b084247e749d8672b27f31c4015754d4..5dbf0e1cff539dc4c2b36ee91805572211a12749 100644 (file)
@@ -1,7 +1,7 @@
 /* Do not modify this file.                                                   */
 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
-/* ./packet-h225.c                                                            */
-/* ../../tools/asn2wrs.py -e -p h225 -c h225.cnf -s packet-h225-template H323-MESSAGES.asn */
+/* packet-h225.c                                                              */
+/* ../../tools/asn2wrs.py -e -p h225 -c ./h225.cnf -s ./packet-h225-template -D . H323-MESSAGES.asn */
 
 /* Input file: packet-h225-template.c */
 
@@ -55,7 +55,7 @@
 #include <epan/oids.h>
 #include <epan/next_tvb.h>
 #include <epan/asn1.h>
-#include "tap.h"
+#include <epan/tap.h>
 #include "packet-tpkt.h"
 #include "packet-per.h"
 #include "packet-h225.h"
@@ -63,6 +63,7 @@
 #include <epan/h225-persistentdata.h>
 #include "packet-h235.h"
 #include "packet-h245.h"
+#include "packet-h323.h"
 #include "packet-q931.h"
 #include "packet-ssl.h"
 
@@ -82,15 +83,15 @@ static int dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, p
 
 static h225_packet_info pi_arr[5]; /* We assuming a maximum of 5 H225 messaages per packet */
 static int pi_current=0;
-h225_packet_info *h225_pi=NULL;
+h225_packet_info *h225_pi=&pi_arr[0];
 
-static dissector_handle_t h225ras_handle;
-static dissector_handle_t H323UserInformation_handle;
 static dissector_handle_t data_handle;
 /* Subdissector tables */
 static dissector_table_t nsp_object_dissector_table;
 static dissector_table_t nsp_h221_dissector_table;
 static dissector_table_t tp_dissector_table;
+static dissector_table_t gef_name_dissector_table;
+static dissector_table_t gef_content_dissector_table;
 
 
 static dissector_handle_t h245_handle=NULL;
@@ -107,8 +108,6 @@ static next_tvb_list_t tp_list;
 static int h225_tap = -1;
 static int proto_h225 = -1;
 
-static int hf_h225_H323_UserInformation = -1;
-static int hf_h225_RasMessage = -1;
 static int hf_h221Manufacturer = -1;
 static int hf_h225_ras_req_frame = -1;
 static int hf_h225_ras_rsp_frame = -1;
@@ -118,6 +117,9 @@ static int hf_h225_ras_deltatime = -1;
 
 /*--- Included file: packet-h225-hf.c ---*/
 #line 1 "packet-h225-hf.c"
+static int hf_h225_H323_UserInformation_PDU = -1;  /* H323_UserInformation */
+static int hf_h225_h225_ExtendedAliasAddress_PDU = -1;  /* ExtendedAliasAddress */
+static int hf_h225_RasMessage_PDU = -1;           /* RasMessage */
 static int hf_h225_h323_uu_pdu = -1;              /* H323_UU_PDU */
 static int hf_h225_user_data = -1;                /* T_user_data */
 static int hf_h225_protocol_discriminator = -1;   /* INTEGER_0_255 */
@@ -402,24 +404,24 @@ static int hf_h225_pISNSpecificNumber = -1;       /* NULL */
 static int hf_h225_localNumber = -1;              /* NULL */
 static int hf_h225_ansi_41_uim = -1;              /* ANSI_41_UIM */
 static int hf_h225_gsm_uim = -1;                  /* GSM_UIM */
-static int hf_h225_imsi = -1;                     /* TBCD_STRING */
-static int hf_h225_min = -1;                      /* TBCD_STRING */
-static int hf_h225_mdn = -1;                      /* TBCD_STRING */
-static int hf_h225_msisdn = -1;                   /* TBCD_STRING */
-static int hf_h225_esn = -1;                      /* TBCD_STRING */
-static int hf_h225_mscid = -1;                    /* TBCD_STRING */
+static int hf_h225_imsi = -1;                     /* TBCD_STRING_SIZE_3_16 */
+static int hf_h225_min = -1;                      /* TBCD_STRING_SIZE_3_16 */
+static int hf_h225_mdn = -1;                      /* TBCD_STRING_SIZE_3_16 */
+static int hf_h225_msisdn = -1;                   /* TBCD_STRING_SIZE_3_16 */
+static int hf_h225_esn = -1;                      /* TBCD_STRING_SIZE_16 */
+static int hf_h225_mscid = -1;                    /* TBCD_STRING_SIZE_3_16 */
 static int hf_h225_system_id = -1;                /* T_system_id */
-static int hf_h225_sid = -1;                      /* TBCD_STRING */
-static int hf_h225_mid = -1;                      /* TBCD_STRING */
+static int hf_h225_sid = -1;                      /* TBCD_STRING_SIZE_1_4 */
+static int hf_h225_mid = -1;                      /* TBCD_STRING_SIZE_1_4 */
 static int hf_h225_systemMyTypeCode = -1;         /* OCTET_STRING_SIZE_1 */
 static int hf_h225_systemAccessType = -1;         /* OCTET_STRING_SIZE_1 */
 static int hf_h225_qualificationInformationCode = -1;  /* OCTET_STRING_SIZE_1 */
-static int hf_h225_sesn = -1;                     /* TBCD_STRING */
-static int hf_h225_soc = -1;                      /* TBCD_STRING */
+static int hf_h225_sesn = -1;                     /* TBCD_STRING_SIZE_16 */
+static int hf_h225_soc = -1;                      /* TBCD_STRING_SIZE_3_16 */
 static int hf_h225_tmsi = -1;                     /* OCTET_STRING_SIZE_1_4 */
-static int hf_h225_imei = -1;                     /* TBCD_STRING */
-static int hf_h225_hplmn = -1;                    /* TBCD_STRING */
-static int hf_h225_vplmn = -1;                    /* TBCD_STRING */
+static int hf_h225_imei = -1;                     /* TBCD_STRING_SIZE_15_16 */
+static int hf_h225_hplmn = -1;                    /* TBCD_STRING_SIZE_1_4 */
+static int hf_h225_vplmn = -1;                    /* TBCD_STRING_SIZE_1_4 */
 static int hf_h225_isupE164Number = -1;           /* IsupPublicPartyNumber */
 static int hf_h225_isupDataPartyNumber = -1;      /* IsupDigits */
 static int hf_h225_isupTelexPartyNumber = -1;     /* IsupDigits */
@@ -602,10 +604,10 @@ static int hf_h225_callDurationLimit = -1;        /* INTEGER_1_4294967295 */
 static int hf_h225_enforceCallDurationLimit = -1;  /* BOOLEAN */
 static int hf_h225_callStartingPoint = -1;        /* CallCreditServiceControl_callStartingPoint */
 static int hf_h225_id = -1;                       /* GenericIdentifier */
-static int hf_h225_parameters = -1;               /* SEQUENCE_SIZE_1_512_OF_EnumeratedParameter */
-static int hf_h225_parameters_item = -1;          /* EnumeratedParameter */
-static int hf_h225_standard = -1;                 /* INTEGER_0_16383_ */
-static int hf_h225_oid = -1;                      /* OBJECT_IDENTIFIER */
+static int hf_h225_parameters = -1;               /* T_parameters */
+static int hf_h225_parameters_item = -1;          /* T_parameters_item */
+static int hf_h225_standard = -1;                 /* T_standard */
+static int hf_h225_oid = -1;                      /* T_oid */
 static int hf_h225_genericIdentifier_nonStandard = -1;  /* GloballyUniqueID */
 static int hf_h225_content = -1;                  /* Content */
 static int hf_h225_raw = -1;                      /* OCTET_STRING */
@@ -882,7 +884,7 @@ static int hf_h225_stopped = -1;                  /* NULL */
 static int hf_h225_notAvailable = -1;             /* NULL */
 
 /*--- End of included file: packet-h225-hf.c ---*/
-#line 111 "packet-h225-template.c"
+#line 110 "packet-h225-template.c"
 
 /* Initialize the subtree pointers */
 static gint ett_h225 = -1;
@@ -1045,10 +1047,11 @@ static gint ett_h225_CallCreditServiceControl = -1;
 static gint ett_h225_T_billingMode = -1;
 static gint ett_h225_CallCreditServiceControl_callStartingPoint = -1;
 static gint ett_h225_GenericData = -1;
-static gint ett_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter = -1;
+static gint ett_h225_T_parameters = -1;
 static gint ett_h225_GenericIdentifier = -1;
 static gint ett_h225_EnumeratedParameter = -1;
 static gint ett_h225_Content = -1;
+static gint ett_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter = -1;
 static gint ett_h225_SEQUENCE_SIZE_1_16_OF_GenericData = -1;
 static gint ett_h225_FeatureSet = -1;
 static gint ett_h225_TransportChannelInfo = -1;
@@ -1128,7 +1131,7 @@ static gint ett_h225_ServiceControlResponse = -1;
 static gint ett_h225_T_result = -1;
 
 /*--- End of included file: packet-h225-ett.c ---*/
-#line 115 "packet-h225-template.c"
+#line 114 "packet-h225-template.c"
 
 /* Preferences */
 static guint h225_tls_port = TLS_PORT_CS;
@@ -1137,12 +1140,12 @@ static gboolean h225_h245_in_tree = TRUE;
 static gboolean h225_tp_in_tree = TRUE;
 
 /* Global variables */
-static guint saved_h225_tls_port;
 static guint32  ipv4_address;
 static guint32  ipv4_port;
 guint32 T38_manufacturer_code;
 guint32 value;
 static gboolean contains_faststart = FALSE;
+static e_guid_t *call_id_guid;
 
 /* NonStandardParameter */
 static const char *nsiOID;
@@ -1162,7 +1165,7 @@ static const char *tpOID;
 /* EnumeratedParameter -> Content -> Content/compound -> EnumeratedParameter */
 static int dissect_h225_EnumeratedParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
 
-/* GenericData -> GenericData/parameters -> EnumeratedParameter -> Content -> Content/nested -> GenericData */
+/* GenericData -> GenericData/parameters -> GenericData/parameters/_item -> EnumeratedParameter -> Content -> Content/nested -> GenericData */
 int dissect_h225_GenericData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
 
 
@@ -1179,12 +1182,12 @@ dissect_h225_ProtocolIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
 
 static int
 dissect_h225_T_h245Ip(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 311 "h225.cnf"
+#line 322 "h225.cnf"
   tvbuff_t *value_tvb;
 
   ipv4_address = 0;
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       4, 4, &value_tvb);
+                                       4, 4, FALSE, &value_tvb);
 
   if (value_tvb)
     ipv4_address = tvb_get_ipv4(value_tvb, 0);
@@ -1198,7 +1201,7 @@ dissect_h225_T_h245Ip(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
 static int
 dissect_h225_T_h245IpPort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 65535U, &ipv4_port, FALSE);
+                                                            0U, 65535U, &ipv4_port, FALSE);
 
   return offset;
 }
@@ -1223,7 +1226,7 @@ dissect_h225_T_h245IpAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 static int
 dissect_h225_OCTET_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       4, 4, NULL);
+                                       4, 4, FALSE, NULL);
 
   return offset;
 }
@@ -1233,7 +1236,7 @@ dissect_h225_OCTET_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 static int
 dissect_h225_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 65535U, NULL, FALSE);
+                                                            0U, 65535U, NULL, FALSE);
 
   return offset;
 }
@@ -1304,7 +1307,7 @@ dissect_h225_T_h245IpSourceRoute(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 static int
 dissect_h225_OCTET_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       6, 6, NULL);
+                                       6, 6, FALSE, NULL);
 
   return offset;
 }
@@ -1314,7 +1317,7 @@ dissect_h225_OCTET_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 static int
 dissect_h225_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       2, 2, NULL);
+                                       2, 2, FALSE, NULL);
 
   return offset;
 }
@@ -1340,7 +1343,7 @@ dissect_h225_T_h245IpxAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
 static int
 dissect_h225_OCTET_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       16, 16, NULL);
+                                       16, 16, FALSE, NULL);
 
   return offset;
 }
@@ -1365,7 +1368,7 @@ dissect_h225_T_h245Ip6Address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
 static int
 dissect_h225_OCTET_STRING_SIZE_1_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       1, 20, NULL);
+                                       1, 20, FALSE, NULL);
 
   return offset;
 }
@@ -1384,7 +1387,7 @@ dissect_h225_T_nsiOID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
 static int
 dissect_h225_T_t35CountryCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 255U, &t35CountryCode, FALSE);
+                                                            0U, 255U, &t35CountryCode, FALSE);
 
   return offset;
 }
@@ -1394,7 +1397,7 @@ dissect_h225_T_t35CountryCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
 static int
 dissect_h225_T_t35Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 255U, &t35Extension, FALSE);
+                                                            0U, 255U, &t35Extension, FALSE);
 
   return offset;
 }
@@ -1404,7 +1407,7 @@ dissect_h225_T_t35Extension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 static int
 dissect_h225_T_manufacturerCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 65535U, &manufacturerCode, FALSE);
+                                                            0U, 65535U, &manufacturerCode, FALSE);
 
   return offset;
 }
@@ -1419,7 +1422,7 @@ static const per_sequence_t H221NonStandard_sequence[] = {
 
 static int
 dissect_h225_H221NonStandard(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 600 "h225.cnf"
+#line 612 "h225.cnf"
   t35CountryCode = 0;
   t35Extension = 0;
   manufacturerCode = 0;
@@ -1427,7 +1430,7 @@ dissect_h225_H221NonStandard(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_H221NonStandard, H221NonStandard_sequence);
 
-#line 604 "h225.cnf"
+#line 616 "h225.cnf"
   h221NonStandard = ((t35CountryCode * 256) + t35Extension) * 65536 + manufacturerCode;
   proto_tree_add_uint(tree, hf_h221Manufacturer, tvb, (offset>>3)-4, 4, h221NonStandard);
 
@@ -1449,8 +1452,8 @@ static const per_choice_t NonStandardIdentifier_choice[] = {
 
 static int
 dissect_h225_NonStandardIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 581 "h225.cnf"
-       guint32 value;
+#line 593 "h225.cnf"
+       gint32 value;
 
        nsiOID = "";
        h221NonStandard = 0;
@@ -1478,11 +1481,11 @@ dissect_h225_NonStandardIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 
 static int
 dissect_h225_T_nsp_data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 615 "h225.cnf"
+#line 627 "h225.cnf"
   tvbuff_t *next_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &next_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &next_tvb);
 
   if (next_tvb && tvb_length(next_tvb)) {
     call_dissector((nsp_handle)?nsp_handle:data_handle, next_tvb, actx->pinfo, tree);
@@ -1501,7 +1504,7 @@ static const per_sequence_t NonStandardParameter_sequence[] = {
 
 int
 dissect_h225_NonStandardParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 613 "h225.cnf"
+#line 625 "h225.cnf"
   nsp_handle = NULL;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -1535,7 +1538,7 @@ static const per_choice_t H245TransportAddress_choice[] = {
 
 static int
 dissect_h225_H245TransportAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 421 "h225.cnf"
+#line 432 "h225.cnf"
        ipv4_address=0;
        ipv4_port=0;
 
@@ -1544,7 +1547,7 @@ dissect_h225_H245TransportAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
                                  ett_h225_H245TransportAddress, H245TransportAddress_choice,
                                  NULL);
 
-#line 427 "h225.cnf"
+#line 438 "h225.cnf"
        /* we need this info for TAPing */
        h225_pi->is_h245 = TRUE;
        h225_pi->h245_address = ipv4_address;   
@@ -1573,15 +1576,15 @@ dissect_h225_H245TransportAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 
 static int
 dissect_h225_DialedDigits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 293 "h225.cnf"
+#line 304 "h225.cnf"
   tvbuff_t *value_tvb = NULL;
   guint len = 0;
 
   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
-                                                      1, 128, "0123456789#*,", 13,
+                                                      1, 128, FALSE, "0123456789#*,", 13,
                                                       &value_tvb);
 
-  if (h225_pi->is_destinationInfo == TRUE) {
+  if (h225_pi && h225_pi->is_destinationInfo == TRUE) {
     if (value_tvb) {
       len = tvb_length(value_tvb);
       /* XXX - should this be allocated as an ephemeral string? */
@@ -1602,7 +1605,7 @@ dissect_h225_DialedDigits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 static int
 dissect_h225_BMPString_SIZE_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
-                                          1, 256);
+                                          1, 256, FALSE);
 
   return offset;
 }
@@ -1612,7 +1615,7 @@ dissect_h225_BMPString_SIZE_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_IA5String_SIZE_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          1, 512);
+                                          1, 512, FALSE);
 
   return offset;
 }
@@ -1622,7 +1625,7 @@ dissect_h225_IA5String_SIZE_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_IpV4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       4, 4, NULL);
+                                       4, 4, FALSE, NULL);
 
   return offset;
 }
@@ -1792,7 +1795,7 @@ dissect_h225_PublicTypeOfNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
 static int
 dissect_h225_NumberDigits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
-                                                      1, 128, "0123456789#*,", 13,
+                                                      1, 128, FALSE, "0123456789#*,", 13,
                                                       NULL);
 
   return offset;
@@ -1890,14 +1893,50 @@ dissect_h225_PartyNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 
 static int
 dissect_h225_TBCD_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 708 "h225.cnf"
+  int min_len, max_len;
+  gboolean has_extension;
+  
+  get_size_constraint_from_stack(actx, "TBCD_STRING", &min_len, &max_len, &has_extension);
+
   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
-                                                      NO_BOUND, NO_BOUND, "0123456789#*abc", 15,
+                                                      min_len, max_len, has_extension, "0123456789#*abc", 15,
                                                       NULL);
 
   return offset;
 }
 
 
+
+static int
+dissect_h225_TBCD_STRING_SIZE_3_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_per_size_constrained_type(tvb, offset, actx, tree, hf_index, dissect_h225_TBCD_STRING,
+                                                "TBCD_STRING", 3, 16, FALSE);
+
+  return offset;
+}
+
+
+
+static int
+dissect_h225_TBCD_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_per_size_constrained_type(tvb, offset, actx, tree, hf_index, dissect_h225_TBCD_STRING,
+                                                "TBCD_STRING", 16, 16, FALSE);
+
+  return offset;
+}
+
+
+
+static int
+dissect_h225_TBCD_STRING_SIZE_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_per_size_constrained_type(tvb, offset, actx, tree, hf_index, dissect_h225_TBCD_STRING,
+                                                "TBCD_STRING", 1, 4, FALSE);
+
+  return offset;
+}
+
+
 static const value_string h225_T_system_id_vals[] = {
   {   0, "sid" },
   {   1, "mid" },
@@ -1905,8 +1944,8 @@ static const value_string h225_T_system_id_vals[] = {
 };
 
 static const per_choice_t T_system_id_choice[] = {
-  {   0, &hf_h225_sid            , ASN1_EXTENSION_ROOT    , dissect_h225_TBCD_STRING },
-  {   1, &hf_h225_mid            , ASN1_EXTENSION_ROOT    , dissect_h225_TBCD_STRING },
+  {   0, &hf_h225_sid            , ASN1_EXTENSION_ROOT    , dissect_h225_TBCD_STRING_SIZE_1_4 },
+  {   1, &hf_h225_mid            , ASN1_EXTENSION_ROOT    , dissect_h225_TBCD_STRING_SIZE_1_4 },
   { 0, NULL, 0, NULL }
 };
 
@@ -1924,25 +1963,25 @@ dissect_h225_T_system_id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 static int
 dissect_h225_OCTET_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       1, 1, NULL);
+                                       1, 1, FALSE, NULL);
 
   return offset;
 }
 
 
 static const per_sequence_t ANSI_41_UIM_sequence[] = {
-  { &hf_h225_imsi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_min            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_mdn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_msisdn         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_esn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_mscid          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
+  { &hf_h225_imsi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
+  { &hf_h225_min            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
+  { &hf_h225_mdn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
+  { &hf_h225_msisdn         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
+  { &hf_h225_esn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_16 },
+  { &hf_h225_mscid          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
   { &hf_h225_system_id      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h225_T_system_id },
   { &hf_h225_systemMyTypeCode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_OCTET_STRING_SIZE_1 },
   { &hf_h225_systemAccessType, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_OCTET_STRING_SIZE_1 },
   { &hf_h225_qualificationInformationCode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_OCTET_STRING_SIZE_1 },
-  { &hf_h225_sesn           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_soc            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
+  { &hf_h225_sesn           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_16 },
+  { &hf_h225_soc            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
   { NULL, 0, 0, NULL }
 };
 
@@ -1959,19 +1998,29 @@ dissect_h225_ANSI_41_UIM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 static int
 dissect_h225_OCTET_STRING_SIZE_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       1, 4, NULL);
+                                       1, 4, FALSE, NULL);
+
+  return offset;
+}
+
+
+
+static int
+dissect_h225_TBCD_STRING_SIZE_15_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_per_size_constrained_type(tvb, offset, actx, tree, hf_index, dissect_h225_TBCD_STRING,
+                                                "TBCD_STRING", 15, 16, FALSE);
 
   return offset;
 }
 
 
 static const per_sequence_t GSM_UIM_sequence[] = {
-  { &hf_h225_imsi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
+  { &hf_h225_imsi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
   { &hf_h225_tmsi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_OCTET_STRING_SIZE_1_4 },
-  { &hf_h225_msisdn         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_imei           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_hplmn          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
-  { &hf_h225_vplmn          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING },
+  { &hf_h225_msisdn         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_3_16 },
+  { &hf_h225_imei           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_15_16 },
+  { &hf_h225_hplmn          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_1_4 },
+  { &hf_h225_vplmn          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_TBCD_STRING_SIZE_1_4 },
   { NULL, 0, 0, NULL }
 };
 
@@ -2044,7 +2093,7 @@ dissect_h225_NatureOfAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 static int
 dissect_h225_IsupDigits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
-                                                      1, 128, "0123456789ABCDE", 15,
+                                                      1, 128, FALSE, "0123456789ABCDE", 15,
                                                       NULL);
 
   return offset;
@@ -2160,7 +2209,7 @@ dissect_h225_SEQUENCE_OF_AliasAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ct
 static int
 dissect_h225_OCTET_STRING_SIZE_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       1, 256, NULL);
+                                       1, 256, FALSE, NULL);
 
   return offset;
 }
@@ -2210,7 +2259,7 @@ dissect_h225_GatekeeperInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 int
 dissect_h225_BandWidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 4294967295U, NULL, FALSE);
+                                                            0U, 4294967295U, NULL, FALSE);
 
   return offset;
 }
@@ -2220,7 +2269,7 @@ dissect_h225_BandWidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 static int
 dissect_h225_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 256U, NULL, FALSE);
+                                                            1U, 256U, NULL, FALSE);
 
   return offset;
 }
@@ -2592,7 +2641,7 @@ dissect_h225_T_tunnelledProtocolObjectID(tvbuff_t *tvb _U_, int offset _U_, asn1
 static int
 dissect_h225_IA5String_SIZE_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          1, 64);
+                                          1, 64, FALSE);
 
   return offset;
 }
@@ -2643,13 +2692,13 @@ static const per_sequence_t TunnelledProtocol_sequence[] = {
 
 int
 dissect_h225_TunnelledProtocol(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 558 "h225.cnf"
+#line 570 "h225.cnf"
   tpOID = "";
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_TunnelledProtocol, TunnelledProtocol_sequence);
 
-#line 560 "h225.cnf"
+#line 572 "h225.cnf"
   tp_handle = dissector_get_string_handle(tp_dissector_table, tpOID);
 
   return offset;
@@ -2696,7 +2745,7 @@ dissect_h225_EndpointType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 int
 dissect_h225_CallReferenceValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 65535U, NULL, FALSE);
+                                                            0U, 65535U, NULL, FALSE);
 
   return offset;
 }
@@ -2719,7 +2768,7 @@ dissect_h225_SEQUENCE_OF_CallReferenceValue(tvbuff_t *tvb _U_, int offset _U_, a
 int
 dissect_h225_GloballyUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       16, 16, actx->value_ptr);
+                                       16, 16, FALSE, actx->value_ptr);
 
   return offset;
 }
@@ -2827,13 +2876,14 @@ dissect_h225_CallType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
 
 static int
 dissect_h225_T_guid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 533 "h225.cnf"
-  tvbuff_t *guid_tvb;
+#line 544 "h225.cnf"
+  tvbuff_t *guid_tvb = NULL;
 
   actx->value_ptr = &guid_tvb;
   offset = dissect_h225_GloballyUniqueID(tvb, offset, actx, tree, hf_index);
 
-  tvb_memcpy(guid_tvb,(guint8 *)&h225_pi->guid,0,GUID_LEN);
+  if (guid_tvb)
+    tvb_get_ntohguid(guid_tvb, 0, call_id_guid = ep_alloc(sizeof(e_guid_t)));
   actx->value_ptr = NULL;
 
 
@@ -2968,7 +3018,7 @@ dissect_h225_T_cryptoEPPwdHash(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
 int
 dissect_h225_GatekeeperIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
-                                          1, 128);
+                                          1, 128, FALSE);
 
   return offset;
 }
@@ -3040,15 +3090,15 @@ dissect_h225_SEQUENCE_OF_CryptoH323Token(tvbuff_t *tvb _U_, int offset _U_, asn1
 
 static int
 dissect_h225_FastStart_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 260 "h225.cnf"
+#line 271 "h225.cnf"
        tvbuff_t *value_tvb = NULL;
        char codec_str[50];
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &value_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &value_tvb);
 
        if (value_tvb && tvb_length(value_tvb)) {
-               dissect_h245_OpenLogicalChannelCodec(value_tvb, actx->pinfo, tree, codec_str);
+               dissect_h245_FastStart_OLC(value_tvb, actx->pinfo, tree, codec_str);
        }
 
     /* Add to packet info */
@@ -3079,7 +3129,7 @@ dissect_h225_FastStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 static int
 dissect_h225_EndpointIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
-                                          1, 128);
+                                          1, 128, FALSE);
 
   return offset;
 }
@@ -3167,7 +3217,7 @@ dissect_h225_T_connectionParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_
 static int
 dissect_h225_IA5String_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          1, 32);
+                                          1, 32, FALSE);
 
   return offset;
 }
@@ -3232,7 +3282,7 @@ dissect_h225_ScreeningIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
 static int
 dissect_h225_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 255U, NULL, FALSE);
+                                                            0U, 255U, NULL, FALSE);
 
   return offset;
 }
@@ -3242,7 +3292,7 @@ dissect_h225_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
 static int
 dissect_h225_IA5String_SIZE_0_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          0, 512);
+                                          0, 512, FALSE);
 
   return offset;
 }
@@ -3252,7 +3302,7 @@ dissect_h225_IA5String_SIZE_0_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_H248SignalsDescriptor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, NULL);
+                                       NO_BOUND, NO_BOUND, FALSE, NULL);
 
   return offset;
 }
@@ -3262,7 +3312,7 @@ dissect_h225_H248SignalsDescriptor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_BMPString_SIZE_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
-                                          1, 512);
+                                          1, 512, FALSE);
 
   return offset;
 }
@@ -3294,7 +3344,7 @@ dissect_h225_T_billingMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
 static int
 dissect_h225_INTEGER_1_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 4294967295U, NULL, FALSE);
+                                                            1U, 4294967295U, NULL, FALSE);
 
   return offset;
 }
@@ -3423,7 +3473,7 @@ dissect_h225_SEQUENCE_OF_ServiceControlSession(tvbuff_t *tvb _U_, int offset _U_
 static int
 dissect_h225_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 4294967295U, NULL, FALSE);
+                                                            0U, 4294967295U, NULL, FALSE);
 
   return offset;
 }
@@ -3433,7 +3483,7 @@ dissect_h225_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_IA5String_SIZE_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          1, 128);
+                                          1, 128, FALSE);
 
   return offset;
 }
@@ -3443,7 +3493,7 @@ dissect_h225_IA5String_SIZE_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_OCTET_STRING_SIZE_3_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       3, 4, NULL);
+                                       3, 4, FALSE, NULL);
 
   return offset;
 }
@@ -3537,7 +3587,7 @@ dissect_h225_CallCapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 static int
 dissect_h225_OCTET_STRING_SIZE_2_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       2, 4, NULL);
+                                       2, 4, FALSE, NULL);
 
   return offset;
 }
@@ -3560,7 +3610,7 @@ dissect_h225_T_cic_2_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 static int
 dissect_h225_OCTET_STRING_SIZE_2_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       2, 5, NULL);
+                                       2, 5, FALSE, NULL);
 
   return offset;
 }
@@ -3627,9 +3677,34 @@ dissect_h225_CircuitIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
 
 
 static int
-dissect_h225_INTEGER_0_16383_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+dissect_h225_T_standard(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 684 "h225.cnf"
+  guint32 value_int = (guint32)-1;
+  gef_ctx_t *gefx;
+
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 16383U, NULL, TRUE);
+                                                            0U, 16383U, &value_int, TRUE);
+
+  gefx = gef_ctx_get(actx->private_data);
+  if (gefx) gefx->id = ep_strdup_printf("%u", value_int);
+
+
+  return offset;
+}
+
+
+
+static int
+dissect_h225_T_oid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 693 "h225.cnf"
+  const gchar *oid_str = NULL;
+  gef_ctx_t *gefx;
+
+  offset = dissect_per_object_identifier_str(tvb, offset, actx, tree, hf_index, &oid_str);
+
+  gefx = gef_ctx_get(actx->private_data);
+  if (gefx) gefx->id = oid_str;
+
 
   return offset;
 }
@@ -3643,18 +3718,32 @@ const value_string h225_GenericIdentifier_vals[] = {
 };
 
 static const per_choice_t GenericIdentifier_choice[] = {
-  {   0, &hf_h225_standard       , ASN1_EXTENSION_ROOT    , dissect_h225_INTEGER_0_16383_ },
-  {   1, &hf_h225_oid            , ASN1_EXTENSION_ROOT    , dissect_h225_OBJECT_IDENTIFIER },
+  {   0, &hf_h225_standard       , ASN1_EXTENSION_ROOT    , dissect_h225_T_standard },
+  {   1, &hf_h225_oid            , ASN1_EXTENSION_ROOT    , dissect_h225_T_oid },
   {   2, &hf_h225_genericIdentifier_nonStandard, ASN1_EXTENSION_ROOT    , dissect_h225_GloballyUniqueID },
   { 0, NULL, 0, NULL }
 };
 
 int
 dissect_h225_GenericIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 670 "h225.cnf"
+  gef_ctx_t *gefx;
+
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_GenericIdentifier, GenericIdentifier_choice,
                                  NULL);
 
+#line 672 "h225.cnf"
+  gef_ctx_update_key(gef_ctx_get(actx->private_data));
+  /* DEBUG */ /*proto_tree_add_text(tree, tvb, offset>>3, 0, "*** DEBUG GenericIdentifier: %s", gef_ctx_get(actx->private_data)->key);*/
+  gefx = gef_ctx_get(actx->private_data);
+  if (gefx) {
+    /* DEBUG */ /*proto_tree_add_text(tree, tvb, offset>>3, 0, "*** DEBUG dissector_try_string: %s", gefx->key);*/
+    actx->pinfo->private_data = actx;
+    dissector_try_string(gef_name_dissector_table, gefx->key, tvb_new_subset(tvb, offset>>3, 0, 0), actx->pinfo, tree);
+  }
+  actx->private_data = gefx;  /* subdissector could overwrite it */
+
   return offset;
 }
 
@@ -3663,7 +3752,7 @@ dissect_h225_GenericIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
 static int
 dissect_h225_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, NULL);
+                                       NO_BOUND, NO_BOUND, FALSE, NULL);
 
   return offset;
 }
@@ -3673,7 +3762,7 @@ dissect_h225_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
 static int
 dissect_h225_IA5String(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_IA5String(tvb, offset, actx, tree, hf_index,
-                                          NO_BOUND, NO_BOUND);
+                                          NO_BOUND, NO_BOUND, FALSE);
 
   return offset;
 }
@@ -3683,21 +3772,21 @@ dissect_h225_IA5String(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 static int
 dissect_h225_BMPString(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_BMPString(tvb, offset, actx, tree, hf_index,
-                                          NO_BOUND, NO_BOUND);
+                                          NO_BOUND, NO_BOUND, FALSE);
 
   return offset;
 }
 
 
 static const per_sequence_t SEQUENCE_SIZE_1_512_OF_EnumeratedParameter_sequence_of[1] = {
-  { &hf_h225_parameters_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h225_EnumeratedParameter },
+  { &hf_h225_compound_item  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h225_EnumeratedParameter },
 };
 
 static int
 dissect_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                   ett_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter, SEQUENCE_SIZE_1_512_OF_EnumeratedParameter_sequence_of,
-                                                  1, 512);
+                                                  1, 512, FALSE);
 
   return offset;
 }
@@ -3711,7 +3800,7 @@ static int
 dissect_h225_SEQUENCE_SIZE_1_16_OF_GenericData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                   ett_h225_SEQUENCE_SIZE_1_16_OF_GenericData, SEQUENCE_SIZE_1_16_OF_GenericData_sequence_of,
-                                                  1, 16);
+                                                  1, 16, FALSE);
 
   return offset;
 }
@@ -3774,17 +3863,63 @@ dissect_h225_EnumeratedParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 }
 
 
+
+static int
+dissect_h225_T_parameters_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 652 "h225.cnf"
+  gef_ctx_t *parent_gefx;
+
+  parent_gefx = gef_ctx_get(actx->private_data);
+  actx->private_data = gef_ctx_alloc(parent_gefx, NULL);
+
+  offset = dissect_h225_EnumeratedParameter(tvb, offset, actx, tree, hf_index);
+
+#line 657 "h225.cnf"
+  actx->private_data = parent_gefx;
+
+  return offset;
+}
+
+
+static const per_sequence_t T_parameters_sequence_of[1] = {
+  { &hf_h225_parameters_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_h225_T_parameters_item },
+};
+
+static int
+dissect_h225_T_parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+                                                  ett_h225_T_parameters, T_parameters_sequence_of,
+                                                  1, 512, FALSE);
+
+  return offset;
+}
+
+
 static const per_sequence_t GenericData_sequence[] = {
   { &hf_h225_id             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h225_GenericIdentifier },
-  { &hf_h225_parameters     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter },
+  { &hf_h225_parameters     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_h225_T_parameters },
   { NULL, 0, 0, NULL }
 };
 
 int
 dissect_h225_GenericData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 638 "h225.cnf"
+  void *priv_data = actx->private_data;
+  gef_ctx_t *gefx;
+
+  /* check if not inherited from FeatureDescriptor */
+  gefx = gef_ctx_get(actx->private_data);
+  if (!gefx) {
+    gefx = gef_ctx_alloc(NULL, "GenericData");
+    actx->private_data = gefx;
+  }
+
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_GenericData, GenericData_sequence);
 
+#line 648 "h225.cnf"
+  actx->private_data = priv_data;
+
   return offset;
 }
 
@@ -3821,8 +3956,15 @@ dissect_h225_CircuitInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 
 static int
 dissect_h225_FeatureDescriptor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+#line 662 "h225.cnf"
+  void *priv_data = actx->private_data;
+  actx->private_data = gef_ctx_alloc(NULL, "FeatureDescriptor");
+
   offset = dissect_h225_GenericData(tvb, offset, actx, tree, hf_index);
 
+#line 665 "h225.cnf"
+  actx->private_data = priv_data;
+
   return offset;
 }
 
@@ -3843,11 +3985,11 @@ dissect_h225_SEQUENCE_OF_FeatureDescriptor(tvbuff_t *tvb _U_, int offset _U_, as
 
 static int
 dissect_h225_ParallelH245Control_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 322 "h225.cnf"
+#line 333 "h225.cnf"
        tvbuff_t *h245_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &h245_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
 
   next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
 
@@ -3902,7 +4044,7 @@ dissect_h225_SEQUENCE_OF_ExtendedAliasAddress(tvbuff_t *tvb _U_, int offset _U_,
 static int
 dissect_h225_INTEGER_1_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 31U, NULL, FALSE);
+                                                            1U, 31U, NULL, FALSE);
 
   return offset;
 }
@@ -3954,13 +4096,13 @@ static const per_sequence_t Setup_UUIE_sequence[] = {
 
 static int
 dissect_h225_Setup_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 375 "h225.cnf"
+#line 386 "h225.cnf"
   contains_faststart = FALSE;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Setup_UUIE, Setup_UUIE_sequence);
 
-#line 379 "h225.cnf"
+#line 390 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_SETUP;
   if (contains_faststart == TRUE )
@@ -4010,7 +4152,7 @@ dissect_h225_CallProceeding_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_CallProceeding_UUIE, CallProceeding_UUIE_sequence);
 
-#line 388 "h225.cnf"
+#line 399 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_CALL_PROCEDING;
   if (contains_faststart == TRUE )
@@ -4050,7 +4192,7 @@ dissect_h225_Connect_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Connect_UUIE, Connect_UUIE_sequence);
 
-#line 412 "h225.cnf"
+#line 423 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_CONNECT;
   if (contains_faststart == TRUE )
@@ -4088,7 +4230,7 @@ dissect_h225_Alerting_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Alerting_UUIE, Alerting_UUIE_sequence);
 
-#line 397 "h225.cnf"
+#line 408 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_ALERTING;
   if (contains_faststart == TRUE )
@@ -4116,7 +4258,7 @@ dissect_h225_Information_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Information_UUIE, Information_UUIE_sequence);
 
-#line 346 "h225.cnf"
+#line 357 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_INFORMATION;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -4235,8 +4377,8 @@ static const per_choice_t ReleaseCompleteReason_choice[] = {
 
 int
 dissect_h225_ReleaseCompleteReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 526 "h225.cnf"
-  guint32 value;
+#line 537 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_ReleaseCompleteReason, ReleaseCompleteReason_choice,
@@ -4269,7 +4411,7 @@ dissect_h225_ReleaseComplete_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_ReleaseComplete_UUIE, ReleaseComplete_UUIE_sequence);
 
-#line 406 "h225.cnf"
+#line 417 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_RELEASE_COMPLET;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -4310,8 +4452,8 @@ static const per_choice_t FacilityReason_choice[] = {
 
 static int
 dissect_h225_FacilityReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 450 "h225.cnf"
-       guint32 value;
+#line 461 "h225.cnf"
+       gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_FacilityReason, FacilityReason_choice,
@@ -4383,7 +4525,7 @@ dissect_h225_Facility_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Facility_UUIE, Facility_UUIE_sequence);
 
-#line 367 "h225.cnf"
+#line 378 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_FACILITY;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -4412,7 +4554,7 @@ dissect_h225_Progress_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Progress_UUIE, Progress_UUIE_sequence);
 
-#line 352 "h225.cnf"
+#line 363 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_PROGRESS;
   if (contains_faststart == TRUE )
@@ -4429,7 +4571,7 @@ static int
 dissect_h225_T_empty_flg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
 
-#line 336 "h225.cnf"
+#line 347 "h225.cnf"
   h225_pi->cs_type = H225_EMPTY;
 
   return offset;
@@ -4449,7 +4591,7 @@ dissect_h225_Status_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_Status_UUIE, Status_UUIE_sequence);
 
-#line 340 "h225.cnf"
+#line 351 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_STATUS;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -4488,7 +4630,7 @@ dissect_h225_SetupAcknowledge_UUIE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                    ett_h225_SetupAcknowledge_UUIE, SetupAcknowledge_UUIE_sequence);
 
-#line 361 "h225.cnf"
+#line 372 "h225.cnf"
   /* Add to packet info */
   h225_pi->cs_type = H225_SETUP_ACK;
   g_snprintf(h225_pi->frame_label, 50, "%s", val_to_str(h225_pi->cs_type, T_h323_message_body_vals, "<unknown>"));
@@ -4553,10 +4695,11 @@ static const per_choice_t T_h323_message_body_choice[] = {
 
 static int
 dissect_h225_T_h323_message_body(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 233 "h225.cnf"
-       guint32 message_body_val;
+#line 242 "h225.cnf"
+       gint32 message_body_val;
 
        contains_faststart = FALSE;
+       call_id_guid = NULL;
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_T_h323_message_body, T_h323_message_body_choice,
                                  &message_body_val);
@@ -4571,12 +4714,13 @@ dissect_h225_T_h323_message_body(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
                h225_pi->msg_tag = message_body_val;
        }
 
+       if (call_id_guid) {
+               h225_pi->guid = *call_id_guid;
+       }
+
        if (contains_faststart == TRUE )
        {
-               if (check_col(actx->pinfo->cinfo, COL_INFO))
-               {
-                       col_append_str(actx->pinfo->cinfo, COL_INFO, "OpenLogicalChannel " );
-               }
+               col_append_str(actx->pinfo->cinfo, COL_INFO, "OpenLogicalChannel " );
        }
 
        col_set_fence(actx->pinfo->cinfo,COL_INFO);
@@ -4590,11 +4734,11 @@ dissect_h225_T_h323_message_body(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 
 static int
 dissect_h225_T_h4501SupplementaryService_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 546 "h225.cnf"
+#line 558 "h225.cnf"
        tvbuff_t *h4501_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &h4501_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &h4501_tvb);
 
        if (h4501_tvb && tvb_length(h4501_tvb)) {
                call_dissector(h4501_handle, h4501_tvb, actx->pinfo, tree);
@@ -4630,11 +4774,11 @@ dissect_h225_T_h245Tunneling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 
 static int
 dissect_h225_H245Control_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 329 "h225.cnf"
+#line 340 "h225.cnf"
        tvbuff_t *h245_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &h245_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &h245_tvb);
 
   next_tvb_add_handle(&h245_list, h245_tvb, (h225_h245_in_tree)?tree:NULL, h245dg_handle);
 
@@ -4687,11 +4831,11 @@ dissect_h225_CallLinkage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 
 static int
 dissect_h225_T_messageContent_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 568 "h225.cnf"
+#line 580 "h225.cnf"
   tvbuff_t *next_tvb = NULL;
 
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, &next_tvb);
+                                       NO_BOUND, NO_BOUND, FALSE, &next_tvb);
 
   next_tvb_add_handle(&tp_list, next_tvb, (h225_tp_in_tree)?tree:NULL, tp_handle);
 
@@ -4723,7 +4867,7 @@ static const per_sequence_t T_tunnelledSignallingMessage_sequence[] = {
 
 static int
 dissect_h225_T_tunnelledSignallingMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 566 "h225.cnf"
+#line 578 "h225.cnf"
   tp_handle = NULL;
 
   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -4777,7 +4921,7 @@ dissect_h225_H323_UU_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
 static int
 dissect_h225_OCTET_STRING_SIZE_1_131(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       1, 131, NULL);
+                                       1, 131, FALSE, NULL);
 
   return offset;
 }
@@ -4867,7 +5011,7 @@ dissect_h225_SEQUENCE_OF_TransportAddress(tvbuff_t *tvb _U_, int offset _U_, asn
 static int
 dissect_h225_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              0U, 127U, NULL, FALSE);
+                                                            0U, 127U, NULL, FALSE);
 
   return offset;
 }
@@ -5017,7 +5161,7 @@ dissect_h225_SecurityErrors2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 static int
 dissect_h225_RequestSeqNum(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 65535U, &(h225_pi->requestSeqNum), FALSE);
+                                                            1U, 65535U, &(h225_pi->requestSeqNum), FALSE);
 
   return offset;
 }
@@ -5027,7 +5171,7 @@ dissect_h225_RequestSeqNum(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
 int
 dissect_h225_TimeToLive(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 4294967295U, NULL, FALSE);
+                                                            1U, 4294967295U, NULL, FALSE);
 
   return offset;
 }
@@ -5037,7 +5181,7 @@ dissect_h225_TimeToLive(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 static int
 dissect_h225_H248PackagesDescriptor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       NO_BOUND, NO_BOUND, NULL);
+                                       NO_BOUND, NO_BOUND, FALSE, NULL);
 
   return offset;
 }
@@ -5142,15 +5286,6 @@ dissect_h225_ICV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_
 }
 
 
-
-static int
-dissect_h225_FastStartToken(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-  offset = dissect_h235_ClearToken(tvb, offset, actx, tree, hf_index);
-
-  return offset;
-}
-
-
 static const per_sequence_t CapacityReportingCapability_sequence[] = {
   { &hf_h225_canReportCallCapacity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_h225_BOOLEAN },
   { NULL, 0, 0, NULL }
@@ -5279,7 +5414,7 @@ dissect_h225_RasUsageInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 static int
 dissect_h225_OCTET_STRING_SIZE_2_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
-                                       2, 32, NULL);
+                                       2, 32, FALSE, NULL);
 
   return offset;
 }
@@ -5358,7 +5493,7 @@ dissect_h225_CallCreditCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
 static int
 dissect_h225_PrintableString(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_PrintableString(tvb, offset, actx, tree, hf_index,
-                                          NO_BOUND, NO_BOUND);
+                                          NO_BOUND, NO_BOUND, FALSE);
 
   return offset;
 }
@@ -5368,7 +5503,7 @@ dissect_h225_PrintableString(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
 static int
 dissect_h225_INTEGER_1_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 255U, NULL, FALSE);
+                                                            1U, 255U, NULL, FALSE);
 
   return offset;
 }
@@ -5570,8 +5705,8 @@ static const per_choice_t GatekeeperRejectReason_choice[] = {
 
 static int
 dissect_h225_GatekeeperRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 457 "h225.cnf"
-  guint32 value;
+#line 468 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_GatekeeperRejectReason, GatekeeperRejectReason_choice,
@@ -5642,7 +5777,7 @@ static int
 dissect_h225_SEQUENCE_SIZE_1_256_OF_QOSCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                   ett_h225_SEQUENCE_SIZE_1_256_OF_QOSCapability, SEQUENCE_SIZE_1_256_OF_QOSCapability_sequence_of,
-                                                  1, 256);
+                                                  1, 256, FALSE);
 
   return offset;
 }
@@ -5728,7 +5863,7 @@ dissect_h225_RegistrationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
 static int
 dissect_h225_INTEGER_1_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
-                                              1U, 65535U, NULL, FALSE);
+                                                            1U, 65535U, NULL, FALSE);
 
   return offset;
 }
@@ -5872,8 +6007,8 @@ static const per_choice_t RegistrationRejectReason_choice[] = {
 
 static int
 dissect_h225_RegistrationRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 512 "h225.cnf"
-  guint32 value;
+#line 523 "h225.cnf"
+  gint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_RegistrationRejectReason, RegistrationRejectReason_choice,
@@ -5935,8 +6070,8 @@ static const per_choice_t UnregRequestReason_choice[] = {
 
 static int
 dissect_h225_UnregRequestReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 464 "h225.cnf"
-  guint32 value;
+#line 475 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_UnregRequestReason, UnregRequestReason_choice,
@@ -6020,8 +6155,8 @@ static const per_choice_t UnregRejectReason_choice[] = {
 
 static int
 dissect_h225_UnregRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 471 "h225.cnf"
-  guint32 value;
+#line 482 "h225.cnf"
+  gint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_UnregRejectReason, UnregRejectReason_choice,
@@ -6080,7 +6215,7 @@ dissect_h225_CallModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 
 static int
 dissect_h225_DestinationInfo_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 288 "h225.cnf"
+#line 299 "h225.cnf"
 
   h225_pi->is_destinationInfo = TRUE;
 
@@ -6288,8 +6423,8 @@ static const per_choice_t AdmissionRejectReason_choice[] = {
 
 static int
 dissect_h225_AdmissionRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 498 "h225.cnf"
-  guint32 value;
+#line 509 "h225.cnf"
+  gint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_AdmissionRejectReason, AdmissionRejectReason_choice,
@@ -6420,8 +6555,8 @@ static const per_choice_t BandRejectReason_choice[] = {
 
 static int
 dissect_h225_BandRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 478 "h225.cnf"
-  guint32 value;
+#line 489 "h225.cnf"
+  gint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_BandRejectReason, BandRejectReason_choice,
@@ -6472,8 +6607,8 @@ static const per_choice_t DisengageReason_choice[] = {
 
 static int
 dissect_h225_DisengageReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 485 "h225.cnf"
-  guint32 value;
+#line 496 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_DisengageReason, DisengageReason_choice,
@@ -6559,8 +6694,8 @@ static const per_choice_t DisengageRejectReason_choice[] = {
 
 static int
 dissect_h225_DisengageRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 491 "h225.cnf"
-  guint32 value;
+#line 502 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_DisengageRejectReason, DisengageRejectReason_choice,
@@ -6705,8 +6840,8 @@ static const per_choice_t LocationRejectReason_choice[] = {
 
 static int
 dissect_h225_LocationRejectReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 505 "h225.cnf"
-  guint32 value;
+#line 516 "h225.cnf"
+  gint32 value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_LocationRejectReason, LocationRejectReason_choice,
@@ -7076,8 +7211,8 @@ static const per_choice_t InfoRequestNakReason_choice[] = {
 
 static int
 dissect_h225_InfoRequestNakReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 519 "h225.cnf"
-  guint32 value;
+#line 530 "h225.cnf"
+  gint32 value;
        
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_InfoRequestNakReason, InfoRequestNakReason_choice,
@@ -7211,7 +7346,7 @@ dissect_h225_SEQUENCE_OF_AdmissionConfirm(tvbuff_t *tvb _U_, int offset _U_, asn
 }
 
 
-const value_string RasMessage_vals[] = {
+const value_string h225_RasMessage_vals[] = {
   {   0, "gatekeeperRequest" },
   {   1, "gatekeeperConfirm" },
   {   2, "gatekeeperReject" },
@@ -7287,8 +7422,8 @@ static const per_choice_t RasMessage_choice[] = {
 
 int
 dissect_h225_RasMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 276 "h225.cnf"
-       guint32 rasmessage_value;
+#line 287 "h225.cnf"
+       gint32 rasmessage_value;
 
   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                  ett_h225_RasMessage, RasMessage_choice,
@@ -7296,7 +7431,7 @@ dissect_h225_RasMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
 
        if (check_col(actx->pinfo->cinfo, COL_INFO)){
                col_add_fstr(actx->pinfo->cinfo, COL_INFO, "RAS: %s ",
-                       val_to_str(rasmessage_value, RasMessage_vals, "<unknown>"));
+                       val_to_str(rasmessage_value, h225_RasMessage_vals, "<unknown>"));
        }
 
        h225_pi->msg_tag = rasmessage_value;
@@ -7305,9 +7440,36 @@ dissect_h225_RasMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
   return offset;
 }
 
+/*--- PDUs ---*/
+
+static int dissect_H323_UserInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  int offset = 0;
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+  offset = dissect_h225_H323_UserInformation(tvb, offset, &asn1_ctx, tree, hf_h225_H323_UserInformation_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
+int dissect_h225_ExtendedAliasAddress_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  int offset = 0;
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+  offset = dissect_h225_ExtendedAliasAddress(tvb, offset, &asn1_ctx, tree, hf_h225_h225_ExtendedAliasAddress_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
+static int dissect_RasMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+  int offset = 0;
+  asn1_ctx_t asn1_ctx;
+  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+  offset = dissect_h225_RasMessage(tvb, offset, &asn1_ctx, tree, hf_h225_RasMessage_PDU);
+  offset += 7; offset >>= 3;
+  return offset;
+}
+
 
 /*--- End of included file: packet-h225-fn.c ---*/
-#line 141 "packet-h225-template.c"
+#line 140 "packet-h225-template.c"
 
 
 /* Forward declaration we need below */
@@ -7319,17 +7481,16 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
        proto_item *it;
        proto_tree *tr;
        int offset = 0;
-       asn1_ctx_t asn1_ctx;
 
-    pi_current++;
-    if(pi_current==5){
-      pi_current=0;
-    }
-    h225_pi=&pi_arr[pi_current];
+       pi_current++;
+       if(pi_current==5){
+               pi_current=0;
+       }
+       h225_pi=&pi_arr[pi_current];
 
        /* Init struct for collecting h225_packet_info */
-    reset_h225_packet_info(h225_pi);
-    h225_pi->msg_type = H225_CS;
+       reset_h225_packet_info(h225_pi);
+       h225_pi->msg_type = H225_CS;
 
        next_tvb_init(&h245_list);
        next_tvb_init(&tp_list);
@@ -7337,15 +7498,12 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
        if (check_col(pinfo->cinfo, COL_PROTOCOL)){
                col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
        }
-       if (check_col(pinfo->cinfo, COL_INFO)){
-               col_clear(pinfo->cinfo, COL_INFO);
-       }
+       col_clear(pinfo->cinfo, COL_INFO);
 
        it=proto_tree_add_protocol_format(tree, proto_h225, tvb, 0, tvb_length(tvb), PSNAME" CS");
        tr=proto_item_add_subtree(it, ett_h225);
 
-       asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
-       offset = dissect_h225_H323_UserInformation(tvb, offset, &asn1_ctx, tr, hf_h225_H323_UserInformation);
+       offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr);
 
        if (h245_list.count && check_col(pinfo->cinfo, COL_PROTOCOL)){
                col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
@@ -7364,17 +7522,16 @@ dissect_h225_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
        proto_item *it;
        proto_tree *tr;
        guint32 offset=0;
-       asn1_ctx_t asn1_ctx;
 
-    pi_current++;
-    if(pi_current==5){
-        pi_current=0;
-    }
-    h225_pi=&pi_arr[pi_current];
+       pi_current++;
+       if(pi_current==5){
+               pi_current=0;
+       }
+       h225_pi=&pi_arr[pi_current];
 
        /* Init struct for collecting h225_packet_info */
-    reset_h225_packet_info(h225_pi);
-    h225_pi->msg_type = H225_RAS;
+       reset_h225_packet_info(h225_pi);
+       h225_pi->msg_type = H225_RAS;
 
        if (check_col(pinfo->cinfo, COL_PROTOCOL)){
                col_set_str(pinfo->cinfo, COL_PROTOCOL, PSNAME);
@@ -7383,8 +7540,7 @@ dissect_h225_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
        it=proto_tree_add_protocol_format(tree, proto_h225, tvb, offset, tvb_length(tvb), PSNAME" RAS");
        tr=proto_item_add_subtree(it, ett_h225);
 
-       asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
-       offset = dissect_h225_RasMessage(tvb, 0, &asn1_ctx, tr, hf_h225_RasMessage );
+       offset = dissect_RasMessage_PDU(tvb, pinfo, tr);
 
        ras_call_matching(tvb, pinfo, tr, h225_pi);
 
@@ -7398,24 +7554,18 @@ void proto_register_h225(void) {
 
   /* List of fields */
   static hf_register_info hf[] = {
-       { &hf_h225_H323_UserInformation,
-               { "H323_UserInformation", "h225.H323_UserInformation", FT_NONE, BASE_NONE,
-               NULL, 0, "H323_UserInformation sequence", HFILL }},
-       { &hf_h225_RasMessage,
-               { "RasMessage", "h225.RasMessage", FT_UINT32, BASE_DEC,
-               VALS(RasMessage_vals), 0, "RasMessage choice", HFILL }},
        { &hf_h221Manufacturer,
                { "H.221 Manufacturer", "h221.Manufacturer", FT_UINT32, BASE_HEX,
-               VALS(H221ManufacturerCode_vals), 0, "H.221 Manufacturer", HFILL }},
+               VALS(H221ManufacturerCode_vals), 0, NULL, HFILL }},
        { &hf_h225_ras_req_frame,
                { "RAS Request Frame", "h225.ras.reqframe", FT_FRAMENUM, BASE_NONE,
-               NULL, 0, "RAS Request Frame", HFILL }},
+               NULL, 0, NULL, HFILL }},
        { &hf_h225_ras_rsp_frame,
                { "RAS Response Frame", "h225.ras.rspframe", FT_FRAMENUM, BASE_NONE,
-               NULL, 0, "RAS Response Frame", HFILL }},
+               NULL, 0, NULL, HFILL }},
        { &hf_h225_ras_dup,
                { "Duplicate RAS Message", "h225.ras.dup", FT_UINT32, BASE_DEC,
-               NULL, 0, "Duplicate RAS Message", HFILL }},
+               NULL, 0, NULL, HFILL }},
        { &hf_h225_ras_deltatime,
                { "RAS Service Response Time", "h225.ras.timedelta", FT_RELATIVE_TIME, BASE_NONE,
                NULL, 0, "Timedelta between RAS-Request and RAS-Response", HFILL }},
@@ -7423,6 +7573,18 @@ void proto_register_h225(void) {
 
 /*--- Included file: packet-h225-hfarr.c ---*/
 #line 1 "packet-h225-hfarr.c"
+    { &hf_h225_H323_UserInformation_PDU,
+      { "H323-UserInformation", "h225.H323_UserInformation",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "h225.H323_UserInformation", HFILL }},
+    { &hf_h225_h225_ExtendedAliasAddress_PDU,
+      { "ExtendedAliasAddress", "h225.ExtendedAliasAddress",
+        FT_NONE, BASE_NONE, NULL, 0,
+        "h225.ExtendedAliasAddress", HFILL }},
+    { &hf_h225_RasMessage_PDU,
+      { "RasMessage", "h225.RasMessage",
+        FT_UINT32, BASE_DEC, VALS(h225_RasMessage_vals), 0,
+        "h225.RasMessage", HFILL }},
     { &hf_h225_h323_uu_pdu,
       { "h323-uu-pdu", "h225.h323_uu_pdu",
         FT_NONE, BASE_NONE, NULL, 0,
@@ -7437,7 +7599,7 @@ void proto_register_h225(void) {
         "h225.INTEGER_0_255", HFILL }},
     { &hf_h225_user_information,
       { "user-information", "h225.user_information",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1_131", HFILL }},
     { &hf_h225_h323_message_body,
       { "h323-message-body", "h225.h323_message_body",
@@ -7504,15 +7666,15 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_h4501SupplementaryService", HFILL }},
     { &hf_h225_h4501SupplementaryService_item,
-      { "Item", "h225.h4501SupplementaryService_item",
+      { "h4501SupplementaryService item", "h225.h4501SupplementaryService_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_h4501SupplementaryService_item", HFILL }},
     { &hf_h225_h245Tunneling,
       { "h245Tunneling", "h225.h245Tunneling",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.T_h245Tunneling", HFILL }},
     { &hf_h225_H245Control_item,
-      { "Item", "h225.H245Control_item",
+      { "H245Control item", "h225.H245Control_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.H245Control_item", HFILL }},
     { &hf_h225_h245Control,
@@ -7524,7 +7686,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_NonStandardParameter", HFILL }},
     { &hf_h225_nonStandardControl_item,
-      { "Item", "h225.nonStandardControl_item",
+      { "NonStandardParameter", "h225.NonStandardParameter",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.NonStandardParameter", HFILL }},
     { &hf_h225_callLinkage,
@@ -7544,7 +7706,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_messageContent", HFILL }},
     { &hf_h225_messageContent_item,
-      { "Item", "h225.messageContent_item",
+      { "messageContent item", "h225.messageContent_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_messageContent_item", HFILL }},
     { &hf_h225_tunnellingRequired,
@@ -7564,7 +7726,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_GenericData", HFILL }},
     { &hf_h225_genericData_item,
-      { "Item", "h225.genericData_item",
+      { "GenericData", "h225.GenericData",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.GenericData", HFILL }},
     { &hf_h225_nonStandard,
@@ -7577,7 +7739,7 @@ void proto_register_h225(void) {
         "h225.NULL", HFILL }},
     { &hf_h225_h248Message,
       { "h248Message", "h225.h248Message",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING", HFILL }},
     { &hf_h225_protocolIdentifier,
       { "protocolIdentifier", "h225.protocolIdentifier",
@@ -7604,7 +7766,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_ClearToken", HFILL }},
     { &hf_h225_tokens_item,
-      { "Item", "h225.tokens_item",
+      { "ClearToken", "h225.ClearToken",
         FT_NONE, BASE_NONE, NULL, 0,
         "h235.ClearToken", HFILL }},
     { &hf_h225_cryptoTokens,
@@ -7612,7 +7774,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CryptoH323Token", HFILL }},
     { &hf_h225_cryptoTokens_item,
-      { "Item", "h225.cryptoTokens_item",
+      { "CryptoH323Token", "h225.CryptoH323Token",
         FT_UINT32, BASE_DEC, VALS(h225_CryptoH323Token_vals), 0,
         "h225.CryptoH323Token", HFILL }},
     { &hf_h225_fastStart,
@@ -7621,18 +7783,18 @@ void proto_register_h225(void) {
         "h225.FastStart", HFILL }},
     { &hf_h225_multipleCalls,
       { "multipleCalls", "h225.multipleCalls",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_maintainConnection,
       { "maintainConnection", "h225.maintainConnection",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_alertingAddress,
       { "alertingAddress", "h225.alertingAddress",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_alertingAddress_item,
-      { "Item", "h225.alertingAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_presentationIndicator,
@@ -7652,7 +7814,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_ServiceControlSession", HFILL }},
     { &hf_h225_serviceControl_item,
-      { "Item", "h225.serviceControl_item",
+      { "ServiceControlSession", "h225.ServiceControlSession",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.ServiceControlSession", HFILL }},
     { &hf_h225_capacity,
@@ -7676,7 +7838,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_connectedAddress_item,
-      { "Item", "h225.connectedAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_circuitInfo,
@@ -7692,7 +7854,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_busyAddress_item,
-      { "Item", "h225.busyAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_noBandwidth,
@@ -7800,7 +7962,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_sourceAddress_item,
-      { "Item", "h225.sourceAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_setup_UUIE_sourceInfo,
@@ -7812,7 +7974,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_destinationAddress_item,
-      { "Item", "h225.destinationAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_destCallSignalAddress,
@@ -7824,7 +7986,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_destExtraCallInfo_item,
-      { "Item", "h225.destExtraCallInfo_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_destExtraCRV,
@@ -7832,12 +7994,12 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallReferenceValue", HFILL }},
     { &hf_h225_destExtraCRV_item,
-      { "Item", "h225.destExtraCRV_item",
+      { "CallReferenceValue", "h225.CallReferenceValue",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.CallReferenceValue", HFILL }},
     { &hf_h225_activeMC,
       { "activeMC", "h225.activeMC",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_conferenceGoal,
       { "conferenceGoal", "h225.conferenceGoal",
@@ -7884,20 +8046,20 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_H245Security", HFILL }},
     { &hf_h225_h245SecurityCapability_item,
-      { "Item", "h225.h245SecurityCapability_item",
+      { "H245Security", "h225.H245Security",
         FT_UINT32, BASE_DEC, VALS(h225_H245Security_vals), 0,
         "h225.H245Security", HFILL }},
     { &hf_h225_FastStart_item,
-      { "Item", "h225.FastStart_item",
+      { "FastStart item", "h225.FastStart_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.FastStart_item", HFILL }},
     { &hf_h225_mediaWaitForConnect,
       { "mediaWaitForConnect", "h225.mediaWaitForConnect",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_canOverlapSend,
       { "canOverlapSend", "h225.canOverlapSend",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_endpointIdentifier,
       { "endpointIdentifier", "h225.endpointIdentifier",
@@ -7920,7 +8082,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, VALS(h225_ScnConnectionAggregation_vals), 0,
         "h225.ScnConnectionAggregation", HFILL }},
     { &hf_h225_Language_item,
-      { "Item", "h225.Language_item",
+      { "Language item", "h225.Language_item",
         FT_STRING, BASE_NONE, NULL, 0,
         "h225.IA5String_SIZE_1_32", HFILL }},
     { &hf_h225_symmetricOperationRequired,
@@ -7932,7 +8094,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_SupportedProtocols", HFILL }},
     { &hf_h225_desiredProtocols_item,
-      { "Item", "h225.desiredProtocols_item",
+      { "SupportedProtocols", "h225.SupportedProtocols",
         FT_UINT32, BASE_DEC, VALS(h225_SupportedProtocols_vals), 0,
         "h225.SupportedProtocols", HFILL }},
     { &hf_h225_neededFeatures,
@@ -7940,7 +8102,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_FeatureDescriptor", HFILL }},
     { &hf_h225_neededFeatures_item,
-      { "Item", "h225.neededFeatures_item",
+      { "FeatureDescriptor", "h225.FeatureDescriptor",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.FeatureDescriptor", HFILL }},
     { &hf_h225_desiredFeatures,
@@ -7948,7 +8110,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_FeatureDescriptor", HFILL }},
     { &hf_h225_desiredFeatures_item,
-      { "Item", "h225.desiredFeatures_item",
+      { "FeatureDescriptor", "h225.FeatureDescriptor",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.FeatureDescriptor", HFILL }},
     { &hf_h225_supportedFeatures,
@@ -7956,11 +8118,11 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_FeatureDescriptor", HFILL }},
     { &hf_h225_supportedFeatures_item,
-      { "Item", "h225.supportedFeatures_item",
+      { "FeatureDescriptor", "h225.FeatureDescriptor",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.FeatureDescriptor", HFILL }},
     { &hf_h225_ParallelH245Control_item,
-      { "Item", "h225.ParallelH245Control_item",
+      { "ParallelH245Control item", "h225.ParallelH245Control_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.ParallelH245Control_item", HFILL }},
     { &hf_h225_parallelH245Control,
@@ -7972,7 +8134,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_ExtendedAliasAddress", HFILL }},
     { &hf_h225_additionalSourceAddresses_item,
-      { "Item", "h225.additionalSourceAddresses_item",
+      { "ExtendedAliasAddress", "h225.ExtendedAliasAddress",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.ExtendedAliasAddress", HFILL }},
     { &hf_h225_hopCount_1_31,
@@ -8052,7 +8214,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_alternativeAliasAddress_item,
-      { "Item", "h225.alternativeAliasAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_facilityReason,
@@ -8064,7 +8226,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_ConferenceList", HFILL }},
     { &hf_h225_conferences_item,
-      { "Item", "h225.conferences_item",
+      { "ConferenceList", "h225.ConferenceList",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.ConferenceList", HFILL }},
     { &hf_h225_conferenceAlias,
@@ -8129,7 +8291,7 @@ void proto_register_h225(void) {
         "h225.T_h245IpSourceRoute", HFILL }},
     { &hf_h225_ip,
       { "ip", "h225.ip",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_4", HFILL }},
     { &hf_h225_port,
       { "port", "h225.port",
@@ -8140,8 +8302,8 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_h245Route", HFILL }},
     { &hf_h225_h245Route_item,
-      { "Item", "h225.route_item",
-        FT_BYTES, BASE_HEX, NULL, 0,
+      { "route item", "h225.route_item",
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_4", HFILL }},
     { &hf_h225_h245Routing,
       { "routing", "h225.routing",
@@ -8161,15 +8323,15 @@ void proto_register_h225(void) {
         "h225.T_h245IpxAddress", HFILL }},
     { &hf_h225_node,
       { "node", "h225.node",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_6", HFILL }},
     { &hf_h225_netnum,
       { "netnum", "h225.netnum",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_4", HFILL }},
     { &hf_h225_h245IpxPort,
       { "port", "h225.port",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_2", HFILL }},
     { &hf_h225_h245Ip6Address,
       { "ip6Address", "h225.ip6Address",
@@ -8181,11 +8343,11 @@ void proto_register_h225(void) {
         "h225.OCTET_STRING_SIZE_16", HFILL }},
     { &hf_h225_netBios,
       { "netBios", "h225.netBios",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_16", HFILL }},
     { &hf_h225_nsap,
       { "nsap", "h225.nsap",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1_20", HFILL }},
     { &hf_h225_nonStandardAddress,
       { "nonStandardAddress", "h225.nonStandardAddress",
@@ -8209,7 +8371,7 @@ void proto_register_h225(void) {
         "h225.T_ipSourceRoute", HFILL }},
     { &hf_h225_src_route_ipV4,
       { "ip", "h225.ip",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_4", HFILL }},
     { &hf_h225_ipV4_src_port,
       { "port", "h225.port",
@@ -8220,8 +8382,8 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_route", HFILL }},
     { &hf_h225_route_item,
-      { "Item", "h225.route_item",
-        FT_BYTES, BASE_HEX, NULL, 0,
+      { "route item", "h225.route_item",
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_4", HFILL }},
     { &hf_h225_routing,
       { "routing", "h225.routing",
@@ -8233,7 +8395,7 @@ void proto_register_h225(void) {
         "h225.T_ipxAddress", HFILL }},
     { &hf_h225_ipx_port,
       { "port", "h225.port",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_2", HFILL }},
     { &hf_h225_ip6Address,
       { "ip6Address", "h225.ip6Address",
@@ -8269,22 +8431,22 @@ void proto_register_h225(void) {
         "h225.TerminalInfo", HFILL }},
     { &hf_h225_mc,
       { "mc", "h225.mc",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_undefinedNode,
       { "undefinedNode", "h225.undefinedNode",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_set,
       { "set", "h225.set",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.BIT_STRING_SIZE_32", HFILL }},
     { &hf_h225_supportedTunnelledProtocols,
       { "supportedTunnelledProtocols", "h225.supportedTunnelledProtocols",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TunnelledProtocol", HFILL }},
     { &hf_h225_supportedTunnelledProtocols_item,
-      { "Item", "h225.supportedTunnelledProtocols_item",
+      { "TunnelledProtocol", "h225.TunnelledProtocol",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.TunnelledProtocol", HFILL }},
     { &hf_h225_protocol,
@@ -8292,7 +8454,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_SupportedProtocols", HFILL }},
     { &hf_h225_protocol_item,
-      { "Item", "h225.protocol_item",
+      { "SupportedProtocols", "h225.SupportedProtocols",
         FT_UINT32, BASE_DEC, VALS(h225_SupportedProtocols_vals), 0,
         "h225.SupportedProtocols", HFILL }},
     { &hf_h225_h310,
@@ -8344,7 +8506,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_DataRate", HFILL }},
     { &hf_h225_dataRatesSupported_item,
-      { "Item", "h225.dataRatesSupported_item",
+      { "DataRate", "h225.DataRate",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.DataRate", HFILL }},
     { &hf_h225_supportedPrefixes,
@@ -8352,7 +8514,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_SupportedPrefix", HFILL }},
     { &hf_h225_supportedPrefixes_item,
-      { "Item", "h225.supportedPrefixes_item",
+      { "SupportedPrefix", "h225.SupportedPrefix",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.SupportedPrefix", HFILL }},
     { &hf_h225_t38FaxProtocol,
@@ -8369,11 +8531,11 @@ void proto_register_h225(void) {
         "h225.H221NonStandard", HFILL }},
     { &hf_h225_productId,
       { "productId", "h225.productId",
-        FT_STRING, BASE_HEX, NULL, 0,
+        FT_STRING, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1_256", HFILL }},
     { &hf_h225_versionId,
       { "versionId", "h225.versionId",
-        FT_STRING, BASE_HEX, NULL, 0,
+        FT_STRING, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1_256", HFILL }},
     { &hf_h225_enterpriseNumber,
       { "enterpriseNumber", "h225.enterpriseNumber",
@@ -8562,27 +8724,27 @@ void proto_register_h225(void) {
     { &hf_h225_imsi,
       { "imsi", "h225.imsi",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_min,
       { "min", "h225.min",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_mdn,
       { "mdn", "h225.mdn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_msisdn,
       { "msisdn", "h225.msisdn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_esn,
       { "esn", "h225.esn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_16", HFILL }},
     { &hf_h225_mscid,
       { "mscid", "h225.mscid",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_system_id,
       { "system-id", "h225.system_id",
         FT_UINT32, BASE_DEC, VALS(h225_T_system_id_vals), 0,
@@ -8590,47 +8752,47 @@ void proto_register_h225(void) {
     { &hf_h225_sid,
       { "sid", "h225.sid",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_1_4", HFILL }},
     { &hf_h225_mid,
       { "mid", "h225.mid",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_1_4", HFILL }},
     { &hf_h225_systemMyTypeCode,
       { "systemMyTypeCode", "h225.systemMyTypeCode",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1", HFILL }},
     { &hf_h225_systemAccessType,
       { "systemAccessType", "h225.systemAccessType",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1", HFILL }},
     { &hf_h225_qualificationInformationCode,
       { "qualificationInformationCode", "h225.qualificationInformationCode",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1", HFILL }},
     { &hf_h225_sesn,
       { "sesn", "h225.sesn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_16", HFILL }},
     { &hf_h225_soc,
       { "soc", "h225.soc",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_3_16", HFILL }},
     { &hf_h225_tmsi,
       { "tmsi", "h225.tmsi",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_1_4", HFILL }},
     { &hf_h225_imei,
       { "imei", "h225.imei",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_15_16", HFILL }},
     { &hf_h225_hplmn,
       { "hplmn", "h225.hplmn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_1_4", HFILL }},
     { &hf_h225_vplmn,
       { "vplmn", "h225.vplmn",
         FT_STRING, BASE_NONE, NULL, 0,
-        "h225.TBCD_STRING", HFILL }},
+        "h225.TBCD_STRING_SIZE_1_4", HFILL }},
     { &hf_h225_isupE164Number,
       { "e164Number", "h225.e164Number",
         FT_NONE, BASE_NONE, NULL, 0,
@@ -8680,7 +8842,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_aliasAddress_item,
-      { "Item", "h225.aliasAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_callSignalAddress,
@@ -8688,7 +8850,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TransportAddress", HFILL }},
     { &hf_h225_callSignalAddress_item,
-      { "Item", "h225.callSignalAddress_item",
+      { "TransportAddress", "h225.TransportAddress",
         FT_UINT32, BASE_DEC, VALS(h225_TransportAddress_vals), 0,
         "h225.TransportAddress", HFILL }},
     { &hf_h225_rasAddress,
@@ -8696,7 +8858,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TransportAddress", HFILL }},
     { &hf_h225_rasAddress_item,
-      { "Item", "h225.rasAddress_item",
+      { "TransportAddress", "h225.TransportAddress",
         FT_UINT32, BASE_DEC, VALS(h225_TransportAddress_vals), 0,
         "h225.TransportAddress", HFILL }},
     { &hf_h225_endpointType,
@@ -8712,7 +8874,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_remoteExtensionAddress_item,
-      { "Item", "h225.remoteExtensionAddress_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_alternateTransportAddresses,
@@ -8724,7 +8886,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TransportAddress", HFILL }},
     { &hf_h225_annexE_item,
-      { "Item", "h225.annexE_item",
+      { "TransportAddress", "h225.TransportAddress",
         FT_UINT32, BASE_DEC, VALS(h225_TransportAddress_vals), 0,
         "h225.TransportAddress", HFILL }},
     { &hf_h225_sctp,
@@ -8732,7 +8894,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TransportAddress", HFILL }},
     { &hf_h225_sctp_item,
-      { "Item", "h225.sctp_item",
+      { "TransportAddress", "h225.TransportAddress",
         FT_UINT32, BASE_DEC, VALS(h225_TransportAddress_vals), 0,
         "h225.TransportAddress", HFILL }},
     { &hf_h225_tcp,
@@ -8757,19 +8919,19 @@ void proto_register_h225(void) {
         "h225.GatekeeperIdentifier", HFILL }},
     { &hf_h225_needToRegister,
       { "needToRegister", "h225.needToRegister",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_alternateGatekeeper,
       { "alternateGatekeeper", "h225.alternateGatekeeper",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AlternateGK", HFILL }},
     { &hf_h225_alternateGatekeeper_item,
-      { "Item", "h225.alternateGatekeeper_item",
+      { "AlternateGK", "h225.AlternateGK",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.AlternateGK", HFILL }},
     { &hf_h225_altGKisPermanent,
       { "altGKisPermanent", "h225.altGKisPermanent",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_default,
       { "default", "h225.default",
@@ -8865,31 +9027,31 @@ void proto_register_h225(void) {
         "h225.SecurityCapabilities", HFILL }},
     { &hf_h225_q932Full,
       { "q932Full", "h225.q932Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q951Full,
       { "q951Full", "h225.q951Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q952Full,
       { "q952Full", "h225.q952Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q953Full,
       { "q953Full", "h225.q953Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q955Full,
       { "q955Full", "h225.q955Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q956Full,
       { "q956Full", "h225.q956Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q957Full,
       { "q957Full", "h225.q957Full",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_q954Info,
       { "q954Info", "h225.q954Info",
@@ -8897,11 +9059,11 @@ void proto_register_h225(void) {
         "h225.Q954Details", HFILL }},
     { &hf_h225_conferenceCalling,
       { "conferenceCalling", "h225.conferenceCalling",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_threePartyService,
       { "threePartyService", "h225.threePartyService",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_guid,
       { "guid", "h225.guid",
@@ -8945,7 +9107,7 @@ void proto_register_h225(void) {
         "h225.OBJECT_IDENTIFIER", HFILL }},
     { &hf_h225_icv,
       { "icv", "h225.icv",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.BIT_STRING", HFILL }},
     { &hf_h225_cryptoEPPwdHash,
       { "cryptoEPPwdHash", "h225.cryptoEPPwdHash",
@@ -8957,7 +9119,7 @@ void proto_register_h225(void) {
         "h225.AliasAddress", HFILL }},
     { &hf_h225_timeStamp,
       { "timeStamp", "h225.timeStamp",
-        FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0,
+        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
         "h235.TimeStamp", HFILL }},
     { &hf_h225_token,
       { "token", "h225.token",
@@ -9017,7 +9179,7 @@ void proto_register_h225(void) {
         "h225.AliasAddress", HFILL }},
     { &hf_h225_canReportCallCapacity,
       { "canReportCallCapacity", "h225.canReportCallCapacity",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_capacityReportingSpecification_when,
       { "when", "h225.when",
@@ -9044,7 +9206,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_voiceGwCallsAvailable_item,
-      { "Item", "h225.voiceGwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h310GwCallsAvailable,
@@ -9052,7 +9214,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h310GwCallsAvailable_item,
-      { "Item", "h225.h310GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h320GwCallsAvailable,
@@ -9060,7 +9222,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h320GwCallsAvailable_item,
-      { "Item", "h225.h320GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h321GwCallsAvailable,
@@ -9068,7 +9230,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h321GwCallsAvailable_item,
-      { "Item", "h225.h321GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h322GwCallsAvailable,
@@ -9076,7 +9238,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h322GwCallsAvailable_item,
-      { "Item", "h225.h322GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h323GwCallsAvailable,
@@ -9084,7 +9246,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h323GwCallsAvailable_item,
-      { "Item", "h225.h323GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_h324GwCallsAvailable,
@@ -9092,7 +9254,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_h324GwCallsAvailable_item,
-      { "Item", "h225.h324GwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_t120OnlyGwCallsAvailable,
@@ -9100,7 +9262,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_t120OnlyGwCallsAvailable_item,
-      { "Item", "h225.t120OnlyGwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_t38FaxAnnexbOnlyGwCallsAvailable,
@@ -9108,7 +9270,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_t38FaxAnnexbOnlyGwCallsAvailable_item,
-      { "Item", "h225.t38FaxAnnexbOnlyGwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_terminalCallsAvailable,
@@ -9116,7 +9278,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_terminalCallsAvailable_item,
-      { "Item", "h225.terminalCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_mcuCallsAvailable,
@@ -9124,7 +9286,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_mcuCallsAvailable_item,
-      { "Item", "h225.mcuCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_sipGwCallsAvailable,
@@ -9132,7 +9294,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_CallsAvailable", HFILL }},
     { &hf_h225_sipGwCallsAvailable_item,
-      { "Item", "h225.sipGwCallsAvailable_item",
+      { "CallsAvailable", "h225.CallsAvailable",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.CallsAvailable", HFILL }},
     { &hf_h225_calls,
@@ -9168,24 +9330,24 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_cic_2_4", HFILL }},
     { &hf_h225_cic_2_4_item,
-      { "Item", "h225.cic_item",
-        FT_BYTES, BASE_HEX, NULL, 0,
+      { "cic item", "h225.cic_item",
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_2_4", HFILL }},
     { &hf_h225_pointCode,
       { "pointCode", "h225.pointCode",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_2_5", HFILL }},
     { &hf_h225_member,
       { "member", "h225.member",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_member", HFILL }},
     { &hf_h225_member_item,
-      { "Item", "h225.member_item",
+      { "member item", "h225.member_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.INTEGER_0_65535", HFILL }},
     { &hf_h225_carrierIdentificationCode,
       { "carrierIdentificationCode", "h225.carrierIdentificationCode",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_3_4", HFILL }},
     { &hf_h225_carrierName,
       { "carrierName", "h225.carrierName",
@@ -9197,7 +9359,7 @@ void proto_register_h225(void) {
         "h225.IA5String_SIZE_0_512", HFILL }},
     { &hf_h225_signal,
       { "signal", "h225.signal",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.H248SignalsDescriptor", HFILL }},
     { &hf_h225_callCreditServiceControl,
       { "callCreditServiceControl", "h225.callCreditServiceControl",
@@ -9232,7 +9394,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_NonStandardParameter", HFILL }},
     { &hf_h225_nonStandardUsageTypes_item,
-      { "Item", "h225.nonStandardUsageTypes_item",
+      { "NonStandardParameter", "h225.NonStandardParameter",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.NonStandardParameter", HFILL }},
     { &hf_h225_startTime,
@@ -9284,32 +9446,32 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_NonStandardParameter", HFILL }},
     { &hf_h225_nonStandardUsageFields_item,
-      { "Item", "h225.nonStandardUsageFields_item",
+      { "NonStandardParameter", "h225.NonStandardParameter",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.NonStandardParameter", HFILL }},
     { &hf_h225_alertingTime,
       { "alertingTime", "h225.alertingTime",
-        FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0,
+        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
         "h235.TimeStamp", HFILL }},
     { &hf_h225_connectTime,
       { "connectTime", "h225.connectTime",
-        FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0,
+        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
         "h235.TimeStamp", HFILL }},
     { &hf_h225_endTime,
       { "endTime", "h225.endTime",
-        FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0,
+        FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0,
         "h235.TimeStamp", HFILL }},
     { &hf_h225_releaseCompleteCauseIE,
       { "releaseCompleteCauseIE", "h225.releaseCompleteCauseIE",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING_SIZE_2_32", HFILL }},
     { &hf_h225_sender,
       { "sender", "h225.sender",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_multicast,
       { "multicast", "h225.multicast",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_bandwidth,
       { "bandwidth", "h225.bandwidth",
@@ -9321,11 +9483,11 @@ void proto_register_h225(void) {
         "h225.TransportChannelInfo", HFILL }},
     { &hf_h225_canDisplayAmountString,
       { "canDisplayAmountString", "h225.canDisplayAmountString",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_canEnforceDurationLimit,
       { "canEnforceDurationLimit", "h225.canEnforceDurationLimit",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_amountString,
       { "amountString", "h225.amountString",
@@ -9349,7 +9511,7 @@ void proto_register_h225(void) {
         "h225.INTEGER_1_4294967295", HFILL }},
     { &hf_h225_enforceCallDurationLimit,
       { "enforceCallDurationLimit", "h225.enforceCallDurationLimit",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_callStartingPoint,
       { "callStartingPoint", "h225.callStartingPoint",
@@ -9362,19 +9524,19 @@ void proto_register_h225(void) {
     { &hf_h225_parameters,
       { "parameters", "h225.parameters",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "h225.SEQUENCE_SIZE_1_512_OF_EnumeratedParameter", HFILL }},
+        "h225.T_parameters", HFILL }},
     { &hf_h225_parameters_item,
-      { "Item", "h225.parameters_item",
+      { "parameters item", "h225.parameters_item",
         FT_NONE, BASE_NONE, NULL, 0,
-        "h225.EnumeratedParameter", HFILL }},
+        "h225.T_parameters_item", HFILL }},
     { &hf_h225_standard,
       { "standard", "h225.standard",
         FT_UINT32, BASE_DEC, NULL, 0,
-        "h225.INTEGER_0_16383_", HFILL }},
+        "h225.T_standard", HFILL }},
     { &hf_h225_oid,
       { "oid", "h225.oid",
         FT_OID, BASE_NONE, NULL, 0,
-        "h225.OBJECT_IDENTIFIER", HFILL }},
+        "h225.T_oid", HFILL }},
     { &hf_h225_genericIdentifier_nonStandard,
       { "nonStandard", "h225.nonStandard",
         FT_GUID, BASE_NONE, NULL, 0,
@@ -9385,7 +9547,7 @@ void proto_register_h225(void) {
         "h225.Content", HFILL }},
     { &hf_h225_raw,
       { "raw", "h225.raw",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING", HFILL }},
     { &hf_h225_text,
       { "text", "h225.text",
@@ -9397,7 +9559,7 @@ void proto_register_h225(void) {
         "h225.BMPString", HFILL }},
     { &hf_h225_bool,
       { "bool", "h225.bool",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_number8,
       { "number8", "h225.number8",
@@ -9420,7 +9582,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_SIZE_1_512_OF_EnumeratedParameter", HFILL }},
     { &hf_h225_compound_item,
-      { "Item", "h225.compound_item",
+      { "EnumeratedParameter", "h225.EnumeratedParameter",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.EnumeratedParameter", HFILL }},
     { &hf_h225_nested,
@@ -9428,12 +9590,12 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_SIZE_1_16_OF_GenericData", HFILL }},
     { &hf_h225_nested_item,
-      { "Item", "h225.nested_item",
+      { "GenericData", "h225.GenericData",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.GenericData", HFILL }},
     { &hf_h225_replacementFeatureSet,
       { "replacementFeatureSet", "h225.replacementFeatureSet",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_sendAddress,
       { "sendAddress", "h225.sendAddress",
@@ -9468,7 +9630,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_associatedSessionIds", HFILL }},
     { &hf_h225_associatedSessionIds_item,
-      { "Item", "h225.associatedSessionIds_item",
+      { "associatedSessionIds item", "h225.associatedSessionIds_item",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.INTEGER_1_255", HFILL }},
     { &hf_h225_multicast_flg,
@@ -9616,7 +9778,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AdmissionConfirm", HFILL }},
     { &hf_h225_admissionConfirmSequence_item,
-      { "Item", "h225.admissionConfirmSequence_item",
+      { "AdmissionConfirm", "h225.AdmissionConfirm",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.AdmissionConfirm", HFILL }},
     { &hf_h225_requestSeqNum,
@@ -9632,7 +9794,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_endpointAlias_item,
-      { "Item", "h225.endpointAlias_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_alternateEndpoints,
@@ -9640,7 +9802,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_Endpoint", HFILL }},
     { &hf_h225_alternateEndpoints_item,
-      { "Item", "h225.alternateEndpoints_item",
+      { "Endpoint", "h225.Endpoint",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.Endpoint", HFILL }},
     { &hf_h225_authenticationCapability,
@@ -9648,7 +9810,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AuthenticationMechanism", HFILL }},
     { &hf_h225_authenticationCapability_item,
-      { "Item", "h225.authenticationCapability_item",
+      { "AuthenticationMechanism", "h225.AuthenticationMechanism",
         FT_UINT32, BASE_DEC, VALS(h235_AuthenticationMechanism_vals), 0,
         "h235.AuthenticationMechanism", HFILL }},
     { &hf_h225_algorithmOIDs,
@@ -9656,7 +9818,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_algorithmOIDs", HFILL }},
     { &hf_h225_algorithmOIDs_item,
-      { "Item", "h225.algorithmOIDs_item",
+      { "algorithmOIDs item", "h225.algorithmOIDs_item",
         FT_OID, BASE_NONE, NULL, 0,
         "h225.OBJECT_IDENTIFIER", HFILL }},
     { &hf_h225_integrity,
@@ -9664,7 +9826,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_IntegrityMechanism", HFILL }},
     { &hf_h225_integrity_item,
-      { "Item", "h225.integrity_item",
+      { "IntegrityMechanism", "h225.IntegrityMechanism",
         FT_UINT32, BASE_DEC, VALS(h225_IntegrityMechanism_vals), 0,
         "h225.IntegrityMechanism", HFILL }},
     { &hf_h225_integrityCheckValue,
@@ -9677,7 +9839,7 @@ void proto_register_h225(void) {
         "h225.NULL", HFILL }},
     { &hf_h225_supportsAssignedGK,
       { "supportsAssignedGK", "h225.supportsAssignedGK",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_assignedGatekeeper,
       { "assignedGatekeeper", "h225.assignedGatekeeper",
@@ -9721,7 +9883,7 @@ void proto_register_h225(void) {
         "h225.SecurityErrors", HFILL }},
     { &hf_h225_discoveryComplete,
       { "discoveryComplete", "h225.discoveryComplete",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_terminalType,
       { "terminalType", "h225.terminalType",
@@ -9732,7 +9894,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_terminalAlias_item,
-      { "Item", "h225.terminalAlias_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_endpointVendor,
@@ -9745,11 +9907,11 @@ void proto_register_h225(void) {
         "h225.TimeToLive", HFILL }},
     { &hf_h225_keepAlive,
       { "keepAlive", "h225.keepAlive",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_willSupplyUUIEs,
       { "willSupplyUUIEs", "h225.willSupplyUUIEs",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_additiveRegistration,
       { "additiveRegistration", "h225.additiveRegistration",
@@ -9760,7 +9922,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AddressPattern", HFILL }},
     { &hf_h225_terminalAliasPattern_item,
-      { "Item", "h225.terminalAliasPattern_item",
+      { "AddressPattern", "h225.AddressPattern",
         FT_UINT32, BASE_DEC, VALS(h225_AddressPattern_vals), 0,
         "h225.AddressPattern", HFILL }},
     { &hf_h225_usageReportingCapability,
@@ -9772,8 +9934,8 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_H248PackagesDescriptor", HFILL }},
     { &hf_h225_supportedH248Packages_item,
-      { "Item", "h225.supportedH248Packages_item",
-        FT_BYTES, BASE_HEX, NULL, 0,
+      { "H248PackagesDescriptor", "h225.H248PackagesDescriptor",
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.H248PackagesDescriptor", HFILL }},
     { &hf_h225_callCreditCapability,
       { "callCreditCapability", "h225.callCreditCapability",
@@ -9797,7 +9959,7 @@ void proto_register_h225(void) {
         "h225.TransportQOS", HFILL }},
     { &hf_h225_willRespondToIRR,
       { "willRespondToIRR", "h225.willRespondToIRR",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_preGrantedARQ,
       { "preGrantedARQ", "h225.preGrantedARQ",
@@ -9805,19 +9967,19 @@ void proto_register_h225(void) {
         "h225.T_preGrantedARQ", HFILL }},
     { &hf_h225_makeCall,
       { "makeCall", "h225.makeCall",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_useGKCallSignalAddressToMakeCall,
       { "useGKCallSignalAddressToMakeCall", "h225.useGKCallSignalAddressToMakeCall",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_answerCall,
       { "answerCall", "h225.answerCall",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_useGKCallSignalAddressToAnswer,
       { "useGKCallSignalAddressToAnswer", "h225.useGKCallSignalAddressToAnswer",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_irrFrequencyInCall,
       { "irrFrequencyInCall", "h225.irrFrequencyInCall",
@@ -9840,7 +10002,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_RasUsageSpecification", HFILL }},
     { &hf_h225_usageSpec_item,
-      { "Item", "h225.usageSpec_item",
+      { "RasUsageSpecification", "h225.RasUsageSpecification",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.RasUsageSpecification", HFILL }},
     { &hf_h225_featureServerAlias,
@@ -9872,7 +10034,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_duplicateAlias_item,
-      { "Item", "h225.duplicateAlias_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_invalidTerminalType,
@@ -9920,7 +10082,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AddressPattern", HFILL }},
     { &hf_h225_endpointAliasPattern_item,
-      { "Item", "h225.endpointAliasPattern_item",
+      { "AddressPattern", "h225.AddressPattern",
         FT_UINT32, BASE_DEC, VALS(h225_AddressPattern_vals), 0,
         "h225.AddressPattern", HFILL }},
     { &hf_h225_reregistrationRequired,
@@ -9960,7 +10122,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, VALS(h225_CallModel_vals), 0,
         "h225.CallModel", HFILL }},
     { &hf_h225_DestinationInfo_item,
-      { "Item", "h225.DestinationInfo_item",
+      { "DestinationInfo item", "h225.DestinationInfo_item",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.DestinationInfo_item", HFILL }},
     { &hf_h225_destinationInfo,
@@ -9972,7 +10134,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_srcInfo_item,
-      { "Item", "h225.srcInfo_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_srcCallSignalAddress,
@@ -9989,14 +10151,14 @@ void proto_register_h225(void) {
         "h225.CallReferenceValue", HFILL }},
     { &hf_h225_canMapAlias,
       { "canMapAlias", "h225.canMapAlias",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_srcAlternatives,
       { "srcAlternatives", "h225.srcAlternatives",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_Endpoint", HFILL }},
     { &hf_h225_srcAlternatives_item,
-      { "Item", "h225.srcAlternatives_item",
+      { "Endpoint", "h225.Endpoint",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.Endpoint", HFILL }},
     { &hf_h225_destAlternatives,
@@ -10004,7 +10166,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_Endpoint", HFILL }},
     { &hf_h225_destAlternatives_item,
-      { "Item", "h225.destAlternatives_item",
+      { "Endpoint", "h225.Endpoint",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.Endpoint", HFILL }},
     { &hf_h225_gatewayDataRate,
@@ -10017,7 +10179,7 @@ void proto_register_h225(void) {
         "h225.TunnelledProtocol", HFILL }},
     { &hf_h225_canMapSrcAlias,
       { "canMapSrcAlias", "h225.canMapSrcAlias",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_pointToPoint,
       { "pointToPoint", "h225.pointToPoint",
@@ -10060,7 +10222,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_SIZE_1_256_OF_QOSCapability", HFILL }},
     { &hf_h225_qOSCapabilities_item,
-      { "Item", "h225.qOSCapabilities_item",
+      { "QOSCapability", "h225.QOSCapability",
         FT_NONE, BASE_NONE, NULL, 0,
         "h245.QOSCapability", HFILL }},
     { &hf_h225_irrFrequency,
@@ -10080,7 +10242,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_SupportedProtocols", HFILL }},
     { &hf_h225_supportedProtocols_item,
-      { "Item", "h225.supportedProtocols_item",
+      { "SupportedProtocols", "h225.SupportedProtocols",
         FT_UINT32, BASE_DEC, VALS(h225_SupportedProtocols_vals), 0,
         "h225.SupportedProtocols", HFILL }},
     { &hf_h225_modifiedSrcInfo,
@@ -10088,60 +10250,60 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_modifiedSrcInfo_item,
-      { "Item", "h225.modifiedSrcInfo_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_setup_bool,
       { "setup", "h225.setup",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_callProceeding_flg,
       { "callProceeding", "h225.callProceeding",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_connect_bool,
       { "connect", "h225.connect",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_alerting_bool,
       { "alerting", "h225.alerting",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_information_bool,
       { "information", "h225.information",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_releaseComplete_bool,
       { "releaseComplete", "h225.releaseComplete",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_facility_bool,
       { "facility", "h225.facility",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_progress_bool,
       { "progress", "h225.progress",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_empty,
       { "empty", "h225.empty",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_status_bool,
       { "status", "h225.status",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_statusInquiry_bool,
       { "statusInquiry", "h225.statusInquiry",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_setupAcknowledge_bool,
       { "setupAcknowledge", "h225.setupAcknowledge",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_notify_bool,
       { "notify", "h225.notify",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_rejectReason,
       { "rejectReason", "h225.rejectReason",
@@ -10176,7 +10338,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_PartyNumber", HFILL }},
     { &hf_h225_routeCallToSCN_item,
-      { "Item", "h225.routeCallToSCN_item",
+      { "PartyNumber", "h225.PartyNumber",
         FT_UINT32, BASE_DEC, VALS(h225_PartyNumber_vals), 0,
         "h225.PartyNumber", HFILL }},
     { &hf_h225_exceedsCallCapacity,
@@ -10201,7 +10363,7 @@ void proto_register_h225(void) {
         "h225.NULL", HFILL }},
     { &hf_h225_answeredCall,
       { "answeredCall", "h225.answeredCall",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_usageInformation,
       { "usageInformation", "h225.usageInformation",
@@ -10212,7 +10374,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_BandwidthDetails", HFILL }},
     { &hf_h225_bandwidthDetails_item,
-      { "Item", "h225.bandwidthDetails_item",
+      { "BandwidthDetails", "h225.BandwidthDetails",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.BandwidthDetails", HFILL }},
     { &hf_h225_bandRejectReason,
@@ -10244,7 +10406,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_sourceInfo_item,
-      { "Item", "h225.sourceInfo_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_hopCount,
@@ -10256,7 +10418,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_AliasAddress", HFILL }},
     { &hf_h225_sourceEndpointInfo_item,
-      { "Item", "h225.sourceEndpointInfo_item",
+      { "AliasAddress", "h225.AliasAddress",
         FT_UINT32, BASE_DEC, VALS(AliasAddress_vals), 0,
         "h225.AliasAddress", HFILL }},
     { &hf_h225_locationConfirm_callSignalAddress,
@@ -10280,7 +10442,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_PartyNumber", HFILL }},
     { &hf_h225_routeCalltoSCN_item,
-      { "Item", "h225.routeCalltoSCN_item",
+      { "PartyNumber", "h225.PartyNumber",
         FT_UINT32, BASE_DEC, VALS(h225_PartyNumber_vals), 0,
         "h225.PartyNumber", HFILL }},
     { &hf_h225_disengageReason,
@@ -10332,19 +10494,19 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_perCallInfo", HFILL }},
     { &hf_h225_perCallInfo_item,
-      { "Item", "h225.perCallInfo_item",
+      { "perCallInfo item", "h225.perCallInfo_item",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.T_perCallInfo_item", HFILL }},
     { &hf_h225_originator,
       { "originator", "h225.originator",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_audio,
       { "audio", "h225.audio",
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_RTPSession", HFILL }},
     { &hf_h225_audio_item,
-      { "Item", "h225.audio_item",
+      { "RTPSession", "h225.RTPSession",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.RTPSession", HFILL }},
     { &hf_h225_video,
@@ -10352,7 +10514,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_RTPSession", HFILL }},
     { &hf_h225_video_item,
-      { "Item", "h225.video_item",
+      { "RTPSession", "h225.RTPSession",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.RTPSession", HFILL }},
     { &hf_h225_data,
@@ -10360,7 +10522,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_TransportChannelInfo", HFILL }},
     { &hf_h225_data_item,
-      { "Item", "h225.data_item",
+      { "TransportChannelInfo", "h225.TransportChannelInfo",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.TransportChannelInfo", HFILL }},
     { &hf_h225_h245,
@@ -10376,7 +10538,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_ConferenceIdentifier", HFILL }},
     { &hf_h225_substituteConfIDs_item,
-      { "Item", "h225.substituteConfIDs_item",
+      { "ConferenceIdentifier", "h225.ConferenceIdentifier",
         FT_GUID, BASE_NONE, NULL, 0,
         "h225.ConferenceIdentifier", HFILL }},
     { &hf_h225_pdu,
@@ -10384,7 +10546,7 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.T_pdu", HFILL }},
     { &hf_h225_pdu_item,
-      { "Item", "h225.pdu_item",
+      { "pdu item", "h225.pdu_item",
         FT_NONE, BASE_NONE, NULL, 0,
         "h225.T_pdu_item", HFILL }},
     { &hf_h225_h323pdu,
@@ -10393,11 +10555,11 @@ void proto_register_h225(void) {
         "h225.H323_UU_PDU", HFILL }},
     { &hf_h225_sent,
       { "sent", "h225.sent",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_needResponse,
       { "needResponse", "h225.needResponse",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_irrStatus,
       { "irrStatus", "h225.irrStatus",
@@ -10405,7 +10567,7 @@ void proto_register_h225(void) {
         "h225.InfoRequestResponseStatus", HFILL }},
     { &hf_h225_unsolicited,
       { "unsolicited", "h225.unsolicited",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_complete,
       { "complete", "h225.complete",
@@ -10429,7 +10591,7 @@ void proto_register_h225(void) {
         "h225.InfoRequestNakReason", HFILL }},
     { &hf_h225_messageNotUnderstood,
       { "messageNotUnderstood", "h225.messageNotUnderstood",
-        FT_BYTES, BASE_HEX, NULL, 0,
+        FT_BYTES, BASE_NONE, NULL, 0,
         "h225.OCTET_STRING", HFILL }},
     { &hf_h225_delay,
       { "delay", "h225.delay",
@@ -10440,12 +10602,12 @@ void proto_register_h225(void) {
         FT_UINT32, BASE_DEC, NULL, 0,
         "h225.SEQUENCE_OF_SupportedProtocols", HFILL }},
     { &hf_h225_protocols_item,
-      { "Item", "h225.protocols_item",
+      { "SupportedProtocols", "h225.SupportedProtocols",
         FT_UINT32, BASE_DEC, VALS(h225_SupportedProtocols_vals), 0,
         "h225.SupportedProtocols", HFILL }},
     { &hf_h225_almostOutOfResources,
       { "almostOutOfResources", "h225.almostOutOfResources",
-        FT_BOOLEAN, 8, NULL, 0,
+        FT_BOOLEAN, BASE_NONE, NULL, 0,
         "h225.BOOLEAN", HFILL }},
     { &hf_h225_callSpecific,
       { "callSpecific", "h225.callSpecific",
@@ -10473,7 +10635,7 @@ void proto_register_h225(void) {
         "h225.NULL", HFILL }},
 
 /*--- End of included file: packet-h225-hfarr.c ---*/
-#line 254 "packet-h225-template.c"
+#line 241 "packet-h225-template.c"
   };
 
   /* List of subtrees */
@@ -10638,10 +10800,11 @@ void proto_register_h225(void) {
     &ett_h225_T_billingMode,
     &ett_h225_CallCreditServiceControl_callStartingPoint,
     &ett_h225_GenericData,
-    &ett_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter,
+    &ett_h225_T_parameters,
     &ett_h225_GenericIdentifier,
     &ett_h225_EnumeratedParameter,
     &ett_h225_Content,
+    &ett_h225_SEQUENCE_SIZE_1_512_OF_EnumeratedParameter,
     &ett_h225_SEQUENCE_SIZE_1_16_OF_GenericData,
     &ett_h225_FeatureSet,
     &ett_h225_TransportChannelInfo,
@@ -10721,7 +10884,7 @@ void proto_register_h225(void) {
     &ett_h225_T_result,
 
 /*--- End of included file: packet-h225-ettarr.c ---*/
-#line 260 "packet-h225-template.c"
+#line 247 "packet-h225-template.c"
   };
   module_t *h225_module;
 
@@ -10752,16 +10915,23 @@ void proto_register_h225(void) {
 
   new_register_dissector("h225", dissect_h225_H323UserInformation, proto_h225);
   new_register_dissector("h323ui",dissect_h225_H323UserInformation, proto_h225);
+  new_register_dissector("h225.ras", dissect_h225_h225_RasMessage, proto_h225);
 
   nsp_object_dissector_table = register_dissector_table("h225.nsp.object", "H.225 NonStandardParameter (object)", FT_STRING, BASE_NONE);
   nsp_h221_dissector_table = register_dissector_table("h225.nsp.h221", "H.225 NonStandardParameter (h221)", FT_UINT32, BASE_HEX);
   tp_dissector_table = register_dissector_table("h225.tp", "H.225 TunnelledProtocol", FT_STRING, BASE_NONE);
+  gef_name_dissector_table = register_dissector_table("h225.gef.name", "H.225 Generic Extensible Framework (names)", FT_STRING, BASE_NONE);
+  gef_content_dissector_table = register_dissector_table("h225.gef.content", "H.225 Generic Extensible Framework", FT_STRING, BASE_NONE);
 
   register_init_routine(&h225_init_routine);
   h225_tap = register_tap("h225");
-  add_oid_str_name("0.0.8.2250.0.2","itu-t(0) recommendation(0) h(8) h225-0(2250) version(0) 2");
-  add_oid_str_name("0.0.8.2250.0.4","itu-t(0) recommendation(0) h(8) h225-0(2250) version(0) 4");
 
+  oid_add_from_string("Version 1","0.0.8.2250.0.1");
+  oid_add_from_string("Version 2","0.0.8.2250.0.2");
+  oid_add_from_string("Version 3","0.0.8.2250.0.3");
+  oid_add_from_string("Version 4","0.0.8.2250.0.4");
+  oid_add_from_string("Version 5","0.0.8.2250.0.5");
+  oid_add_from_string("Version 6","0.0.8.2250.0.6");
 
 }
 
@@ -10771,27 +10941,25 @@ void
 proto_reg_handoff_h225(void)
 {
        static gboolean h225_prefs_initialized = FALSE;
+       static dissector_handle_t h225ras_handle;
+       static guint saved_h225_tls_port;
+
+       if (!h225_prefs_initialized) {
+               h225ras_handle=find_dissector("h225.ras");
+               dissector_add("udp.port", UDP_PORT_RAS1, h225ras_handle);
+               dissector_add("udp.port", UDP_PORT_RAS2, h225ras_handle);
+
+               h245_handle = find_dissector("h245");
+               h245dg_handle = find_dissector("h245dg");
+               h4501_handle = find_dissector("h4501");
+               data_handle = find_dissector("data");
+               h225_prefs_initialized = TRUE;
+       } else {
+               ssl_dissector_delete(saved_h225_tls_port, "q931.tpkt", TRUE);
+       }
 
-    if (h225_prefs_initialized) {
-      ssl_dissector_delete(saved_h225_tls_port, "q931.tpkt", TRUE);
-    } else {
-      h225_prefs_initialized = TRUE;
-    }
-
-    saved_h225_tls_port = h225_tls_port;
-    ssl_dissector_add(saved_h225_tls_port, "q931.tpkt", TRUE);
-
-       h225ras_handle=new_create_dissector_handle(dissect_h225_h225_RasMessage, proto_h225);
-       dissector_add("udp.port", UDP_PORT_RAS1, h225ras_handle);
-       dissector_add("udp.port", UDP_PORT_RAS2, h225ras_handle);
-
-       H323UserInformation_handle=find_dissector("h323ui");
-
-       h245_handle = find_dissector("h245");
-       h245dg_handle = find_dissector("h245dg");
-       h4501_handle = find_dissector("h4501");
-       data_handle = find_dissector("data");
-
+       saved_h225_tls_port = h225_tls_port;
+       ssl_dissector_add(saved_h225_tls_port, "q931.tpkt", TRUE);
 }
 
 
@@ -10849,6 +11017,7 @@ static void reset_h225_packet_info(h225_packet_info *pi)
 
 static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, h225_packet_info *pi)
 {
+       proto_item *hidden_item;
        conversation_t* conversation = NULL;
        h225ras_call_info_key h225ras_call_key;
        h225ras_call_t *h225ras_call = NULL;
@@ -10910,7 +11079,8 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
                                                        /* No, so it's a duplicate request.
                                                           Mark it as such. */
                                                        pi->is_duplicate = TRUE;
-                                                       proto_tree_add_uint_hidden(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
+                                                       hidden_item = proto_tree_add_uint(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
+                                                       PROTO_ITEM_SET_HIDDEN(hidden_item);
                                                }
                                                break;
                                        }
@@ -10922,7 +11092,7 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
                        }
 
                        /* add link to response frame, if available */
-                       if(h225ras_call->rsp_num != 0){
+                       if(h225ras_call && h225ras_call->rsp_num != 0){
                                proto_item *ti =
                                proto_tree_add_uint_format(tree, hf_h225_ras_rsp_frame, tvb, 0, 0, h225ras_call->rsp_num,
                                                                   "The response to this request is in frame %u",
@@ -10956,11 +11126,16 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
                                                }
                                                h225ras_call = h225ras_call->next_call;
                                        } while (h225ras_call != NULL) ;
+                                       
+                                       if (!h225ras_call) {
+                                               return;
+                                       }
 
                                        /* if this is an ACF, ARJ or DCF, DRJ, give guid to tap and make it filterable */
                                        if (msg_category == 3 || msg_category == 5) {
                                                pi->guid = h225ras_call->guid;
-                                               proto_tree_add_guid_hidden(tree, hf_h225_guid, tvb, 0, GUID_LEN, &pi->guid);
+                                               hidden_item = proto_tree_add_guid(tree, hf_h225_guid, tvb, 0, GUID_LEN, &pi->guid);
+                                               PROTO_ITEM_SET_HIDDEN(hidden_item);
                                        }
 
                                        if (h225ras_call->rsp_num == 0) {
@@ -10976,7 +11151,8 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
                                                        /* No, so it's a duplicate response.
                                                           Mark it as such. */
                                                        pi->is_duplicate = TRUE;
-                                                       proto_tree_add_uint_hidden(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
+                                                       hidden_item = proto_tree_add_uint(tree, hf_h225_ras_dup, tvb, 0,0, pi->requestSeqNum);
+                                                       PROTO_ITEM_SET_HIDDEN(hidden_item);
                                                }
                                        }