]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
hdlcdrv: Fix CRC calculation.
authorMicah Dowty <micah@navi.cx>
Thu, 24 Jul 2008 06:46:31 +0000 (23:46 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 1 Aug 2008 19:42:58 +0000 (12:42 -0700)
[ Upstream commit ae6134bdf3197206fba95563d755d2fa50d90ddd ]

This is a trivial patch against the hdlcdrv module that fixes its CRC
calculation. The finished CRC was overwriting the first two bytes of
each packet rather than being appended to the end.

I've tested this with 2.6.8 and 2.6.10-rc1, but hdlcdrv hasn't changed
much recently so it should work with many other kernel versions.

Signed-off-by: Micah Dowty <micah@navi.cx>
Acked-by: Thomas Sailer <t.sailer@alumni.ethz.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/net/hamradio/hdlcdrv.c

index ae9629fa6882bb1dd2181e804b9a881a6c49c962..c258a0586e611d641c134f53114c76df0025ec66 100644 (file)
@@ -88,6 +88,7 @@
 static inline void append_crc_ccitt(unsigned char *buffer, int len)
 {
        unsigned int crc = crc_ccitt(0xffff, buffer, len) ^ 0xffff;
+       buffer += len;
        *buffer++ = crc;
        *buffer++ = crc >> 8;
 }