Package: mtkbabel
Version: 0.8.3.1-1
Severity: normal
Tags: patch upstream

Sometimes it happens that a packet is received with bad checksum.
Which means, the next packet received will be considered out-of-order.
And every next packet as well. To cope with that, we need to
re-request the packet we're still waiting for.

A patch attached which solves this problem.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.3.0-trunk-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_GB.UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages mtkbabel depends on:
ii  libdevice-serialport-perl  1.04-2+b3
ii  libtimedate-perl           1.2000-1

mtkbabel recommends no packages.

mtkbabel suggests no packages.

-- no debconf information

-- debsums errors found:
debsums: changed file /usr/bin/mtkbabel (from mtkbabel package)
Description: Retry when an out-of-order packet received.
 Sometimes it happens that a packet is received with bad checksum.
 Which means, the next packet received will be considered out-of-order.
 And every next packet as well. To cope with that, we re-request the
 packet we're still waiting for.
Author: Andrew Shadura <bugzi...@tut.by>

--- a/mtkbabel
+++ b/mtkbabel
@@ -750,6 +750,7 @@
 
     if ($pkt_offset != $log_offset) {
         printf("ERROR: Chunk out of sequence: expected %08X, got %08X\n", 
$log_offset, $pkt_offset) if ($debug >= $LOG_ERR);
+        $offset = $log_offset - $SIZEOF_CHUNK;
     } else {
         printf("Saving log data, offset: 0x%08X\n", $log_offset) if ($debug >= 
$LOG_INFO);
         # Convert the string of hex values into binary data.

Reply via email to