summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2012-11-09 12:25:14 +0000
committerAnders Broman <anders.broman@ericsson.com>2012-11-09 12:25:14 +0000
commit6b3f9ae3729261e61d3aff3e5a2283d9ce999b34 (patch)
tree3057da78aa60ad34ab9af722b57edd436e627458
parent17ded750f26d97c7debb3f463fa64357a2ff61af (diff)
downloadwireshark-6b3f9ae3729261e61d3aff3e5a2283d9ce999b34.tar.gz
Copy over:
Revision 45950 -Fix dissection of NAS security parameters to/from E-UTRA svn path=/trunk-1.8/; revision=45982
-rw-r--r--asn1/lte-rrc/lte-rrc.cnf104
-rw-r--r--asn1/lte-rrc/packet-lte-rrc-template.c3
-rw-r--r--epan/dissectors/packet-lte-rrc.c107
3 files changed, 110 insertions, 104 deletions
diff --git a/asn1/lte-rrc/lte-rrc.cnf b/asn1/lte-rrc/lte-rrc.cnf
index 4b1d8644a3..a5d24c8473 100644
--- a/asn1/lte-rrc/lte-rrc.cnf
+++ b/asn1/lte-rrc/lte-rrc.cnf
@@ -26,7 +26,7 @@ HandoverPreparationInformation
UERadioAccessCapabilityInformation
BCCH-BCH-Message @bcch.bch
BCCH-DL-SCH-Message @bcch.dl.sch
-MCCH-Message @mcch
+MCCH-Message @mcch
PCCH-Message @pcch
DL-CCCH-Message @dl.ccch
DL-DCCH-Message @dl.dcch
@@ -567,26 +567,28 @@ if(ue_eutra_cap_tvb){
#.FN_BODY Handover/nas-SecurityParamFromEUTRA VAL_PTR = &nas_sec_param_from_eutra_tvb
tvbuff_t *nas_sec_param_from_eutra_tvb = NULL;
guint32 length;
- proto_item *item;
proto_tree *subtree;
%(DEFAULT_BODY)s
- length = tvb_length(nas_sec_param_from_eutra_tvb);
- item = proto_tree_add_text(tree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA");
- subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam);
- de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ if (nas_sec_param_from_eutra_tvb) {
+ length = tvb_length(nas_sec_param_from_eutra_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam);
+ proto_tree_add_text(subtree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA");
+ de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ }
#.FN_BODY SecurityConfigHO/handoverType/interRAT/nas-SecurityParamToEUTRA VAL_PTR = &nas_sec_param_to_eutra_tvb
tvbuff_t *nas_sec_param_to_eutra_tvb = NULL;
guint32 length;
- proto_item *item;
proto_tree *subtree;
%(DEFAULT_BODY)s
- length = tvb_length(nas_sec_param_to_eutra_tvb);
- item = proto_tree_add_text(tree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA");
- subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam);
- de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ if (nas_sec_param_to_eutra_tvb) {
+ length = tvb_length(nas_sec_param_to_eutra_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam);
+ proto_tree_add_text(subtree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA");
+ de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ }
#.FN_BODY SI-OrPSI-GERAN VAL_PTR = &lte_rrc_si_or_psi_geran_val
%(DEFAULT_BODY)s
@@ -899,161 +901,161 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(&lte_rrc_duration_val)
#.FN_HDR MasterInformationBlock
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock");
#.FN_HDR SystemInformation
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformation ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformation");
#.FN_HDR SystemInformationBlockType1
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformationBlockType1 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformationBlockType1");
#.FN_HDR MBSFNAreaConfiguration-r9
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBSFNAreaConfiguration-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBSFNAreaConfiguration-r9");
#.FN_HDR MBMSCountingRequest-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingRequest-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingRequest-r10");
#.FN_HDR Paging
-col_append_str(actx->pinfo->cinfo, COL_INFO, "Paging ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "Paging");
#.FN_HDR RRCConnectionReestablishment
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishment ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishment");
#.FN_HDR RRCConnectionReestablishmentReject
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentReject ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentReject");
#.FN_HDR RRCConnectionReject
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReject ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReject");
#.FN_HDR RRCConnectionSetup
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetup ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetup");
#.FN_HDR CSFBParametersResponseCDMA2000
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersResponseCDMA2000 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersResponseCDMA2000");
#.FN_HDR DLInformationTransfer
-col_append_str(actx->pinfo->cinfo, COL_INFO, "DLInformationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "DLInformationTransfer");
#.FN_HDR HandoverFromEUTRAPreparationRequest
-col_append_str(actx->pinfo->cinfo, COL_INFO, "HandoverFromEUTRAPreparationRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "HandoverFromEUTRAPreparationRequest");
#.FN_HDR MobilityFromEUTRACommand
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MobilityFromEUTRACommand ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MobilityFromEUTRACommand");
#.FN_HDR RRCConnectionReconfiguration
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfiguration ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfiguration");
#.FN_HDR RRCConnectionRelease
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRelease ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRelease");
#.FN_HDR SecurityModeCommand
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeCommand ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeCommand");
#.FN_HDR UECapabilityEnquiry
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityEnquiry ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityEnquiry");
#.FN_HDR CounterCheck
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheck ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheck");
#.FN_HDR UEInformationRequest-r9
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationRequest-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationRequest-r9");
#.FN_HDR LoggedMeasurementConfiguration-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "LoggedMeasurementConfiguration-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "LoggedMeasurementConfiguration-r10");
#.FN_HDR RNReconfiguration-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfiguration-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfiguration-r10");
#.FN_HDR RRCConnectionReestablishmentRequest
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentRequest");
#.FN_HDR RRCConnectionRequest
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRequest");
#.FN_HDR CSFBParametersRequestCDMA2000
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersRequestCDMA2000 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersRequestCDMA2000");
#.FN_HDR MeasurementReport
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MeasurementReport ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MeasurementReport");
#.FN_HDR RRCConnectionReconfigurationComplete
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfigurationComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfigurationComplete");
#.FN_HDR RRCConnectionReestablishmentComplete
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentComplete");
#.FN_HDR RRCConnectionSetupComplete
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetupComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetupComplete");
#.FN_HDR SecurityModeComplete
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeComplete");
#.FN_HDR SecurityModeFailure
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeFailure ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeFailure");
#.FN_HDR UECapabilityInformation
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityInformation ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityInformation");
#.FN_HDR ULHandoverPreparationTransfer
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ULHandoverPreparationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ULHandoverPreparationTransfer");
#.FN_HDR ULInformationTransfer
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ULInformationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ULInformationTransfer");
#.FN_HDR CounterCheckResponse
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheckResponse ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheckResponse");
#.FN_HDR UEInformationResponse-r9
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationResponse-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationResponse-r9");
#.FN_HDR ProximityIndication-r9
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ProximityIndication-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ProximityIndication-r9");
#.FN_HDR RNReconfigurationComplete-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfigurationComplete-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfigurationComplete-r10");
#.FN_HDR MBMSCountingResponse-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingResponse-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingResponse-r10");
#.FN_HDR InterFreqRSTDMeasurementIndication-r10
-col_append_str(actx->pinfo->cinfo, COL_INFO, "InterFreqRSTDMeasurementIndication-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "InterFreqRSTDMeasurementIndication-r10");
diff --git a/asn1/lte-rrc/packet-lte-rrc-template.c b/asn1/lte-rrc/packet-lte-rrc-template.c
index 4cab7109a7..2a5f4795f9 100644
--- a/asn1/lte-rrc/packet-lte-rrc-template.c
+++ b/asn1/lte-rrc/packet-lte-rrc-template.c
@@ -22,7 +22,7 @@
*
* 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.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
*/
@@ -2174,6 +2174,7 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc_featureGroupIndRel10,
&ett_lte_rrc_neighCellConfig,
&ett_lte_rrc_absTimeInfo,
+ &ett_lte_rrc_nas_SecurityParam
};
diff --git a/epan/dissectors/packet-lte-rrc.c b/epan/dissectors/packet-lte-rrc.c
index 632dc48a75..bdcf04a753 100644
--- a/epan/dissectors/packet-lte-rrc.c
+++ b/epan/dissectors/packet-lte-rrc.c
@@ -30,7 +30,7 @@
*
* 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.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
*/
@@ -4373,7 +4373,7 @@ static const per_sequence_t MasterInformationBlock_sequence[] = {
static int
dissect_lte_rrc_MasterInformationBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MasterInformationBlock");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MasterInformationBlock, MasterInformationBlock_sequence);
@@ -8168,7 +8168,7 @@ static const per_sequence_t SystemInformation_sequence[] = {
static int
dissect_lte_rrc_SystemInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformation ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformation");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_SystemInformation, SystemInformation_sequence);
@@ -8659,7 +8659,7 @@ static const per_sequence_t SystemInformationBlockType1_sequence[] = {
static int
dissect_lte_rrc_SystemInformationBlockType1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformationBlockType1 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SystemInformationBlockType1");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_SystemInformationBlockType1, SystemInformationBlockType1_sequence);
@@ -8987,7 +8987,7 @@ static const per_sequence_t MBSFNAreaConfiguration_r9_sequence[] = {
static int
dissect_lte_rrc_MBSFNAreaConfiguration_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBSFNAreaConfiguration-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBSFNAreaConfiguration-r9");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MBSFNAreaConfiguration_r9, MBSFNAreaConfiguration_r9_sequence);
@@ -9067,7 +9067,7 @@ static const per_sequence_t MBMSCountingRequest_r10_sequence[] = {
static int
dissect_lte_rrc_MBMSCountingRequest_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingRequest-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingRequest-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MBMSCountingRequest_r10, MBMSCountingRequest_r10_sequence);
@@ -9392,7 +9392,7 @@ static const per_sequence_t Paging_sequence[] = {
static int
dissect_lte_rrc_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "Paging ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "Paging");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_Paging, Paging_sequence);
@@ -13992,7 +13992,7 @@ static const per_sequence_t RRCConnectionReestablishment_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReestablishment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishment ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishment");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReestablishment, RRCConnectionReestablishment_sequence);
@@ -14086,7 +14086,7 @@ static const per_sequence_t RRCConnectionReestablishmentReject_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReestablishmentReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentReject ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentReject");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReestablishmentReject, RRCConnectionReestablishmentReject_sequence);
@@ -14248,7 +14248,7 @@ static const per_sequence_t RRCConnectionReject_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReject ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReject");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReject, RRCConnectionReject_sequence);
@@ -14378,7 +14378,7 @@ static const per_sequence_t RRCConnectionSetup_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionSetup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetup ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetup");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionSetup, RRCConnectionSetup_sequence);
@@ -14570,7 +14570,7 @@ static const per_sequence_t CSFBParametersResponseCDMA2000_sequence[] = {
static int
dissect_lte_rrc_CSFBParametersResponseCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersResponseCDMA2000 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersResponseCDMA2000");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_CSFBParametersResponseCDMA2000, CSFBParametersResponseCDMA2000_sequence);
@@ -14743,7 +14743,7 @@ static const per_sequence_t DLInformationTransfer_sequence[] = {
static int
dissect_lte_rrc_DLInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "DLInformationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "DLInformationTransfer");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_DLInformationTransfer, DLInformationTransfer_sequence);
@@ -14944,7 +14944,7 @@ static const per_sequence_t HandoverFromEUTRAPreparationRequest_sequence[] = {
static int
dissect_lte_rrc_HandoverFromEUTRAPreparationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "HandoverFromEUTRAPreparationRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "HandoverFromEUTRAPreparationRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_HandoverFromEUTRAPreparationRequest, HandoverFromEUTRAPreparationRequest_sequence);
@@ -15026,16 +15026,17 @@ static int
dissect_lte_rrc_T_nas_SecurityParamFromEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
tvbuff_t *nas_sec_param_from_eutra_tvb = NULL;
guint32 length;
- proto_item *item;
proto_tree *subtree;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
1, 1, FALSE, &nas_sec_param_from_eutra_tvb);
- length = tvb_length(nas_sec_param_from_eutra_tvb);
- item = proto_tree_add_text(tree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA");
- subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam);
- de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ if (nas_sec_param_from_eutra_tvb) {
+ length = tvb_length(nas_sec_param_from_eutra_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam);
+ proto_tree_add_text(subtree, nas_sec_param_from_eutra_tvb, 0, length, "NAS security parameters from E-UTRA");
+ de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ }
return offset;
@@ -15502,7 +15503,7 @@ static const per_sequence_t MobilityFromEUTRACommand_sequence[] = {
static int
dissect_lte_rrc_MobilityFromEUTRACommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MobilityFromEUTRACommand ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MobilityFromEUTRACommand");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MobilityFromEUTRACommand, MobilityFromEUTRACommand_sequence);
@@ -17657,16 +17658,17 @@ static int
dissect_lte_rrc_T_nas_SecurityParamToEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
tvbuff_t *nas_sec_param_to_eutra_tvb = NULL;
guint32 length;
- proto_item *item;
proto_tree *subtree;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
6, 6, FALSE, &nas_sec_param_to_eutra_tvb);
- length = tvb_length(nas_sec_param_to_eutra_tvb);
- item = proto_tree_add_text(tree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA");
- subtree = proto_item_add_subtree(item, ett_lte_rrc_nas_SecurityParam);
- de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ if (nas_sec_param_to_eutra_tvb) {
+ length = tvb_length(nas_sec_param_to_eutra_tvb);
+ subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam);
+ proto_tree_add_text(subtree, nas_sec_param_to_eutra_tvb, 0, length, "NAS security parameters to E-UTRA");
+ de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0);
+ }
return offset;
@@ -18482,7 +18484,7 @@ static const per_sequence_t RRCConnectionReconfiguration_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReconfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfiguration ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfiguration");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReconfiguration, RRCConnectionReconfiguration_sequence);
@@ -19106,7 +19108,7 @@ static const per_sequence_t RRCConnectionRelease_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRelease ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRelease");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionRelease, RRCConnectionRelease_sequence);
@@ -19242,7 +19244,7 @@ static const per_sequence_t SecurityModeCommand_sequence[] = {
static int
dissect_lte_rrc_SecurityModeCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeCommand ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeCommand");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_SecurityModeCommand, SecurityModeCommand_sequence);
@@ -19403,7 +19405,7 @@ static const per_sequence_t UECapabilityEnquiry_sequence[] = {
static int
dissect_lte_rrc_UECapabilityEnquiry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityEnquiry ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityEnquiry");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_UECapabilityEnquiry, UECapabilityEnquiry_sequence);
@@ -19565,7 +19567,7 @@ static const per_sequence_t CounterCheck_sequence[] = {
static int
dissect_lte_rrc_CounterCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheck ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheck");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_CounterCheck, CounterCheck_sequence);
@@ -19718,7 +19720,7 @@ static const per_sequence_t UEInformationRequest_r9_sequence[] = {
static int
dissect_lte_rrc_UEInformationRequest_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationRequest-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationRequest-r9");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_UEInformationRequest_r9, UEInformationRequest_r9_sequence);
@@ -19975,7 +19977,7 @@ static const per_sequence_t LoggedMeasurementConfiguration_r10_sequence[] = {
static int
dissect_lte_rrc_LoggedMeasurementConfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "LoggedMeasurementConfiguration-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "LoggedMeasurementConfiguration-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_LoggedMeasurementConfiguration_r10, LoggedMeasurementConfiguration_r10_sequence);
@@ -20493,7 +20495,7 @@ static const per_sequence_t RNReconfiguration_r10_sequence[] = {
static int
dissect_lte_rrc_RNReconfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfiguration-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfiguration-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RNReconfiguration_r10, RNReconfiguration_r10_sequence);
@@ -20706,7 +20708,7 @@ static const per_sequence_t RRCConnectionReestablishmentRequest_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReestablishmentRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReestablishmentRequest, RRCConnectionReestablishmentRequest_sequence);
@@ -20828,7 +20830,7 @@ static const per_sequence_t RRCConnectionRequest_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRequest ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionRequest, RRCConnectionRequest_sequence);
@@ -20993,7 +20995,7 @@ static const per_sequence_t CSFBParametersRequestCDMA2000_sequence[] = {
static int
dissect_lte_rrc_CSFBParametersRequestCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersRequestCDMA2000 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CSFBParametersRequestCDMA2000");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_CSFBParametersRequestCDMA2000, CSFBParametersRequestCDMA2000_sequence);
@@ -21848,7 +21850,7 @@ static const per_sequence_t MeasurementReport_sequence[] = {
static int
dissect_lte_rrc_MeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MeasurementReport ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MeasurementReport");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MeasurementReport, MeasurementReport_sequence);
@@ -21989,7 +21991,7 @@ static const per_sequence_t RRCConnectionReconfigurationComplete_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfigurationComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReconfigurationComplete");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReconfigurationComplete, RRCConnectionReconfigurationComplete_sequence);
@@ -22144,7 +22146,7 @@ static const per_sequence_t RRCConnectionReestablishmentComplete_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionReestablishmentComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionReestablishmentComplete");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionReestablishmentComplete, RRCConnectionReestablishmentComplete_sequence);
@@ -22364,7 +22366,7 @@ static const per_sequence_t RRCConnectionSetupComplete_sequence[] = {
static int
dissect_lte_rrc_RRCConnectionSetupComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetupComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RRCConnectionSetupComplete");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RRCConnectionSetupComplete, RRCConnectionSetupComplete_sequence);
@@ -22459,7 +22461,7 @@ static const per_sequence_t SecurityModeComplete_sequence[] = {
static int
dissect_lte_rrc_SecurityModeComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeComplete ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeComplete");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_SecurityModeComplete, SecurityModeComplete_sequence);
@@ -22554,7 +22556,7 @@ static const per_sequence_t SecurityModeFailure_sequence[] = {
static int
dissect_lte_rrc_SecurityModeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeFailure ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "SecurityModeFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_SecurityModeFailure, SecurityModeFailure_sequence);
@@ -22782,7 +22784,7 @@ static const per_sequence_t UECapabilityInformation_sequence[] = {
static int
dissect_lte_rrc_UECapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityInformation ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UECapabilityInformation");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_UECapabilityInformation, UECapabilityInformation_sequence);
@@ -22915,7 +22917,7 @@ static const per_sequence_t ULHandoverPreparationTransfer_sequence[] = {
static int
dissect_lte_rrc_ULHandoverPreparationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ULHandoverPreparationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ULHandoverPreparationTransfer");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_ULHandoverPreparationTransfer, ULHandoverPreparationTransfer_sequence);
@@ -23060,7 +23062,7 @@ static const per_sequence_t ULInformationTransfer_sequence[] = {
static int
dissect_lte_rrc_ULInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ULInformationTransfer ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ULInformationTransfer");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_ULInformationTransfer, ULInformationTransfer_sequence);
@@ -23196,7 +23198,7 @@ static const per_sequence_t CounterCheckResponse_sequence[] = {
static int
dissect_lte_rrc_CounterCheckResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheckResponse ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "CounterCheckResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_CounterCheckResponse, CounterCheckResponse_sequence);
@@ -23701,7 +23703,7 @@ static const per_sequence_t UEInformationResponse_r9_sequence[] = {
static int
dissect_lte_rrc_UEInformationResponse_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationResponse-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "UEInformationResponse-r9");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_UEInformationResponse_r9, UEInformationResponse_r9_sequence);
@@ -23861,7 +23863,7 @@ static const per_sequence_t ProximityIndication_r9_sequence[] = {
static int
dissect_lte_rrc_ProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "ProximityIndication-r9 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "ProximityIndication-r9");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_ProximityIndication_r9, ProximityIndication_r9_sequence);
@@ -23968,7 +23970,7 @@ static const per_sequence_t RNReconfigurationComplete_r10_sequence[] = {
static int
dissect_lte_rrc_RNReconfigurationComplete_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfigurationComplete-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "RNReconfigurationComplete-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_RNReconfigurationComplete_r10, RNReconfigurationComplete_r10_sequence);
@@ -24124,7 +24126,7 @@ static const per_sequence_t MBMSCountingResponse_r10_sequence[] = {
static int
dissect_lte_rrc_MBMSCountingResponse_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingResponse-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "MBMSCountingResponse-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_MBMSCountingResponse_r10, MBMSCountingResponse_r10_sequence);
@@ -24296,7 +24298,7 @@ static const per_sequence_t InterFreqRSTDMeasurementIndication_r10_sequence[] =
static int
dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-col_append_str(actx->pinfo->cinfo, COL_INFO, "InterFreqRSTDMeasurementIndication-r10 ");
+col_append_str(actx->pinfo->cinfo, COL_INFO, "InterFreqRSTDMeasurementIndication-r10");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10, InterFreqRSTDMeasurementIndication_r10_sequence);
@@ -35318,6 +35320,7 @@ void proto_register_lte_rrc(void) {
&ett_lte_rrc_featureGroupIndRel10,
&ett_lte_rrc_neighCellConfig,
&ett_lte_rrc_absTimeInfo,
+ &ett_lte_rrc_nas_SecurityParam
};
@@ -35353,7 +35356,7 @@ void proto_register_lte_rrc(void) {
/*--- End of included file: packet-lte-rrc-dis-reg.c ---*/
-#line 2197 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
+#line 2198 "../../asn1/lte-rrc/packet-lte-rrc-template.c"
}