From 13c7e5ef299f4f6b38cd81c924bdf3eca691d691 Mon Sep 17 00:00:00 2001 From: antirez Date: Sun, 2 Oct 2011 14:05:29 +0200 Subject: [PATCH] Exact variant of CRC16 specified into crc16.c --- src/crc16.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/crc16.c b/src/crc16.c index 37fb4ca7..6ba7f244 100644 --- a/src/crc16.c +++ b/src/crc16.c @@ -28,7 +28,20 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* CRC16 implementation acording to CCITT standards */ +/* CRC16 implementation acording to CCITT standards. + * + * Note by @antirez: this is actually the XMODEM CRC 16 algorithm, using the + * following parameters: + * + * Name : "XMODEM", also known as "ZMODEM", "CRC-16/ACORN" + * Width : 16 bit + * Poly : 1021 (That is actually x^16 + x^12 + x^5 + 1) + * Initialization : 0000 + * Reflect Input byte : False + * Reflect Output CRC : False + * Xor constant to output CRC : 0000 + * Output for "123456789" : 31C3 + */ static const uint16_t crc16tab[256]= { 0x0000,0x1021,0x2042,0x3063,0x4084,0x50a5,0x60c6,0x70e7, -- 2.47.2