diff options
author | Denis Ovsienko <denis@ovsienko.info> | 2023-01-14 22:25:18 +0000 |
---|---|---|
committer | Denis Ovsienko <denis@ovsienko.info> | 2023-01-14 22:55:27 +0000 |
commit | 94f232c1ab0143c6da9fc00732b6b241b8abdf4c (patch) | |
tree | c53f0f7414dcc828b7e45d5c9ae089272cb7cb2a /checksum.c | |
parent | bdece165acc8dd20b445938da7ac3770bd28b8ee (diff) | |
download | tcpdump-94f232c1ab0143c6da9fc00732b6b241b8abdf4c.tar.gz |
Remove init_crc10_table() and the entourage.
As Guy Harris points out in bug report GH #1022, the function has been a
busy no-op since commit e6c39e6 in 2010. While at it, fixup the Python
code to work on Python 3:
for i in range(len(crc_table)/8):
TypeError: 'float' object cannot be interpreted as an integer
Diffstat (limited to 'checksum.c')
-rw-r--r-- | checksum.c | 33 |
1 files changed, 1 insertions, 32 deletions
@@ -44,7 +44,7 @@ for i in range(256): accum ^= 0x633 crc_table.append(accum) -for i in range(len(crc_table)/8): +for i in range(int(len(crc_table)/8)): for j in range(8): sys.stdout.write("0x%04x, " % crc_table[i*8+j]) sys.stdout.write("\n") @@ -86,29 +86,6 @@ static const uint16_t crc10_table[256] = 0x021e, 0x002d, 0x004b, 0x0278, 0x0087, 0x02b4, 0x02d2, 0x00e1 }; -static void -init_crc10_table(void) -{ -#define CRC10_POLYNOMIAL 0x633 - int i, j; - uint16_t accum; - uint16_t verify_crc10_table[256]; - - for ( i = 0; i < 256; i++ ) - { - accum = ((unsigned short) i << 2); - for ( j = 0; j < 8; j++ ) - { - if ((accum <<= 1) & 0x400) accum ^= CRC10_POLYNOMIAL; - } - verify_crc10_table[i] = accum; - } - assert(memcmp(verify_crc10_table, - crc10_table, - sizeof(verify_crc10_table)) == 0); -#undef CRC10_POLYNOMIAL -} - uint16_t verify_crc10_cksum(uint16_t accum, const u_char *p, int length) { @@ -123,14 +100,6 @@ verify_crc10_cksum(uint16_t accum, const u_char *p, int length) return accum; } -/* precompute checksum tables */ -void -init_checksum(void) { - - init_crc10_table(); - -} - /* * Creates the OSI Fletcher checksum. See 8473-1, Appendix C, section C.3. * The checksum field of the passed PDU does not need to be reset to zero. |