Setup more flows, flow info is incomplete.
svn path=/trunk/; revision=42521
This commit is contained in:
parent
9141a4fbcb
commit
582c102f16
|
@ -497,6 +497,12 @@ guint32 payload_crc_value;
|
|||
#.FN_BODY CommonPhysicalChannelID VAL_PTR = &commonphysicalchannelid
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY E-DCH-MACdFlow-ID VAL_PTR = &e_dch_macdflow_id
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY HSDSCH-MACdFlow-ID VAL_PTR = &hsdsch_macdflow_id
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY BindingID VAL_PTR = ¶meter_tvb
|
||||
tvbuff_t *parameter_tvb=NULL;
|
||||
|
||||
|
@ -632,6 +638,109 @@ dch_id = 0xFFFFFFFF;
|
|||
set_umts_fp_ul_conv_data(conversation, actx->pinfo->fd->num, &dst_addr, BindingID_port, dch_id, nbap_fp_info_ul, nbap_fp_info_dl);
|
||||
}
|
||||
|
||||
|
||||
#.FN_BODY RL-Specific-E-DCH-Information-Item
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
||||
transportLayerAddress_ipv4 = 0;
|
||||
BindingID_port = 0;
|
||||
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
if (actx->pinfo->fd->flags.visited||transportLayerAddress_ipv4==0||BindingID_port == 0)
|
||||
{
|
||||
return offset;
|
||||
}
|
||||
SET_ADDRESS(&null_addr, AT_NONE, 0, NULL);
|
||||
|
||||
dst_addr.type=AT_IPv4;
|
||||
dst_addr.len=4;
|
||||
dst_addr.data=(guint8 *)&transportLayerAddress_ipv4;
|
||||
|
||||
conversation = find_conversation(actx->pinfo->fd->num,&dst_addr,
|
||||
&null_addr, PT_UDP, BindingID_port,
|
||||
0, NO_ADDR_B|NO_PORT_B);
|
||||
|
||||
if (conversation == NULL) {
|
||||
/* It's not part of any conversation - create a new one. */
|
||||
conversation = conversation_new(actx->pinfo->fd->num, &dst_addr,
|
||||
&null_addr, PT_UDP,BindingID_port ,
|
||||
0, NO_ADDR2|NO_PORT2);
|
||||
|
||||
/* Set dissector */
|
||||
conversation_set_dissector(conversation, fp_handle);
|
||||
}
|
||||
nbap_fp_info_ul = se_new0(fp_info);
|
||||
nbap_fp_info_ul->iface_type = IuB_Interface;
|
||||
nbap_fp_info_ul->division = Division_FDD;
|
||||
nbap_fp_info_ul->release = 7; /* Set values greater then the checks performed */
|
||||
nbap_fp_info_ul->release_year = 2006;
|
||||
nbap_fp_info_ul->release_month = 12;
|
||||
nbap_fp_info_ul->is_uplink = g_nbap_msg_info_for_fp.is_uplink;
|
||||
nbap_fp_info_ul->channel = CHANNEL_EDCH;
|
||||
nbap_fp_info_ul->dch_crc_present = g_nbap_msg_info_for_fp.dch_crc_present;
|
||||
nbap_fp_info_ul->edch_type = 0;
|
||||
|
||||
|
||||
if(actx->pinfo->link_dir==P2P_DIR_DL){
|
||||
/* For now have on fp_info_ul and on fp_info_dl, may not be needed */
|
||||
set_umts_fp_ul_conv_data(conversation, actx->pinfo->fd->num, &dst_addr, BindingID_port, e_dch_macdflow_id, nbap_fp_info_ul, nbap_fp_info_dl);
|
||||
}
|
||||
|
||||
|
||||
#.FN_BODY HSDSCH-MACdFlow-Specific-InfoItem
|
||||
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
||||
transportLayerAddress_ipv4 = 0;
|
||||
BindingID_port = 0;
|
||||
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
if (actx->pinfo->fd->flags.visited||transportLayerAddress_ipv4==0||BindingID_port == 0)
|
||||
{
|
||||
return offset;
|
||||
}
|
||||
SET_ADDRESS(&null_addr, AT_NONE, 0, NULL);
|
||||
|
||||
dst_addr.type=AT_IPv4;
|
||||
dst_addr.len=4;
|
||||
dst_addr.data=(guint8 *)&transportLayerAddress_ipv4;
|
||||
|
||||
conversation = find_conversation(actx->pinfo->fd->num,&dst_addr,
|
||||
&null_addr, PT_UDP, BindingID_port,
|
||||
0, NO_ADDR_B|NO_PORT_B);
|
||||
|
||||
if (conversation == NULL) {
|
||||
/* It's not part of any conversation - create a new one. */
|
||||
conversation = conversation_new(actx->pinfo->fd->num, &dst_addr,
|
||||
&null_addr, PT_UDP,BindingID_port ,
|
||||
0, NO_ADDR2|NO_PORT2);
|
||||
|
||||
/* Set dissector */
|
||||
conversation_set_dissector(conversation, fp_handle);
|
||||
}
|
||||
nbap_fp_info_ul = se_new0(fp_info);
|
||||
nbap_fp_info_ul->iface_type = IuB_Interface;
|
||||
nbap_fp_info_ul->division = Division_FDD;
|
||||
nbap_fp_info_ul->release = 7; /* Set values greater then the checks performed */
|
||||
nbap_fp_info_ul->release_year = 2006;
|
||||
nbap_fp_info_ul->release_month = 12;
|
||||
nbap_fp_info_ul->is_uplink = g_nbap_msg_info_for_fp.is_uplink;
|
||||
nbap_fp_info_ul->channel = CHANNEL_HSDSCH;
|
||||
nbap_fp_info_ul->dch_crc_present = g_nbap_msg_info_for_fp.dch_crc_present;
|
||||
nbap_fp_info_ul->hsdsch_entity = hs;
|
||||
|
||||
|
||||
if(actx->pinfo->link_dir==P2P_DIR_DL){
|
||||
/* For now have on fp_info_ul and on fp_info_dl, may not be needed */
|
||||
set_umts_fp_ul_conv_data(conversation, actx->pinfo->fd->num, &dst_addr, BindingID_port, hsdsch_macdflow_id, nbap_fp_info_ul, nbap_fp_info_dl);
|
||||
}
|
||||
|
||||
#.REGISTER_NEW
|
||||
|
||||
#NBAP-PROTOCOL-IES
|
||||
|
|
|
@ -91,7 +91,7 @@ static guint32 ProcedureCode;
|
|||
static guint32 ProtocolIE_ID;
|
||||
static guint32 ddMode;
|
||||
static const gchar *ProcedureID;
|
||||
static guint32 dch_id, commonphysicalchannelid;
|
||||
static guint32 dch_id, commonphysicalchannelid, e_dch_macdflow_id, hsdsch_macdflow_id;
|
||||
|
||||
/* Dissector tables */
|
||||
static dissector_table_t nbap_ies_dissector_table;
|
||||
|
|
|
@ -6476,7 +6476,7 @@ static guint32 ProcedureCode;
|
|||
static guint32 ProtocolIE_ID;
|
||||
static guint32 ddMode;
|
||||
static const gchar *ProcedureID;
|
||||
static guint32 dch_id, commonphysicalchannelid;
|
||||
static guint32 dch_id, commonphysicalchannelid, e_dch_macdflow_id, hsdsch_macdflow_id;
|
||||
|
||||
/* Dissector tables */
|
||||
static dissector_table_t nbap_ies_dissector_table;
|
||||
|
@ -8469,8 +8469,12 @@ dissect_nbap_Additional_EDCH_RL_Specific_Information_To_Setup_List(tvbuff_t *tvb
|
|||
|
||||
static int
|
||||
dissect_nbap_E_DCH_MACdFlow_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 501 "../../asn1/nbap/nbap.cnf"
|
||||
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
|
||||
0U, maxNrOfEDCHMACdFlows_1, NULL, FALSE);
|
||||
0U, maxNrOfEDCHMACdFlows_1, &e_dch_macdflow_id, FALSE);
|
||||
|
||||
|
||||
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
@ -8479,7 +8483,7 @@ dissect_nbap_E_DCH_MACdFlow_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
|
|||
|
||||
static int
|
||||
dissect_nbap_BindingID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 501 "../../asn1/nbap/nbap.cnf"
|
||||
#line 507 "../../asn1/nbap/nbap.cnf"
|
||||
tvbuff_t *parameter_tvb=NULL;
|
||||
|
||||
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||
|
@ -22576,8 +22580,12 @@ dissect_nbap_HSDSCH_Common_System_Information_ResponseFDD(tvbuff_t *tvb _U_, int
|
|||
|
||||
static int
|
||||
dissect_nbap_HSDSCH_MACdFlow_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 504 "../../asn1/nbap/nbap.cnf"
|
||||
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
|
||||
0U, maxNrOfMACdFlows_1, NULL, FALSE);
|
||||
0U, maxNrOfMACdFlows_1, &hsdsch_macdflow_id, FALSE);
|
||||
|
||||
|
||||
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
@ -22594,9 +22602,61 @@ static const per_sequence_t HSDSCH_MACdFlow_Specific_InfoItem_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_nbap_HSDSCH_MACdFlow_Specific_InfoItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 694 "../../asn1/nbap/nbap.cnf"
|
||||
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
||||
transportLayerAddress_ipv4 = 0;
|
||||
BindingID_port = 0;
|
||||
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_nbap_HSDSCH_MACdFlow_Specific_InfoItem, HSDSCH_MACdFlow_Specific_InfoItem_sequence);
|
||||
|
||||
|
||||
if (actx->pinfo->fd->flags.visited||transportLayerAddress_ipv4==0||BindingID_port == 0)
|
||||
{
|
||||
return offset;
|
||||
}
|
||||
SET_ADDRESS(&null_addr, AT_NONE, 0, NULL);
|
||||
|
||||
dst_addr.type=AT_IPv4;
|
||||
dst_addr.len=4;
|
||||
dst_addr.data=(guint8 *)&transportLayerAddress_ipv4;
|
||||
|
||||
conversation = find_conversation(actx->pinfo->fd->num,&dst_addr,
|
||||
&null_addr, PT_UDP, BindingID_port,
|
||||
0, NO_ADDR_B|NO_PORT_B);
|
||||
|
||||
if (conversation == NULL) {
|
||||
/* It's not part of any conversation - create a new one. */
|
||||
conversation = conversation_new(actx->pinfo->fd->num, &dst_addr,
|
||||
&null_addr, PT_UDP,BindingID_port ,
|
||||
0, NO_ADDR2|NO_PORT2);
|
||||
|
||||
/* Set dissector */
|
||||
conversation_set_dissector(conversation, fp_handle);
|
||||
}
|
||||
nbap_fp_info_ul = se_new0(fp_info);
|
||||
nbap_fp_info_ul->iface_type = IuB_Interface;
|
||||
nbap_fp_info_ul->division = Division_FDD;
|
||||
nbap_fp_info_ul->release = 7; /* Set values greater then the checks performed */
|
||||
nbap_fp_info_ul->release_year = 2006;
|
||||
nbap_fp_info_ul->release_month = 12;
|
||||
nbap_fp_info_ul->is_uplink = g_nbap_msg_info_for_fp.is_uplink;
|
||||
nbap_fp_info_ul->channel = CHANNEL_HSDSCH;
|
||||
nbap_fp_info_ul->dch_crc_present = g_nbap_msg_info_for_fp.dch_crc_present;
|
||||
nbap_fp_info_ul->hsdsch_entity = hs;
|
||||
|
||||
|
||||
if(actx->pinfo->link_dir==P2P_DIR_DL){
|
||||
/* For now have on fp_info_ul and on fp_info_dl, may not be needed */
|
||||
set_umts_fp_ul_conv_data(conversation, actx->pinfo->fd->num, &dst_addr, BindingID_port, hsdsch_macdflow_id, nbap_fp_info_ul, nbap_fp_info_dl);
|
||||
}
|
||||
|
||||
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
@ -27315,7 +27375,7 @@ static const per_sequence_t RL_Specific_DCH_Info_Item_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_nbap_RL_Specific_DCH_Info_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 577 "../../asn1/nbap/nbap.cnf"
|
||||
#line 583 "../../asn1/nbap/nbap.cnf"
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
@ -27378,6 +27438,7 @@ dch_id = 0xFFFFFFFF;
|
|||
|
||||
|
||||
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
@ -27406,9 +27467,61 @@ static const per_sequence_t RL_Specific_E_DCH_Information_Item_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_nbap_RL_Specific_E_DCH_Information_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 643 "../../asn1/nbap/nbap.cnf"
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
||||
transportLayerAddress_ipv4 = 0;
|
||||
BindingID_port = 0;
|
||||
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_nbap_RL_Specific_E_DCH_Information_Item, RL_Specific_E_DCH_Information_Item_sequence);
|
||||
|
||||
|
||||
if (actx->pinfo->fd->flags.visited||transportLayerAddress_ipv4==0||BindingID_port == 0)
|
||||
{
|
||||
return offset;
|
||||
}
|
||||
SET_ADDRESS(&null_addr, AT_NONE, 0, NULL);
|
||||
|
||||
dst_addr.type=AT_IPv4;
|
||||
dst_addr.len=4;
|
||||
dst_addr.data=(guint8 *)&transportLayerAddress_ipv4;
|
||||
|
||||
conversation = find_conversation(actx->pinfo->fd->num,&dst_addr,
|
||||
&null_addr, PT_UDP, BindingID_port,
|
||||
0, NO_ADDR_B|NO_PORT_B);
|
||||
|
||||
if (conversation == NULL) {
|
||||
/* It's not part of any conversation - create a new one. */
|
||||
conversation = conversation_new(actx->pinfo->fd->num, &dst_addr,
|
||||
&null_addr, PT_UDP,BindingID_port ,
|
||||
0, NO_ADDR2|NO_PORT2);
|
||||
|
||||
/* Set dissector */
|
||||
conversation_set_dissector(conversation, fp_handle);
|
||||
}
|
||||
nbap_fp_info_ul = se_new0(fp_info);
|
||||
nbap_fp_info_ul->iface_type = IuB_Interface;
|
||||
nbap_fp_info_ul->division = Division_FDD;
|
||||
nbap_fp_info_ul->release = 7; /* Set values greater then the checks performed */
|
||||
nbap_fp_info_ul->release_year = 2006;
|
||||
nbap_fp_info_ul->release_month = 12;
|
||||
nbap_fp_info_ul->is_uplink = g_nbap_msg_info_for_fp.is_uplink;
|
||||
nbap_fp_info_ul->channel = CHANNEL_EDCH;
|
||||
nbap_fp_info_ul->dch_crc_present = g_nbap_msg_info_for_fp.dch_crc_present;
|
||||
nbap_fp_info_ul->edch_type = 0;
|
||||
|
||||
|
||||
if(actx->pinfo->link_dir==P2P_DIR_DL){
|
||||
/* For now have on fp_info_ul and on fp_info_dl, may not be needed */
|
||||
set_umts_fp_ul_conv_data(conversation, actx->pinfo->fd->num, &dst_addr, BindingID_port, e_dch_macdflow_id, nbap_fp_info_ul, nbap_fp_info_dl);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return offset;
|
||||
}
|
||||
|
||||
|
@ -30944,7 +31057,7 @@ static const per_sequence_t RACH_ParametersItem_CTCH_SetupRqstFDD_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_nbap_RACH_ParametersItem_CTCH_SetupRqstFDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 516 "../../asn1/nbap/nbap.cnf"
|
||||
#line 522 "../../asn1/nbap/nbap.cnf"
|
||||
address dst_addr, null_addr;
|
||||
conversation_t *conversation;
|
||||
fp_info *nbap_fp_info_ul = NULL, *nbap_fp_info_dl = NULL;
|
||||
|
|
Loading…
Reference in New Issue