From c2141c6064ddf5283937c7f77468bf2396787804 Mon Sep 17 00:00:00 2001 From: Jacob Erlbeck Date: Wed, 13 Jan 2016 15:55:01 +0100 Subject: edge: Workaround to fix decoding of EGPRS_AckNack_w_len_t The presence of the LENGTH field adds an additional offset which breaks the related M_SERIALIZE in gsm_rlcmac.cpp. In that case, the Desc in EGPRS_AckNack_t is being cast to EGPRS_AckNack_w_len_t and then ((EGPRS_AckNack_w_len_t *)Desc)->Desc is filled with the parsed data, which is a platform dependant number of bytes apart the real Desc struct. Remove LENGTH field from EGPRS_AckNack_w_len_t so that the Desc field is the first field. Note that this is not a real fix. The rlcmac wireshark dissector still has the same declaration but doesn't seem to suffer from this problem. Sponsored-by: On-Waves ehf --- src/gsm_rlcmac.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/gsm_rlcmac.h b/src/gsm_rlcmac.h index 017b3112..49c596dc 100644 --- a/src/gsm_rlcmac.h +++ b/src/gsm_rlcmac.h @@ -476,7 +476,7 @@ typedef struct typedef struct { - guint8 LENGTH; + /* guint8 LENGTH; */ EGPRS_AckNack_Desc_t Desc; } EGPRS_AckNack_w_len_t; -- cgit v1.2.3