summaryrefslogtreecommitdiff
path: root/epan/dissectors/packet-umts_rrc.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2006-08-08 21:32:44 +0000
committerAnders Broman <anders.broman@ericsson.com>2006-08-08 21:32:44 +0000
commit94c402d6714d404cc2fd4be4b1da1fe9f0c601e7 (patch)
tree7115092356793d21066cb7736a237b414b05af4c /epan/dissectors/packet-umts_rrc.c
parentbd807d4b6976d6fc3c51b016fd56f2854c0883bc (diff)
downloadwireshark-94c402d6714d404cc2fd4be4b1da1fe9f0c601e7.tar.gz
Routines for Universal Mobile Telecommunications System (UMTS) Radio Resource Control (RRC) (umts_rrc) dissection.
svn path=/trunk/; revision=18855
Diffstat (limited to 'epan/dissectors/packet-umts_rrc.c')
-rw-r--r--epan/dissectors/packet-umts_rrc.c1274
1 files changed, 1274 insertions, 0 deletions
diff --git a/epan/dissectors/packet-umts_rrc.c b/epan/dissectors/packet-umts_rrc.c
new file mode 100644
index 0000000000..a5f5141b12
--- /dev/null
+++ b/epan/dissectors/packet-umts_rrc.c
@@ -0,0 +1,1274 @@
+/* Do not modify this file. */
+/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
+/* .\packet-umts_rrc.c */
+/* ../../tools/asn2wrs.py -u -e -p umts_rrc -c umts_rrc.cnf -s packet-umts_rrc-template umts_rrc_Class-definitions.asn */
+
+/* Input file: packet-umts_rrc-template.c */
+
+#line 1 "packet-umts_rrc-template.c"
+/* packet-umts_rrc.c
+ * Routines for Universal Mobile Telecommunications System (UMTS);
+ * Radio Resource Control (RRC) protocol specification
+ * (3GPP TS 25.331 version 6.7.0 Release 6) packet dissection
+ * Copyright 2006, Anders Broman <anders.broman@ericsson.com>
+ *
+ * $Id$
+ *
+ * Ethereal - Network traffic analyzer
+ * By Gerald Combs <gerald@ethereal.com>
+ * Copyright 1998 Gerald Combs
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * Ref: 3GPP TS 25.423 version 6.7.0 Release 6
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <glib.h>
+#include <epan/packet.h>
+#include <epan/conversation.h>
+
+#include <stdio.h>
+#include <string.h>
+
+#include "packet-ber.h"
+#include "packet-per.h"
+#include "packet-umts_rrc.h"
+#include "packet-umts_rrc_ies.h"
+#include "packet-umts_rrc_pdu_def.h"
+
+#define PNAME "Universal Mobile Telecommunications System (UMTS) Radio Resource Control (RRC) protocol"
+#define PSNAME "UMTS_RRC"
+#define PFNAME "umts_rrc"
+
+static dissector_handle_t umts_rrc_handle=NULL;
+
+/* Include constants */
+/*#include "packet-umts_rrc-val.h"*/
+
+/* Initialize the protocol and registered fields */
+static int proto_umts_rrc = -1;
+
+
+
+/*--- Included file: packet-umts_rrc-hf.c ---*/
+#line 1 "packet-umts_rrc-hf.c"
+static int hf_umts_rrc_DL_DCCH_Message_PDU = -1; /* DL_DCCH_Message */
+static int hf_umts_rrc_integrityCheckInfo = -1; /* IntegrityCheckInfo */
+static int hf_umts_rrc_message = -1; /* DL_DCCH_MessageType */
+static int hf_umts_rrc_activeSetUpdate = -1; /* ActiveSetUpdate */
+static int hf_umts_rrc_assistanceDataDelivery = -1; /* AssistanceDataDelivery */
+static int hf_umts_rrc_cellChangeOrderFromUTRAN = -1; /* CellChangeOrderFromUTRAN */
+static int hf_umts_rrc_cellUpdateConfirm = -1; /* CellUpdateConfirm */
+static int hf_umts_rrc_counterCheck = -1; /* CounterCheck */
+static int hf_umts_rrc_downlinkDirectTransfer = -1; /* DownlinkDirectTransfer */
+static int hf_umts_rrc_handoverFromUTRANCommand_GSM = -1; /* HandoverFromUTRANCommand_GSM */
+static int hf_umts_rrc_handoverFromUTRANCommand_CDMA2000 = -1; /* HandoverFromUTRANCommand_CDMA2000 */
+static int hf_umts_rrc_measurementControl = -1; /* MeasurementControl */
+static int hf_umts_rrc_pagingType2 = -1; /* PagingType2 */
+static int hf_umts_rrc_physicalChannelReconfiguration = -1; /* PhysicalChannelReconfiguration */
+static int hf_umts_rrc_physicalSharedChannelAllocation = -1; /* PhysicalSharedChannelAllocation */
+static int hf_umts_rrc_radioBearerReconfiguration = -1; /* RadioBearerReconfiguration */
+static int hf_umts_rrc_radioBearerRelease = -1; /* RadioBearerRelease */
+static int hf_umts_rrc_radioBearerSetup = -1; /* RadioBearerSetup */
+static int hf_umts_rrc_rrcConnectionRelease = -1; /* RRCConnectionRelease */
+static int hf_umts_rrc_securityModeCommand = -1; /* SecurityModeCommand */
+static int hf_umts_rrc_signallingConnectionRelease = -1; /* SignallingConnectionRelease */
+static int hf_umts_rrc_transportChannelReconfiguration = -1; /* TransportChannelReconfiguration */
+static int hf_umts_rrc_transportFormatCombinationControl = -1; /* TransportFormatCombinationControl */
+static int hf_umts_rrc_ueCapabilityEnquiry = -1; /* UECapabilityEnquiry */
+static int hf_umts_rrc_ueCapabilityInformationConfirm = -1; /* UECapabilityInformationConfirm */
+static int hf_umts_rrc_uplinkPhysicalChannelControl = -1; /* UplinkPhysicalChannelControl */
+static int hf_umts_rrc_uraUpdateConfirm = -1; /* URAUpdateConfirm */
+static int hf_umts_rrc_utranMobilityInformation = -1; /* UTRANMobilityInformation */
+static int hf_umts_rrc_handoverFromUTRANCommand_GERANIu = -1; /* HandoverFromUTRANCommand_GERANIu */
+static int hf_umts_rrc_mbmsModifiedServicesInformation = -1; /* MBMSModifiedServicesInformation */
+static int hf_umts_rrc_spare5 = -1; /* NULL */
+static int hf_umts_rrc_spare4 = -1; /* NULL */
+static int hf_umts_rrc_spare3 = -1; /* NULL */
+static int hf_umts_rrc_spare2 = -1; /* NULL */
+static int hf_umts_rrc_spare1 = -1; /* NULL */
+static int hf_umts_rrc_message1 = -1; /* UL_DCCH_MessageType */
+static int hf_umts_rrc_activeSetUpdateComplete = -1; /* ActiveSetUpdateComplete */
+static int hf_umts_rrc_activeSetUpdateFailure = -1; /* ActiveSetUpdateFailure */
+static int hf_umts_rrc_cellChangeOrderFromUTRANFailure = -1; /* CellChangeOrderFromUTRANFailure */
+static int hf_umts_rrc_counterCheckResponse = -1; /* CounterCheckResponse */
+static int hf_umts_rrc_handoverToUTRANComplete = -1; /* HandoverToUTRANComplete */
+static int hf_umts_rrc_initialDirectTransfer = -1; /* InitialDirectTransfer */
+static int hf_umts_rrc_handoverFromUTRANFailure = -1; /* HandoverFromUTRANFailure */
+static int hf_umts_rrc_measurementControlFailure = -1; /* MeasurementControlFailure */
+static int hf_umts_rrc_measurementReport = -1; /* MeasurementReport */
+static int hf_umts_rrc_physicalChannelReconfigurationComplete = -1; /* PhysicalChannelReconfigurationComplete */
+static int hf_umts_rrc_physicalChannelReconfigurationFailure = -1; /* PhysicalChannelReconfigurationFailure */
+static int hf_umts_rrc_radioBearerReconfigurationComplete = -1; /* RadioBearerReconfigurationComplete */
+static int hf_umts_rrc_radioBearerReconfigurationFailure = -1; /* RadioBearerReconfigurationFailure */
+static int hf_umts_rrc_radioBearerReleaseComplete = -1; /* RadioBearerReleaseComplete */
+static int hf_umts_rrc_radioBearerReleaseFailure = -1; /* RadioBearerReleaseFailure */
+static int hf_umts_rrc_radioBearerSetupComplete = -1; /* RadioBearerSetupComplete */
+static int hf_umts_rrc_radioBearerSetupFailure = -1; /* RadioBearerSetupFailure */
+static int hf_umts_rrc_rrcConnectionReleaseComplete = -1; /* RRCConnectionReleaseComplete */
+static int hf_umts_rrc_rrcConnectionSetupComplete = -1; /* RRCConnectionSetupComplete */
+static int hf_umts_rrc_rrcStatus = -1; /* RRCStatus */
+static int hf_umts_rrc_securityModeComplete = -1; /* SecurityModeComplete */
+static int hf_umts_rrc_securityModeFailure = -1; /* SecurityModeFailure */
+static int hf_umts_rrc_signallingConnectionReleaseIndication = -1; /* SignallingConnectionReleaseIndication */
+static int hf_umts_rrc_transportChannelReconfigurationComplete = -1; /* TransportChannelReconfigurationComplete */
+static int hf_umts_rrc_transportChannelReconfigurationFailure = -1; /* TransportChannelReconfigurationFailure */
+static int hf_umts_rrc_transportFormatCombinationControlFailure = -1; /* TransportFormatCombinationControlFailure */
+static int hf_umts_rrc_ueCapabilityInformation = -1; /* UECapabilityInformation */
+static int hf_umts_rrc_uplinkDirectTransfer = -1; /* UplinkDirectTransfer */
+static int hf_umts_rrc_utranMobilityInformationConfirm = -1; /* UTRANMobilityInformationConfirm */
+static int hf_umts_rrc_utranMobilityInformationFailure = -1; /* UTRANMobilityInformationFailure */
+static int hf_umts_rrc_mbmsModificationRequest = -1; /* MBMSModificationRequest */
+static int hf_umts_rrc_message2 = -1; /* DL_CCCH_MessageType */
+static int hf_umts_rrc_cellUpdateConfirm1 = -1; /* CellUpdateConfirm_CCCH */
+static int hf_umts_rrc_rrcConnectionReject = -1; /* RRCConnectionReject */
+static int hf_umts_rrc_rrcConnectionRelease1 = -1; /* RRCConnectionRelease_CCCH */
+static int hf_umts_rrc_rrcConnectionSetup = -1; /* RRCConnectionSetup */
+static int hf_umts_rrc_uraUpdateConfirm1 = -1; /* URAUpdateConfirm_CCCH */
+static int hf_umts_rrc_message3 = -1; /* UL_CCCH_MessageType */
+static int hf_umts_rrc_cellUpdate = -1; /* CellUpdate */
+static int hf_umts_rrc_rrcConnectionRequest = -1; /* RRCConnectionRequest */
+static int hf_umts_rrc_uraUpdate = -1; /* URAUpdate */
+static int hf_umts_rrc_spare = -1; /* NULL */
+static int hf_umts_rrc_message4 = -1; /* PCCH_MessageType */
+static int hf_umts_rrc_pagingType1 = -1; /* PagingType1 */
+static int hf_umts_rrc_message5 = -1; /* DL_SHCCH_MessageType */
+static int hf_umts_rrc_message6 = -1; /* UL_SHCCH_MessageType */
+static int hf_umts_rrc_puschCapacityRequest = -1; /* PUSCHCapacityRequest */
+static int hf_umts_rrc_message7 = -1; /* BCCH_FACH_MessageType */
+static int hf_umts_rrc_systemInformation = -1; /* SystemInformation_FACH */
+static int hf_umts_rrc_systemInformationChangeIndication = -1; /* SystemInformationChangeIndication */
+static int hf_umts_rrc_message8 = -1; /* SystemInformation_BCH */
+static int hf_umts_rrc_message9 = -1; /* MCCH_MessageType */
+static int hf_umts_rrc_mbmsAccessInformation = -1; /* MBMSAccessInformation */
+static int hf_umts_rrc_mbmsCommonPTMRBInformation = -1; /* MBMSCommonPTMRBInformation */
+static int hf_umts_rrc_mbmsCurrentCellPTMRBInformation = -1; /* MBMSCurrentCellPTMRBInformation */
+static int hf_umts_rrc_mbmsGeneralInformation = -1; /* MBMSGeneralInformation */
+static int hf_umts_rrc_mbmsNeighbouringCellPTMRBInformation = -1; /* MBMSNeighbouringCellPTMRBInformation */
+static int hf_umts_rrc_mbmsUnmodifiedServicesInformation = -1; /* MBMSUnmodifiedServicesInformation */
+static int hf_umts_rrc_spare9 = -1; /* NULL */
+static int hf_umts_rrc_spare8 = -1; /* NULL */
+static int hf_umts_rrc_spare7 = -1; /* NULL */
+static int hf_umts_rrc_spare6 = -1; /* NULL */
+static int hf_umts_rrc_message10 = -1; /* MSCH_MessageType */
+static int hf_umts_rrc_mbmsSchedulingInformation = -1; /* MBMSSchedulingInformation */
+
+/*--- End of included file: packet-umts_rrc-hf.c ---*/
+#line 61 "packet-umts_rrc-template.c"
+
+/* Initialize the subtree pointers */
+static int ett_umts_rrc = -1;
+
+
+/*--- Included file: packet-umts_rrc-ett.c ---*/
+#line 1 "packet-umts_rrc-ett.c"
+static gint ett_umts_rrc_DL_DCCH_Message = -1;
+static gint ett_umts_rrc_DL_DCCH_MessageType = -1;
+static gint ett_umts_rrc_UL_DCCH_Message = -1;
+static gint ett_umts_rrc_UL_DCCH_MessageType = -1;
+static gint ett_umts_rrc_DL_CCCH_Message = -1;
+static gint ett_umts_rrc_DL_CCCH_MessageType = -1;
+static gint ett_umts_rrc_UL_CCCH_Message = -1;
+static gint ett_umts_rrc_UL_CCCH_MessageType = -1;
+static gint ett_umts_rrc_PCCH_Message = -1;
+static gint ett_umts_rrc_PCCH_MessageType = -1;
+static gint ett_umts_rrc_DL_SHCCH_Message = -1;
+static gint ett_umts_rrc_DL_SHCCH_MessageType = -1;
+static gint ett_umts_rrc_UL_SHCCH_Message = -1;
+static gint ett_umts_rrc_UL_SHCCH_MessageType = -1;
+static gint ett_umts_rrc_BCCH_FACH_Message = -1;
+static gint ett_umts_rrc_BCCH_FACH_MessageType = -1;
+static gint ett_umts_rrc_BCCH_BCH_Message = -1;
+static gint ett_umts_rrc_MCCH_Message = -1;
+static gint ett_umts_rrc_MCCH_MessageType = -1;
+static gint ett_umts_rrc_MSCH_Message = -1;
+static gint ett_umts_rrc_MSCH_MessageType = -1;
+
+/*--- End of included file: packet-umts_rrc-ett.c ---*/
+#line 66 "packet-umts_rrc-template.c"
+
+/* Global variables */
+static proto_tree *top_tree;
+
+
+/*--- Included file: packet-umts_rrc-fn.c ---*/
+#line 1 "packet-umts_rrc-fn.c"
+
+
+static int
+dissect_umts_rrc_NULL(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_DL_DCCH_MessageType_vals[] = {
+ { 0, "activeSetUpdate" },
+ { 1, "assistanceDataDelivery" },
+ { 2, "cellChangeOrderFromUTRAN" },
+ { 3, "cellUpdateConfirm" },
+ { 4, "counterCheck" },
+ { 5, "downlinkDirectTransfer" },
+ { 6, "handoverFromUTRANCommand-GSM" },
+ { 7, "handoverFromUTRANCommand-CDMA2000" },
+ { 8, "measurementControl" },
+ { 9, "pagingType2" },
+ { 10, "physicalChannelReconfiguration" },
+ { 11, "physicalSharedChannelAllocation" },
+ { 12, "radioBearerReconfiguration" },
+ { 13, "radioBearerRelease" },
+ { 14, "radioBearerSetup" },
+ { 15, "rrcConnectionRelease" },
+ { 16, "securityModeCommand" },
+ { 17, "signallingConnectionRelease" },
+ { 18, "transportChannelReconfiguration" },
+ { 19, "transportFormatCombinationControl" },
+ { 20, "ueCapabilityEnquiry" },
+ { 21, "ueCapabilityInformationConfirm" },
+ { 22, "uplinkPhysicalChannelControl" },
+ { 23, "uraUpdateConfirm" },
+ { 24, "utranMobilityInformation" },
+ { 25, "handoverFromUTRANCommand-GERANIu" },
+ { 26, "mbmsModifiedServicesInformation" },
+ { 27, "spare5" },
+ { 28, "spare4" },
+ { 29, "spare3" },
+ { 30, "spare2" },
+ { 31, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t DL_DCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_activeSetUpdate, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_ActiveSetUpdate },
+ { 1, &hf_umts_rrc_assistanceDataDelivery, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_AssistanceDataDelivery },
+ { 2, &hf_umts_rrc_cellChangeOrderFromUTRAN, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CellChangeOrderFromUTRAN },
+ { 3, &hf_umts_rrc_cellUpdateConfirm, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CellUpdateConfirm },
+ { 4, &hf_umts_rrc_counterCheck, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CounterCheck },
+ { 5, &hf_umts_rrc_downlinkDirectTransfer, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_DownlinkDirectTransfer },
+ { 6, &hf_umts_rrc_handoverFromUTRANCommand_GSM, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_HandoverFromUTRANCommand_GSM },
+ { 7, &hf_umts_rrc_handoverFromUTRANCommand_CDMA2000, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_HandoverFromUTRANCommand_CDMA2000 },
+ { 8, &hf_umts_rrc_measurementControl, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MeasurementControl },
+ { 9, &hf_umts_rrc_pagingType2, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PagingType2 },
+ { 10, &hf_umts_rrc_physicalChannelReconfiguration, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PhysicalChannelReconfiguration },
+ { 11, &hf_umts_rrc_physicalSharedChannelAllocation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PhysicalSharedChannelAllocation },
+ { 12, &hf_umts_rrc_radioBearerReconfiguration, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerReconfiguration },
+ { 13, &hf_umts_rrc_radioBearerRelease, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerRelease },
+ { 14, &hf_umts_rrc_radioBearerSetup, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerSetup },
+ { 15, &hf_umts_rrc_rrcConnectionRelease, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionRelease },
+ { 16, &hf_umts_rrc_securityModeCommand, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SecurityModeCommand },
+ { 17, &hf_umts_rrc_signallingConnectionRelease, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SignallingConnectionRelease },
+ { 18, &hf_umts_rrc_transportChannelReconfiguration, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_TransportChannelReconfiguration },
+ { 19, &hf_umts_rrc_transportFormatCombinationControl, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_TransportFormatCombinationControl },
+ { 20, &hf_umts_rrc_ueCapabilityEnquiry, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UECapabilityEnquiry },
+ { 21, &hf_umts_rrc_ueCapabilityInformationConfirm, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UECapabilityInformationConfirm },
+ { 22, &hf_umts_rrc_uplinkPhysicalChannelControl, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UplinkPhysicalChannelControl },
+ { 23, &hf_umts_rrc_uraUpdateConfirm, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_URAUpdateConfirm },
+ { 24, &hf_umts_rrc_utranMobilityInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UTRANMobilityInformation },
+ { 25, &hf_umts_rrc_handoverFromUTRANCommand_GERANIu, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_HandoverFromUTRANCommand_GERANIu },
+ { 26, &hf_umts_rrc_mbmsModifiedServicesInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSModifiedServicesInformation },
+ { 27, &hf_umts_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 28, &hf_umts_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 29, &hf_umts_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 30, &hf_umts_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 31, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_DL_DCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_DCCH_MessageType, DL_DCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t DL_DCCH_Message_sequence[] = {
+ { &hf_umts_rrc_integrityCheckInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_umts_rrc_ies_IntegrityCheckInfo },
+ { &hf_umts_rrc_message , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_DL_DCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_DL_DCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_DCCH_Message, DL_DCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_UL_DCCH_MessageType_vals[] = {
+ { 0, "activeSetUpdateComplete" },
+ { 1, "activeSetUpdateFailure" },
+ { 2, "cellChangeOrderFromUTRANFailure" },
+ { 3, "counterCheckResponse" },
+ { 4, "handoverToUTRANComplete" },
+ { 5, "initialDirectTransfer" },
+ { 6, "handoverFromUTRANFailure" },
+ { 7, "measurementControlFailure" },
+ { 8, "measurementReport" },
+ { 9, "physicalChannelReconfigurationComplete" },
+ { 10, "physicalChannelReconfigurationFailure" },
+ { 11, "radioBearerReconfigurationComplete" },
+ { 12, "radioBearerReconfigurationFailure" },
+ { 13, "radioBearerReleaseComplete" },
+ { 14, "radioBearerReleaseFailure" },
+ { 15, "radioBearerSetupComplete" },
+ { 16, "radioBearerSetupFailure" },
+ { 17, "rrcConnectionReleaseComplete" },
+ { 18, "rrcConnectionSetupComplete" },
+ { 19, "rrcStatus" },
+ { 20, "securityModeComplete" },
+ { 21, "securityModeFailure" },
+ { 22, "signallingConnectionReleaseIndication" },
+ { 23, "transportChannelReconfigurationComplete" },
+ { 24, "transportChannelReconfigurationFailure" },
+ { 25, "transportFormatCombinationControlFailure" },
+ { 26, "ueCapabilityInformation" },
+ { 27, "uplinkDirectTransfer" },
+ { 28, "utranMobilityInformationConfirm" },
+ { 29, "utranMobilityInformationFailure" },
+ { 30, "mbmsModificationRequest" },
+ { 31, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t UL_DCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_activeSetUpdateComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_ActiveSetUpdateComplete },
+ { 1, &hf_umts_rrc_activeSetUpdateFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_ActiveSetUpdateFailure },
+ { 2, &hf_umts_rrc_cellChangeOrderFromUTRANFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CellChangeOrderFromUTRANFailure },
+ { 3, &hf_umts_rrc_counterCheckResponse, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CounterCheckResponse },
+ { 4, &hf_umts_rrc_handoverToUTRANComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_HandoverToUTRANComplete },
+ { 5, &hf_umts_rrc_initialDirectTransfer, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_InitialDirectTransfer },
+ { 6, &hf_umts_rrc_handoverFromUTRANFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_HandoverFromUTRANFailure },
+ { 7, &hf_umts_rrc_measurementControlFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MeasurementControlFailure },
+ { 8, &hf_umts_rrc_measurementReport, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MeasurementReport },
+ { 9, &hf_umts_rrc_physicalChannelReconfigurationComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PhysicalChannelReconfigurationComplete },
+ { 10, &hf_umts_rrc_physicalChannelReconfigurationFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PhysicalChannelReconfigurationFailure },
+ { 11, &hf_umts_rrc_radioBearerReconfigurationComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerReconfigurationComplete },
+ { 12, &hf_umts_rrc_radioBearerReconfigurationFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerReconfigurationFailure },
+ { 13, &hf_umts_rrc_radioBearerReleaseComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerReleaseComplete },
+ { 14, &hf_umts_rrc_radioBearerReleaseFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerReleaseFailure },
+ { 15, &hf_umts_rrc_radioBearerSetupComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerSetupComplete },
+ { 16, &hf_umts_rrc_radioBearerSetupFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RadioBearerSetupFailure },
+ { 17, &hf_umts_rrc_rrcConnectionReleaseComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionReleaseComplete },
+ { 18, &hf_umts_rrc_rrcConnectionSetupComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionSetupComplete },
+ { 19, &hf_umts_rrc_rrcStatus , ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCStatus },
+ { 20, &hf_umts_rrc_securityModeComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SecurityModeComplete },
+ { 21, &hf_umts_rrc_securityModeFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SecurityModeFailure },
+ { 22, &hf_umts_rrc_signallingConnectionReleaseIndication, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SignallingConnectionReleaseIndication },
+ { 23, &hf_umts_rrc_transportChannelReconfigurationComplete, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_TransportChannelReconfigurationComplete },
+ { 24, &hf_umts_rrc_transportChannelReconfigurationFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_TransportChannelReconfigurationFailure },
+ { 25, &hf_umts_rrc_transportFormatCombinationControlFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_TransportFormatCombinationControlFailure },
+ { 26, &hf_umts_rrc_ueCapabilityInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UECapabilityInformation },
+ { 27, &hf_umts_rrc_uplinkDirectTransfer, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UplinkDirectTransfer },
+ { 28, &hf_umts_rrc_utranMobilityInformationConfirm, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UTRANMobilityInformationConfirm },
+ { 29, &hf_umts_rrc_utranMobilityInformationFailure, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_UTRANMobilityInformationFailure },
+ { 30, &hf_umts_rrc_mbmsModificationRequest, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSModificationRequest },
+ { 31, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_UL_DCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_DCCH_MessageType, UL_DCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t UL_DCCH_Message_sequence[] = {
+ { &hf_umts_rrc_integrityCheckInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_umts_rrc_ies_IntegrityCheckInfo },
+ { &hf_umts_rrc_message1 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_UL_DCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_UL_DCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_DCCH_Message, UL_DCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_DL_CCCH_MessageType_vals[] = {
+ { 0, "cellUpdateConfirm" },
+ { 1, "rrcConnectionReject" },
+ { 2, "rrcConnectionRelease" },
+ { 3, "rrcConnectionSetup" },
+ { 4, "uraUpdateConfirm" },
+ { 5, "spare3" },
+ { 6, "spare2" },
+ { 7, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t DL_CCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_cellUpdateConfirm1, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CellUpdateConfirm_CCCH },
+ { 1, &hf_umts_rrc_rrcConnectionReject, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionReject },
+ { 2, &hf_umts_rrc_rrcConnectionRelease1, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionRelease_CCCH },
+ { 3, &hf_umts_rrc_rrcConnectionSetup, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionSetup },
+ { 4, &hf_umts_rrc_uraUpdateConfirm1, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_URAUpdateConfirm_CCCH },
+ { 5, &hf_umts_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 6, &hf_umts_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 7, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_DL_CCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_CCCH_MessageType, DL_CCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t DL_CCCH_Message_sequence[] = {
+ { &hf_umts_rrc_integrityCheckInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_umts_rrc_ies_IntegrityCheckInfo },
+ { &hf_umts_rrc_message2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_DL_CCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_DL_CCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_CCCH_Message, DL_CCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_UL_CCCH_MessageType_vals[] = {
+ { 0, "cellUpdate" },
+ { 1, "rrcConnectionRequest" },
+ { 2, "uraUpdate" },
+ { 3, "spare" },
+ { 0, NULL }
+};
+
+static const per_choice_t UL_CCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_cellUpdate , ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_CellUpdate },
+ { 1, &hf_umts_rrc_rrcConnectionRequest, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_RRCConnectionRequest },
+ { 2, &hf_umts_rrc_uraUpdate , ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_URAUpdate },
+ { 3, &hf_umts_rrc_spare , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_UL_CCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_CCCH_MessageType, UL_CCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t UL_CCCH_Message_sequence[] = {
+ { &hf_umts_rrc_integrityCheckInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_umts_rrc_ies_IntegrityCheckInfo },
+ { &hf_umts_rrc_message3 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_UL_CCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_UL_CCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_CCCH_Message, UL_CCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_PCCH_MessageType_vals[] = {
+ { 0, "pagingType1" },
+ { 1, "spare" },
+ { 0, NULL }
+};
+
+static const per_choice_t PCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_pagingType1, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PagingType1 },
+ { 1, &hf_umts_rrc_spare , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_PCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_PCCH_MessageType, PCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t PCCH_Message_sequence[] = {
+ { &hf_umts_rrc_message4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_PCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_PCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_PCCH_Message, PCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_DL_SHCCH_MessageType_vals[] = {
+ { 0, "physicalSharedChannelAllocation" },
+ { 1, "spare" },
+ { 0, NULL }
+};
+
+static const per_choice_t DL_SHCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_physicalSharedChannelAllocation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PhysicalSharedChannelAllocation },
+ { 1, &hf_umts_rrc_spare , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_DL_SHCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_SHCCH_MessageType, DL_SHCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t DL_SHCCH_Message_sequence[] = {
+ { &hf_umts_rrc_message5 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_DL_SHCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_DL_SHCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_DL_SHCCH_Message, DL_SHCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_UL_SHCCH_MessageType_vals[] = {
+ { 0, "puschCapacityRequest" },
+ { 1, "spare" },
+ { 0, NULL }
+};
+
+static const per_choice_t UL_SHCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_puschCapacityRequest, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_PUSCHCapacityRequest },
+ { 1, &hf_umts_rrc_spare , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_UL_SHCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_SHCCH_MessageType, UL_SHCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t UL_SHCCH_Message_sequence[] = {
+ { &hf_umts_rrc_message6 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_UL_SHCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_UL_SHCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_UL_SHCCH_Message, UL_SHCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_BCCH_FACH_MessageType_vals[] = {
+ { 0, "systemInformation" },
+ { 1, "systemInformationChangeIndication" },
+ { 2, "spare2" },
+ { 3, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t BCCH_FACH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_systemInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SystemInformation_FACH },
+ { 1, &hf_umts_rrc_systemInformationChangeIndication, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_SystemInformationChangeIndication },
+ { 2, &hf_umts_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 3, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_BCCH_FACH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_BCCH_FACH_MessageType, BCCH_FACH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t BCCH_FACH_Message_sequence[] = {
+ { &hf_umts_rrc_message7 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_BCCH_FACH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_BCCH_FACH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_BCCH_FACH_Message, BCCH_FACH_Message_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t BCCH_BCH_Message_sequence[] = {
+ { &hf_umts_rrc_message8 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_pdu_def_SystemInformation_BCH },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_BCCH_BCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_BCCH_BCH_Message, BCCH_BCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_MCCH_MessageType_vals[] = {
+ { 0, "mbmsAccessInformation" },
+ { 1, "mbmsCommonPTMRBInformation" },
+ { 2, "mbmsCurrentCellPTMRBInformation" },
+ { 3, "mbmsGeneralInformation" },
+ { 4, "mbmsModifiedServicesInformation" },
+ { 5, "mbmsNeighbouringCellPTMRBInformation" },
+ { 6, "mbmsUnmodifiedServicesInformation" },
+ { 7, "spare9" },
+ { 8, "spare8" },
+ { 9, "spare7" },
+ { 10, "spare6" },
+ { 11, "spare5" },
+ { 12, "spare4" },
+ { 13, "spare3" },
+ { 14, "spare2" },
+ { 15, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t MCCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_mbmsAccessInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSAccessInformation },
+ { 1, &hf_umts_rrc_mbmsCommonPTMRBInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSCommonPTMRBInformation },
+ { 2, &hf_umts_rrc_mbmsCurrentCellPTMRBInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSCurrentCellPTMRBInformation },
+ { 3, &hf_umts_rrc_mbmsGeneralInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSGeneralInformation },
+ { 4, &hf_umts_rrc_mbmsModifiedServicesInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSModifiedServicesInformation },
+ { 5, &hf_umts_rrc_mbmsNeighbouringCellPTMRBInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSNeighbouringCellPTMRBInformation },
+ { 6, &hf_umts_rrc_mbmsUnmodifiedServicesInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSUnmodifiedServicesInformation },
+ { 7, &hf_umts_rrc_spare9 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 8, &hf_umts_rrc_spare8 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 9, &hf_umts_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 10, &hf_umts_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 11, &hf_umts_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 12, &hf_umts_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 13, &hf_umts_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 14, &hf_umts_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 15, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_MCCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_MCCH_MessageType, MCCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t MCCH_Message_sequence[] = {
+ { &hf_umts_rrc_message9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_MCCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_MCCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_MCCH_Message, MCCH_Message_sequence);
+
+ return offset;
+}
+
+
+static const value_string umts_rrc_MSCH_MessageType_vals[] = {
+ { 0, "mbmsSchedulingInformation" },
+ { 1, "spare3" },
+ { 2, "spare2" },
+ { 3, "spare1" },
+ { 0, NULL }
+};
+
+static const per_choice_t MSCH_MessageType_choice[] = {
+ { 0, &hf_umts_rrc_mbmsSchedulingInformation, ASN1_NO_EXTENSIONS , dissect_umts_rrc_pdu_def_MBMSSchedulingInformation },
+ { 1, &hf_umts_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 2, &hf_umts_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 3, &hf_umts_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_umts_rrc_NULL },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_umts_rrc_MSCH_MessageType(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_MSCH_MessageType, MSCH_MessageType_choice,
+ NULL);
+
+ return offset;
+}
+
+
+static const per_sequence_t MSCH_Message_sequence[] = {
+ { &hf_umts_rrc_message10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_umts_rrc_MSCH_MessageType },
+ { NULL, 0, 0, NULL }
+};
+
+int
+dissect_umts_rrc_MSCH_Message(tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_umts_rrc_MSCH_Message, MSCH_Message_sequence);
+
+ return offset;
+}
+
+/*--- PDUs ---*/
+
+static void dissect_DL_DCCH_Message_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
+ dissect_umts_rrc_DL_DCCH_Message(tvb, 0, &asn1_ctx, tree, hf_umts_rrc_DL_DCCH_Message_PDU);
+}
+
+
+/*--- End of included file: packet-umts_rrc-fn.c ---*/
+#line 71 "packet-umts_rrc-template.c"
+
+
+static void
+dissect_umts_rrc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+{
+ /* FIX ME Currently don't know the 'starting point' of this protocol
+ * exported DL-DCCH-Message is the entry point.
+ */
+ proto_item *umts_rrc_item = NULL;
+ proto_tree *umts_rrc_tree = NULL;
+ int offset = 0;
+
+ top_tree = tree;
+
+ /* make entry in the Protocol column on summary display */
+ if (check_col(pinfo->cinfo, COL_PROTOCOL))
+ col_set_str(pinfo->cinfo, COL_PROTOCOL, "UMTS_RRC");
+
+ /* create the umts_rrc protocol tree */
+ umts_rrc_item = proto_tree_add_item(tree, proto_umts_rrc, tvb, 0, -1, FALSE);
+ umts_rrc_tree = proto_item_add_subtree(umts_rrc_item, ett_umts_rrc);
+
+}
+/*--- proto_register_umts_rrc -------------------------------------------*/
+void proto_register_umts_rrc(void) {
+
+ /* List of fields */
+ static hf_register_info hf[] = {
+
+
+/*--- Included file: packet-umts_rrc-hfarr.c ---*/
+#line 1 "packet-umts_rrc-hfarr.c"
+ { &hf_umts_rrc_DL_DCCH_Message_PDU,
+ { "DL-DCCH-Message", "umts_rrc.DL_DCCH_Message",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DL-DCCH-Message", HFILL }},
+ { &hf_umts_rrc_integrityCheckInfo,
+ { "integrityCheckInfo", "umts_rrc.integrityCheckInfo",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_message,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_DL_DCCH_MessageType_vals), 0,
+ "DL-DCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_activeSetUpdate,
+ { "activeSetUpdate", "umts_rrc.activeSetUpdate",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_ActiveSetUpdate_vals), 0,
+ "DL-DCCH-MessageType/activeSetUpdate", HFILL }},
+ { &hf_umts_rrc_assistanceDataDelivery,
+ { "assistanceDataDelivery", "umts_rrc.assistanceDataDelivery",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_AssistanceDataDelivery_vals), 0,
+ "DL-DCCH-MessageType/assistanceDataDelivery", HFILL }},
+ { &hf_umts_rrc_cellChangeOrderFromUTRAN,
+ { "cellChangeOrderFromUTRAN", "umts_rrc.cellChangeOrderFromUTRAN",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_CellChangeOrderFromUTRAN_vals), 0,
+ "DL-DCCH-MessageType/cellChangeOrderFromUTRAN", HFILL }},
+ { &hf_umts_rrc_cellUpdateConfirm,
+ { "cellUpdateConfirm", "umts_rrc.cellUpdateConfirm",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_CellUpdateConfirm_vals), 0,
+ "DL-DCCH-MessageType/cellUpdateConfirm", HFILL }},
+ { &hf_umts_rrc_counterCheck,
+ { "counterCheck", "umts_rrc.counterCheck",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_CounterCheck_vals), 0,
+ "DL-DCCH-MessageType/counterCheck", HFILL }},
+ { &hf_umts_rrc_downlinkDirectTransfer,
+ { "downlinkDirectTransfer", "umts_rrc.downlinkDirectTransfer",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_DownlinkDirectTransfer_vals), 0,
+ "DL-DCCH-MessageType/downlinkDirectTransfer", HFILL }},
+ { &hf_umts_rrc_handoverFromUTRANCommand_GSM,
+ { "handoverFromUTRANCommand-GSM", "umts_rrc.handoverFromUTRANCommand_GSM",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_HandoverFromUTRANCommand_GSM_vals), 0,
+ "DL-DCCH-MessageType/handoverFromUTRANCommand-GSM", HFILL }},
+ { &hf_umts_rrc_handoverFromUTRANCommand_CDMA2000,
+ { "handoverFromUTRANCommand-CDMA2000", "umts_rrc.handoverFromUTRANCommand_CDMA2000",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_HandoverFromUTRANCommand_CDMA2000_vals), 0,
+ "DL-DCCH-MessageType/handoverFromUTRANCommand-CDMA2000", HFILL }},
+ { &hf_umts_rrc_measurementControl,
+ { "measurementControl", "umts_rrc.measurementControl",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_MeasurementControl_vals), 0,
+ "DL-DCCH-MessageType/measurementControl", HFILL }},
+ { &hf_umts_rrc_pagingType2,
+ { "pagingType2", "umts_rrc.pagingType2",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DL-DCCH-MessageType/pagingType2", HFILL }},
+ { &hf_umts_rrc_physicalChannelReconfiguration,
+ { "physicalChannelReconfiguration", "umts_rrc.physicalChannelReconfiguration",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_PhysicalChannelReconfiguration_vals), 0,
+ "DL-DCCH-MessageType/physicalChannelReconfiguration", HFILL }},
+ { &hf_umts_rrc_physicalSharedChannelAllocation,
+ { "physicalSharedChannelAllocation", "umts_rrc.physicalSharedChannelAllocation",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_PhysicalSharedChannelAllocation_vals), 0,
+ "", HFILL }},
+ { &hf_umts_rrc_radioBearerReconfiguration,
+ { "radioBearerReconfiguration", "umts_rrc.radioBearerReconfiguration",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RadioBearerReconfiguration_vals), 0,
+ "DL-DCCH-MessageType/radioBearerReconfiguration", HFILL }},
+ { &hf_umts_rrc_radioBearerRelease,
+ { "radioBearerRelease", "umts_rrc.radioBearerRelease",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RadioBearerRelease_vals), 0,
+ "DL-DCCH-MessageType/radioBearerRelease", HFILL }},
+ { &hf_umts_rrc_radioBearerSetup,
+ { "radioBearerSetup", "umts_rrc.radioBearerSetup",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RadioBearerSetup_vals), 0,
+ "DL-DCCH-MessageType/radioBearerSetup", HFILL }},
+ { &hf_umts_rrc_rrcConnectionRelease,
+ { "rrcConnectionRelease", "umts_rrc.rrcConnectionRelease",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RRCConnectionRelease_vals), 0,
+ "DL-DCCH-MessageType/rrcConnectionRelease", HFILL }},
+ { &hf_umts_rrc_securityModeCommand,
+ { "securityModeCommand", "umts_rrc.securityModeCommand",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_SecurityModeCommand_vals), 0,
+ "DL-DCCH-MessageType/securityModeCommand", HFILL }},
+ { &hf_umts_rrc_signallingConnectionRelease,
+ { "signallingConnectionRelease", "umts_rrc.signallingConnectionRelease",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_SignallingConnectionRelease_vals), 0,
+ "DL-DCCH-MessageType/signallingConnectionRelease", HFILL }},
+ { &hf_umts_rrc_transportChannelReconfiguration,
+ { "transportChannelReconfiguration", "umts_rrc.transportChannelReconfiguration",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_TransportChannelReconfiguration_vals), 0,
+ "DL-DCCH-MessageType/transportChannelReconfiguration", HFILL }},
+ { &hf_umts_rrc_transportFormatCombinationControl,
+ { "transportFormatCombinationControl", "umts_rrc.transportFormatCombinationControl",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DL-DCCH-MessageType/transportFormatCombinationControl", HFILL }},
+ { &hf_umts_rrc_ueCapabilityEnquiry,
+ { "ueCapabilityEnquiry", "umts_rrc.ueCapabilityEnquiry",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_UECapabilityEnquiry_vals), 0,
+ "DL-DCCH-MessageType/ueCapabilityEnquiry", HFILL }},
+ { &hf_umts_rrc_ueCapabilityInformationConfirm,
+ { "ueCapabilityInformationConfirm", "umts_rrc.ueCapabilityInformationConfirm",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_UECapabilityInformationConfirm_vals), 0,
+ "DL-DCCH-MessageType/ueCapabilityInformationConfirm", HFILL }},
+ { &hf_umts_rrc_uplinkPhysicalChannelControl,
+ { "uplinkPhysicalChannelControl", "umts_rrc.uplinkPhysicalChannelControl",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_UplinkPhysicalChannelControl_vals), 0,
+ "DL-DCCH-MessageType/uplinkPhysicalChannelControl", HFILL }},
+ { &hf_umts_rrc_uraUpdateConfirm,
+ { "uraUpdateConfirm", "umts_rrc.uraUpdateConfirm",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_URAUpdateConfirm_vals), 0,
+ "DL-DCCH-MessageType/uraUpdateConfirm", HFILL }},
+ { &hf_umts_rrc_utranMobilityInformation,
+ { "utranMobilityInformation", "umts_rrc.utranMobilityInformation",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_UTRANMobilityInformation_vals), 0,
+ "DL-DCCH-MessageType/utranMobilityInformation", HFILL }},
+ { &hf_umts_rrc_handoverFromUTRANCommand_GERANIu,
+ { "handoverFromUTRANCommand-GERANIu", "umts_rrc.handoverFromUTRANCommand_GERANIu",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "DL-DCCH-MessageType/handoverFromUTRANCommand-GERANIu", HFILL }},
+ { &hf_umts_rrc_mbmsModifiedServicesInformation,
+ { "mbmsModifiedServicesInformation", "umts_rrc.mbmsModifiedServicesInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_spare5,
+ { "spare5", "umts_rrc.spare5",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_spare4,
+ { "spare4", "umts_rrc.spare4",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_spare3,
+ { "spare3", "umts_rrc.spare3",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_spare2,
+ { "spare2", "umts_rrc.spare2",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_spare1,
+ { "spare1", "umts_rrc.spare1",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_message1,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_UL_DCCH_MessageType_vals), 0,
+ "UL-DCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_activeSetUpdateComplete,
+ { "activeSetUpdateComplete", "umts_rrc.activeSetUpdateComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/activeSetUpdateComplete", HFILL }},
+ { &hf_umts_rrc_activeSetUpdateFailure,
+ { "activeSetUpdateFailure", "umts_rrc.activeSetUpdateFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/activeSetUpdateFailure", HFILL }},
+ { &hf_umts_rrc_cellChangeOrderFromUTRANFailure,
+ { "cellChangeOrderFromUTRANFailure", "umts_rrc.cellChangeOrderFromUTRANFailure",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_CellChangeOrderFromUTRANFailure_vals), 0,
+ "UL-DCCH-MessageType/cellChangeOrderFromUTRANFailure", HFILL }},
+ { &hf_umts_rrc_counterCheckResponse,
+ { "counterCheckResponse", "umts_rrc.counterCheckResponse",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/counterCheckResponse", HFILL }},
+ { &hf_umts_rrc_handoverToUTRANComplete,
+ { "handoverToUTRANComplete", "umts_rrc.handoverToUTRANComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/handoverToUTRANComplete", HFILL }},
+ { &hf_umts_rrc_initialDirectTransfer,
+ { "initialDirectTransfer", "umts_rrc.initialDirectTransfer",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/initialDirectTransfer", HFILL }},
+ { &hf_umts_rrc_handoverFromUTRANFailure,
+ { "handoverFromUTRANFailure", "umts_rrc.handoverFromUTRANFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/handoverFromUTRANFailure", HFILL }},
+ { &hf_umts_rrc_measurementControlFailure,
+ { "measurementControlFailure", "umts_rrc.measurementControlFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/measurementControlFailure", HFILL }},
+ { &hf_umts_rrc_measurementReport,
+ { "measurementReport", "umts_rrc.measurementReport",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/measurementReport", HFILL }},
+ { &hf_umts_rrc_physicalChannelReconfigurationComplete,
+ { "physicalChannelReconfigurationComplete", "umts_rrc.physicalChannelReconfigurationComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/physicalChannelReconfigurationComplete", HFILL }},
+ { &hf_umts_rrc_physicalChannelReconfigurationFailure,
+ { "physicalChannelReconfigurationFailure", "umts_rrc.physicalChannelReconfigurationFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/physicalChannelReconfigurationFailure", HFILL }},
+ { &hf_umts_rrc_radioBearerReconfigurationComplete,
+ { "radioBearerReconfigurationComplete", "umts_rrc.radioBearerReconfigurationComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerReconfigurationComplete", HFILL }},
+ { &hf_umts_rrc_radioBearerReconfigurationFailure,
+ { "radioBearerReconfigurationFailure", "umts_rrc.radioBearerReconfigurationFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerReconfigurationFailure", HFILL }},
+ { &hf_umts_rrc_radioBearerReleaseComplete,
+ { "radioBearerReleaseComplete", "umts_rrc.radioBearerReleaseComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerReleaseComplete", HFILL }},
+ { &hf_umts_rrc_radioBearerReleaseFailure,
+ { "radioBearerReleaseFailure", "umts_rrc.radioBearerReleaseFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerReleaseFailure", HFILL }},
+ { &hf_umts_rrc_radioBearerSetupComplete,
+ { "radioBearerSetupComplete", "umts_rrc.radioBearerSetupComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerSetupComplete", HFILL }},
+ { &hf_umts_rrc_radioBearerSetupFailure,
+ { "radioBearerSetupFailure", "umts_rrc.radioBearerSetupFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/radioBearerSetupFailure", HFILL }},
+ { &hf_umts_rrc_rrcConnectionReleaseComplete,
+ { "rrcConnectionReleaseComplete", "umts_rrc.rrcConnectionReleaseComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/rrcConnectionReleaseComplete", HFILL }},
+ { &hf_umts_rrc_rrcConnectionSetupComplete,
+ { "rrcConnectionSetupComplete", "umts_rrc.rrcConnectionSetupComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/rrcConnectionSetupComplete", HFILL }},
+ { &hf_umts_rrc_rrcStatus,
+ { "rrcStatus", "umts_rrc.rrcStatus",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/rrcStatus", HFILL }},
+ { &hf_umts_rrc_securityModeComplete,
+ { "securityModeComplete", "umts_rrc.securityModeComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/securityModeComplete", HFILL }},
+ { &hf_umts_rrc_securityModeFailure,
+ { "securityModeFailure", "umts_rrc.securityModeFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/securityModeFailure", HFILL }},
+ { &hf_umts_rrc_signallingConnectionReleaseIndication,
+ { "signallingConnectionReleaseIndication", "umts_rrc.signallingConnectionReleaseIndication",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/signallingConnectionReleaseIndication", HFILL }},
+ { &hf_umts_rrc_transportChannelReconfigurationComplete,
+ { "transportChannelReconfigurationComplete", "umts_rrc.transportChannelReconfigurationComplete",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/transportChannelReconfigurationComplete", HFILL }},
+ { &hf_umts_rrc_transportChannelReconfigurationFailure,
+ { "transportChannelReconfigurationFailure", "umts_rrc.transportChannelReconfigurationFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/transportChannelReconfigurationFailure", HFILL }},
+ { &hf_umts_rrc_transportFormatCombinationControlFailure,
+ { "transportFormatCombinationControlFailure", "umts_rrc.transportFormatCombinationControlFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/transportFormatCombinationControlFailure", HFILL }},
+ { &hf_umts_rrc_ueCapabilityInformation,
+ { "ueCapabilityInformation", "umts_rrc.ueCapabilityInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/ueCapabilityInformation", HFILL }},
+ { &hf_umts_rrc_uplinkDirectTransfer,
+ { "uplinkDirectTransfer", "umts_rrc.uplinkDirectTransfer",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/uplinkDirectTransfer", HFILL }},
+ { &hf_umts_rrc_utranMobilityInformationConfirm,
+ { "utranMobilityInformationConfirm", "umts_rrc.utranMobilityInformationConfirm",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/utranMobilityInformationConfirm", HFILL }},
+ { &hf_umts_rrc_utranMobilityInformationFailure,
+ { "utranMobilityInformationFailure", "umts_rrc.utranMobilityInformationFailure",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/utranMobilityInformationFailure", HFILL }},
+ { &hf_umts_rrc_mbmsModificationRequest,
+ { "mbmsModificationRequest", "umts_rrc.mbmsModificationRequest",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-DCCH-MessageType/mbmsModificationRequest", HFILL }},
+ { &hf_umts_rrc_message2,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_DL_CCCH_MessageType_vals), 0,
+ "DL-CCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_cellUpdateConfirm1,
+ { "cellUpdateConfirm", "umts_rrc.cellUpdateConfirm",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_CellUpdateConfirm_CCCH_vals), 0,
+ "DL-CCCH-MessageType/cellUpdateConfirm", HFILL }},
+ { &hf_umts_rrc_rrcConnectionReject,
+ { "rrcConnectionReject", "umts_rrc.rrcConnectionReject",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RRCConnectionReject_vals), 0,
+ "DL-CCCH-MessageType/rrcConnectionReject", HFILL }},
+ { &hf_umts_rrc_rrcConnectionRelease1,
+ { "rrcConnectionRelease", "umts_rrc.rrcConnectionRelease",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RRCConnectionRelease_CCCH_vals), 0,
+ "DL-CCCH-MessageType/rrcConnectionRelease", HFILL }},
+ { &hf_umts_rrc_rrcConnectionSetup,
+ { "rrcConnectionSetup", "umts_rrc.rrcConnectionSetup",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_RRCConnectionSetup_vals), 0,
+ "DL-CCCH-MessageType/rrcConnectionSetup", HFILL }},
+ { &hf_umts_rrc_uraUpdateConfirm1,
+ { "uraUpdateConfirm", "umts_rrc.uraUpdateConfirm",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_pdu_def_URAUpdateConfirm_CCCH_vals), 0,
+ "DL-CCCH-MessageType/uraUpdateConfirm", HFILL }},
+ { &hf_umts_rrc_message3,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_UL_CCCH_MessageType_vals), 0,
+ "UL-CCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_cellUpdate,
+ { "cellUpdate", "umts_rrc.cellUpdate",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-CCCH-MessageType/cellUpdate", HFILL }},
+ { &hf_umts_rrc_rrcConnectionRequest,
+ { "rrcConnectionRequest", "umts_rrc.rrcConnectionRequest",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-CCCH-MessageType/rrcConnectionRequest", HFILL }},
+ { &hf_umts_rrc_uraUpdate,
+ { "uraUpdate", "umts_rrc.uraUpdate",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-CCCH-MessageType/uraUpdate", HFILL }},
+ { &hf_umts_rrc_spare,
+ { "spare", "umts_rrc.spare",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_umts_rrc_message4,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_PCCH_MessageType_vals), 0,
+ "PCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_pagingType1,
+ { "pagingType1", "umts_rrc.pagingType1",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "PCCH-MessageType/pagingType1", HFILL }},
+ { &hf_umts_rrc_message5,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_DL_SHCCH_MessageType_vals), 0,
+ "DL-SHCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_message6,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_UL_SHCCH_MessageType_vals), 0,
+ "UL-SHCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_puschCapacityRequest,
+ { "puschCapacityRequest", "umts_rrc.puschCapacityRequest",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UL-SHCCH-MessageType/puschCapacityRequest", HFILL }},
+ { &hf_umts_rrc_message7,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_BCCH_FACH_MessageType_vals), 0,
+ "BCCH-FACH-Message/message", HFILL }},
+ { &hf_umts_rrc_systemInformation,
+ { "systemInformation", "umts_rrc.systemInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "BCCH-FACH-MessageType/systemInformation", HFILL }},
+ { &hf_umts_rrc_systemInformationChangeIndication,
+ { "systemInformationChangeIndication", "umts_rrc.systemInformationChangeIndication",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "BCCH-FACH-MessageType/systemInformationChangeIndication", HFILL }},
+ { &hf_umts_rrc_message8,
+ { "message", "umts_rrc.message",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "BCCH-BCH-Message/message", HFILL }},
+ { &hf_umts_rrc_message9,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_MCCH_MessageType_vals), 0,
+ "MCCH-Message/message", HFILL }},
+ { &hf_umts_rrc_mbmsAccessInformation,
+ { "mbmsAccessInformation", "umts_rrc.mbmsAccessInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsAccessInformation", HFILL }},
+ { &hf_umts_rrc_mbmsCommonPTMRBInformation,
+ { "mbmsCommonPTMRBInformation", "umts_rrc.mbmsCommonPTMRBInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsCommonPTMRBInformation", HFILL }},
+ { &hf_umts_rrc_mbmsCurrentCellPTMRBInformation,
+ { "mbmsCurrentCellPTMRBInformation", "umts_rrc.mbmsCurrentCellPTMRBInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsCurrentCellPTMRBInformation", HFILL }},
+ { &hf_umts_rrc_mbmsGeneralInformation,
+ { "mbmsGeneralInformation", "umts_rrc.mbmsGeneralInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsGeneralInformation", HFILL }},
+ { &hf_umts_rrc_mbmsNeighbouringCellPTMRBInformation,
+ { "mbmsNeighbouringCellPTMRBInformation", "umts_rrc.mbmsNeighbouringCellPTMRBInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsNeighbouringCellPTMRBInformation", HFILL }},
+ { &hf_umts_rrc_mbmsUnmodifiedServicesInformation,
+ { "mbmsUnmodifiedServicesInformation", "umts_rrc.mbmsUnmodifiedServicesInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/mbmsUnmodifiedServicesInformation", HFILL }},
+ { &hf_umts_rrc_spare9,
+ { "spare9", "umts_rrc.spare9",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/spare9", HFILL }},
+ { &hf_umts_rrc_spare8,
+ { "spare8", "umts_rrc.spare8",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/spare8", HFILL }},
+ { &hf_umts_rrc_spare7,
+ { "spare7", "umts_rrc.spare7",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/spare7", HFILL }},
+ { &hf_umts_rrc_spare6,
+ { "spare6", "umts_rrc.spare6",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MCCH-MessageType/spare6", HFILL }},
+ { &hf_umts_rrc_message10,
+ { "message", "umts_rrc.message",
+ FT_UINT32, BASE_DEC, VALS(umts_rrc_MSCH_MessageType_vals), 0,
+ "MSCH-Message/message", HFILL }},
+ { &hf_umts_rrc_mbmsSchedulingInformation,
+ { "mbmsSchedulingInformation", "umts_rrc.mbmsSchedulingInformation",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "MSCH-MessageType/mbmsSchedulingInformation", HFILL }},
+
+/*--- End of included file: packet-umts_rrc-hfarr.c ---*/
+#line 101 "packet-umts_rrc-template.c"
+ };
+
+ /* List of subtrees */
+ static gint *ett[] = {
+ &ett_umts_rrc,
+
+/*--- Included file: packet-umts_rrc-ettarr.c ---*/
+#line 1 "packet-umts_rrc-ettarr.c"
+ &ett_umts_rrc_DL_DCCH_Message,
+ &ett_umts_rrc_DL_DCCH_MessageType,
+ &ett_umts_rrc_UL_DCCH_Message,
+ &ett_umts_rrc_UL_DCCH_MessageType,
+ &ett_umts_rrc_DL_CCCH_Message,
+ &ett_umts_rrc_DL_CCCH_MessageType,
+ &ett_umts_rrc_UL_CCCH_Message,
+ &ett_umts_rrc_UL_CCCH_MessageType,
+ &ett_umts_rrc_PCCH_Message,
+ &ett_umts_rrc_PCCH_MessageType,
+ &ett_umts_rrc_DL_SHCCH_Message,
+ &ett_umts_rrc_DL_SHCCH_MessageType,
+ &ett_umts_rrc_UL_SHCCH_Message,
+ &ett_umts_rrc_UL_SHCCH_MessageType,
+ &ett_umts_rrc_BCCH_FACH_Message,
+ &ett_umts_rrc_BCCH_FACH_MessageType,
+ &ett_umts_rrc_BCCH_BCH_Message,
+ &ett_umts_rrc_MCCH_Message,
+ &ett_umts_rrc_MCCH_MessageType,
+ &ett_umts_rrc_MSCH_Message,
+ &ett_umts_rrc_MSCH_MessageType,
+
+/*--- End of included file: packet-umts_rrc-ettarr.c ---*/
+#line 107 "packet-umts_rrc-template.c"
+ };
+
+
+ /* Register protocol */
+ proto_umts_rrc = proto_register_protocol(PNAME, PSNAME, PFNAME);
+ /* Register fields and subtrees */
+ proto_register_field_array(proto_umts_rrc, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+
+
+ register_dissector("umts_rrc", dissect_umts_rrc, proto_umts_rrc);
+
+
+}
+
+
+/*--- proto_reg_handoff_umts_rrc ---------------------------------------*/
+void
+proto_reg_handoff_umts_rrc(void)
+{
+
+ umts_rrc_handle = find_dissector("umts_rrc");
+
+}
+
+