aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-umts_fp.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2012-05-30 14:04:45 +0000
committerAnders Broman <anders.broman@ericsson.com>2012-05-30 14:04:45 +0000
commit79e91685b75e6dab696ed180af1756c9a49b5e46 (patch)
tree4e160b6548965caefefcda60dbf46c319f9161c5 /epan/dissectors/packet-umts_fp.c
parenta307c8318d59eab44120af2ba6d9c3d5d703c9e3 (diff)
Stab at DCH 31 dissection.
svn path=/trunk/; revision=42915
Diffstat (limited to 'epan/dissectors/packet-umts_fp.c')
-rw-r--r--epan/dissectors/packet-umts_fp.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/epan/dissectors/packet-umts_fp.c b/epan/dissectors/packet-umts_fp.c
index 96694ba2a4..0f34432f55 100644
--- a/epan/dissectors/packet-umts_fp.c
+++ b/epan/dissectors/packet-umts_fp.c
@@ -3125,7 +3125,7 @@ static gboolean heur_dissect_fp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
static fp_info *fp_set_per_packet_inf_from_conv(umts_fp_conversation_info_t *p_conv_data, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree _U_)
{
fp_info *fpi;
- guint8 tfi;
+ guint8 tfi, c_t;
int offset = 0, i;
gboolean is_control_frame;
umts_mac_info *macinf;
@@ -3232,7 +3232,25 @@ static fp_info *fp_set_per_packet_inf_from_conv(umts_fp_conversation_info_t *p_c
macinf->ctmux[0] = 1;
macinf->content[0] = MAC_CONTENT_DCCH;
p_add_proto_data(pinfo->fd, proto_umts_mac, macinf);
- }
+
+ /* Set RLC data */
+ /* Peek at C/T, different RLC params for different logical channels */
+ c_t = tvb_get_guint8(tvb,offset);
+ rlcinf = se_new0(rlc_info);
+ /* Make configurable ?(avaliable in NBAP?) */
+ /* urnti[MAX_RLC_CHANS] */
+ if(c_t == 0 ){
+ rlcinf->mode[0] = RLC_UM;
+ }else{
+ rlcinf->mode[0] = RLC_AM;
+ }
+ /* rbid[MAX_RLC_CHANS] */
+ rlcinf->li_size[0] = RLC_LI_7BITS;
+ rlcinf->ciphered[0] = FALSE;
+ rlcinf->deciphered[0] = FALSE;
+
+ p_add_proto_data(pinfo->fd, proto_rlc, rlcinf);
+ }
/* Set offset to point to first TFI
* the Number of TFI's = number of DCH's in the flow
*/