lkml.org 
[lkml]   [2011]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] tty/n_gsm: fix bug in CRC calculation for gsm1 mode
On Sun, 27 Mar 2011 04:05:00 +0400
Mikhail Kshevetskiy <mikhail.kshevetskiy@gmail.com> wrote:

> Problem description:
> gsm_queue() calculate a CRC for arrived frames. As a last step of
> CRC calculation it call
>
> gsm->fcs = gsm_fcs_add(gsm->fcs, gsm->received_fcs);
>
> This work perfectly for the case of GSM0 mode as gsm->received_fcs
> contain the last piece of data required to generate final CRC.
>
> gsm->received_fcs is not used for GSM1 mode. Thus we put an
> additional byte to CRC calculation. As result we get a wrong CRC
> and reject incoming frame.
>
> Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@gmail.com>

Acked-by: Alan Cox <alan@linux.intel.com>

(This wants cleaning up better as Mikhael also says but this patch is
clear and unlike a big clean up a better base point for a stable fix and
can be reworked further)


\
 
 \ /
  Last update: 2011-03-31 14:13    [W:0.279 / U:0.276 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site