forked from osmocom/wireshark
DOCSIS: Added Partial Service Downstream Channels TLV 49.6
Change-Id: Iac09d71a56024440a826ff9ca870c05eeee3a77b Reviewed-on: https://code.wireshark.org/review/30942 Reviewed-by: Anders Broman <a.broman58@gmail.com> Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
This commit is contained in:
parent
0946518780
commit
247e729d9e
|
@ -420,6 +420,7 @@ static int hf_docsis_rcc_rcv_ch_ctr_freq_asgn = -1;
|
|||
static int hf_docsis_rcc_rcv_ch_prim_ds_ch_ind = -1;
|
||||
|
||||
static int hf_docsis_tlv_rcc_id = -1;
|
||||
static int hf_docsis_tlv_rcc_partial_serv_down_chan_id = -1;
|
||||
static int hf_docsis_tlv_rcc_srcc_prim_ds_chan_assign_ds_ch_id = -1;
|
||||
static int hf_docsis_tlv_rcc_srcc_ds_chan_assign_ds_ch_id = -1;
|
||||
static int hf_docsis_tlv_rcc_srcc_ds_prof_assign_dcid = -1;
|
||||
|
@ -535,6 +536,7 @@ static gint ett_docsis_tlv_rcp_rcv_ch = -1;
|
|||
static gint ett_docsis_tlv_rcc = -1;
|
||||
static gint ett_docsis_tlv_rcc_rcv_mod_enc = -1;
|
||||
static gint ett_docsis_tlv_rcc_rcv_ch = -1;
|
||||
static gint ett_docsis_tlv_rcc_partial_serv_down_chan = -1;
|
||||
static gint ett_docsis_tlv_rcc_srcc = -1;
|
||||
static gint ett_docsis_tlv_rcc_srcc_prim_ds_assign = -1;
|
||||
static gint ett_docsis_tlv_rcc_srcc_ds_assign = -1;
|
||||
|
@ -4307,6 +4309,25 @@ dissect_rcc_rcv_ch(tvbuff_t * tvb, packet_info* pinfo, proto_tree *tree, int sta
|
|||
} /* while */
|
||||
}
|
||||
|
||||
static void
|
||||
dissect_rcc_partial_serv_down_chan(tvbuff_t * tvb, proto_tree *tree, int start, guint16 len)
|
||||
{
|
||||
proto_tree *rcc_partial_serv_down_chan_tree;
|
||||
proto_item *rcc_partial_serv_down_chan_item;
|
||||
int pos = start;
|
||||
int i = 0;
|
||||
|
||||
rcc_partial_serv_down_chan_tree =
|
||||
proto_tree_add_subtree_format(tree, tvb, start, len, ett_docsis_tlv_rcc_partial_serv_down_chan, &rcc_partial_serv_down_chan_item,
|
||||
".6 Partial Service Downstream Channels (Length = %u)", len);
|
||||
for (i=0; i< len; ++i)
|
||||
{
|
||||
proto_tree_add_item (rcc_partial_serv_down_chan_tree,
|
||||
hf_docsis_tlv_rcc_partial_serv_down_chan_id, tvb, pos+i,
|
||||
1, ENC_BIG_ENDIAN);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
dissect_rcc_srcc_prim_ds_ch_assign(tvbuff_t * tvb, proto_tree *tree, int start, guint16 len)
|
||||
{
|
||||
|
@ -4559,6 +4580,9 @@ dissect_rcc(tvbuff_t * tvb, packet_info * pinfo,
|
|||
vsif_tvb = tvb_new_subset_length (tvb, pos, length);
|
||||
call_dissector (docsis_vsif_handle, vsif_tvb, pinfo, rcc_tree);
|
||||
break;
|
||||
case TLV_RCC_PARTIAL_SERV_DOWN_CHAN:
|
||||
dissect_rcc_partial_serv_down_chan(tvb, rcc_tree, pos, length);
|
||||
break;
|
||||
case TLV_RCC_SRCC:
|
||||
dissect_rcc_srcc(tvb, pinfo, rcc_tree, pos, length);
|
||||
break;
|
||||
|
@ -7322,6 +7346,11 @@ proto_register_docsis_tlv (void)
|
|||
"RCC Error Encodings", HFILL}
|
||||
},
|
||||
#endif
|
||||
{&hf_docsis_tlv_rcc_partial_serv_down_chan_id,
|
||||
{"Downstream Channel ID", "docsis_tlv.rcc.partial_serv_down_chan.ds_ch_id",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
NULL, HFILL}
|
||||
},
|
||||
{&hf_docsis_tlv_rcc_srcc_prim_ds_chan_assign_ds_ch_id,
|
||||
{"Downstream Channel ID", "docsis_tlv.rcc.srcc.prim_ds_chann_assign.ds_ch_id",
|
||||
FT_UINT8, BASE_DEC, NULL, 0x0,
|
||||
|
@ -7675,6 +7704,7 @@ proto_register_docsis_tlv (void)
|
|||
&ett_docsis_tlv_rcc,
|
||||
&ett_docsis_tlv_rcc_rcv_mod_enc,
|
||||
&ett_docsis_tlv_rcc_rcv_ch,
|
||||
&ett_docsis_tlv_rcc_partial_serv_down_chan,
|
||||
&ett_docsis_tlv_rcc_srcc,
|
||||
&ett_docsis_tlv_rcc_srcc_prim_ds_assign,
|
||||
&ett_docsis_tlv_rcc_srcc_ds_assign,
|
||||
|
|
|
@ -407,6 +407,7 @@
|
|||
/* Define TLV_RCC sub-types
|
||||
* These are subtypes of TLV_RCP (49), and not common with TLV_RCP (48)
|
||||
*/
|
||||
#define TLV_RCC_PARTIAL_SERV_DOWN_CHAN 6
|
||||
#define TLV_RCC_SRCC 7
|
||||
#define TLV_RCC_PRIM_DOWN_CHAN 8
|
||||
|
||||
|
|
Loading…
Reference in New Issue