/* Does the CRC calculation over a string specified by length (allows 00 inside string) */
uint8_t calculate_crc8_itu(char *p, unsigned int length);
uint8_t calculate_crc8_atm(char *p, unsigned int length);
uint8_t calculate_crc8_ccitt(char *p, unsigned int length);
uint8_t calculate_crc8_maxim(char *p, unsigned int length);
uint8_t calculate_crc8(char *p, unsigned int length);
uint8_t calculate_crc8_icode(char *p, unsigned int length);
uint8_t calculate_crc8_j1850(char *p, unsigned int length);
uint8_t calculate_crc8_wcdma(char *p, unsigned int length);
uint8_t calculate_crc8_rohc(char *p, unsigned int length);
uint8_t calculate_crc8_darc(char *p, unsigned int length);
uint16_t calculate_crc16_Buypass(char *p, unsigned int length);
uint16_t calculate_crc16_DDS_110(char *p, unsigned int length);
uint16_t calculate_crc16_EN_13757(char *p, unsigned int length);
uint16_t calculate_crc16_Teledisk(char *p, unsigned int length);
uint16_t calculate_crc16(char *p, unsigned int length);
uint16_t calculate_crc16_Modbus(char *p, unsigned int length);
uint16_t calculate_crc16_Maxim(char *p, unsigned int length);
uint16_t calculate_crc16_USB(char *p, unsigned int length);
uint16_t calculate_crc16_T10_DIF(char *p, unsigned int length);
uint16_t calculate_crc16_Dect_X(char *p, unsigned int length);
uint16_t calculate_crc16_Dect_R(char *p, unsigned int length);
uint16_t calculate_crc16_sick(char *p, unsigned int length);
uint16_t calculate_crc16_DNP(char *p, unsigned int length);
uint16_t calculate_crc16_Ccitt_Xmodem(char *p, unsigned int length);
uint16_t calculate_crc16_Ccitt_FFFF(char *p, unsigned int length);
uint16_t calculate_crc16_Ccitt_1D0F(char *p, unsigned int length);
uint16_t calculate_crc16_Genibus(char *p, unsigned int length);
uint16_t calculate_crc16_Kermit(char *p, unsigned int length);
uint16_t calculate_crc16_X25(char *p, unsigned int length);
uint16_t calculate_crc16_MCRF4XX(char *p, unsigned int length);
uint16_t calculate_crc16_Riello(char *p, unsigned int length);
uint16_t calculate_chk16_Fletcher(char *p, unsigned int length);
uint32_t calculate_crc24_flexray_a(char *p, unsigned int length);
uint32_t calculate_crc24_flexray_b(char *p, unsigned int length);
uint32_t calculate_crc24_r64(char *p, unsigned int length);
uint32_t calculate_crc32(char *p, unsigned int length);
uint32_t calculate_crc32_jamcrc(char *p, unsigned int length);
uint32_t calculate_crc32_c(char *p, unsigned int length);
uint32_t calculate_crc32_d(char *p, unsigned int length);
uint32_t calculate_crc32_bzip2(char *p, unsigned int length);
uint32_t calculate_crc32_mpeg2(char *p, unsigned int length);
uint32_t calculate_crc32_posix(char *p, unsigned int length);
uint32_t calculate_crc32_k(char *p, unsigned int length);
uint32_t calculate_crc32_q(char *p, unsigned int length);
uint32_t calculate_crc32_xfer(char *p, unsigned int length);
uint64_t calculate_crc40_gsm(char *p, unsigned int length);
uint64_t calculate_crc64(char *p, unsigned int length);
uint64_t calculate_crc64_1b(char *p, unsigned int length);
uint64_t calculate_crc64_we(char *p, unsigned int length);
uint64_t calculate_crc64_jones(char *p, unsigned int length);