summaryrefslogtreecommitdiff
path: root/checksum.c
diff options
context:
space:
mode:
authorDenis Ovsienko <denis@ovsienko.info>2023-01-14 22:25:18 +0000
committerDenis Ovsienko <denis@ovsienko.info>2023-01-14 22:55:27 +0000
commit94f232c1ab0143c6da9fc00732b6b241b8abdf4c (patch)
treec53f0f7414dcc828b7e45d5c9ae089272cb7cb2a /checksum.c
parentbdece165acc8dd20b445938da7ac3770bd28b8ee (diff)
downloadtcpdump-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.c33
1 files changed, 1 insertions, 32 deletions
diff --git a/checksum.c b/checksum.c
index e6e84a25..c5025082 100644
--- a/checksum.c
+++ b/checksum.c
@@ -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.