瀏覽代碼

hdlcdrv: Fix CRC calculation.

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>
Micah Dowty 17 年之前
父節點
當前提交
ae6134bdf3
共有 1 個文件被更改,包括 1 次插入0 次删除
  1. 1 0
      drivers/net/hamradio/hdlcdrv.c

+ 1 - 0
drivers/net/hamradio/hdlcdrv.c

@@ -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;
 }