aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-btle.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-btle.c')
-rw-r--r--epan/dissectors/packet-btle.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/epan/dissectors/packet-btle.c b/epan/dissectors/packet-btle.c
index 5fe247f0c1..ecf942bcef 100644
--- a/epan/dissectors/packet-btle.c
+++ b/epan/dissectors/packet-btle.c
@@ -297,7 +297,6 @@ typedef struct _connection_info_t {
/* Connection information */
/* Data used on the first pass to get info from previous frame, result will be in per_packet_data */
guint first_data_frame_seen : 1;
- guint nextexpectedseqnum : 1;
direction_info_t direction_info[3]; /* UNKNOWN, MASTER_SLAVE and SLAVE_MASTER */
} connection_info_t;
@@ -947,20 +946,15 @@ dissect_btle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
if (!connection_info->first_data_frame_seen) {
connection_info->first_data_frame_seen = 1;
btle_frame_info->retransmit = 0;
- connection_info->nextexpectedseqnum = 0;
+ connection_info->direction_info[BTLE_DIR_MASTER_SLAVE].prev_seq_num = 0;
+ connection_info->direction_info[BTLE_DIR_SLAVE_MASTER].prev_seq_num = 1;
}
else {
- guint8 nextexpectedseqnum = !!(oct & 0x4);
guint8 seq_num = !!(oct & 0x8);
- if ((seq_num == connection_info->nextexpectedseqnum) &&
- (seq_num != connection_info->direction_info[direction].prev_seq_num)) {
- /*
- * SN is equal to previous packet (in connection) NESN and
- * SN is not equal to previous packet (in same direction) SN.
- */
+ if (seq_num != connection_info->direction_info[direction].prev_seq_num) {
+ /* SN is not equal to previous packet (in same direction) SN */
btle_frame_info->retransmit = 0;
- connection_info->nextexpectedseqnum = nextexpectedseqnum;
}
else {
btle_frame_info->retransmit = 1;
@@ -2028,7 +2022,7 @@ proto_register_btle(void)
{ &ei_missing_fragment_start,
{ "btle.missing_fragment_start", PI_SEQUENCE, PI_WARN, "Missing Fragment Start", EXPFILL }},
{ &ei_retransmit,
- { "btle.retransmit", PI_SEQUENCE, PI_WARN, "Retransmission", EXPFILL }},
+ { "btle.retransmit", PI_SEQUENCE, PI_NOTE, "Retransmission", EXPFILL }},
};
static gint *ett[] = {