• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/CommonCrypto-60049/libcn/

Lines Matching defs:crc

26 #include "crc.h"
30 crc_reverse_init(crcInfoPtr crc)
32 dispatch_once(&crc->table_init, ^{
33 gen_std_crc_table(crc);
35 return crc->descriptor->def.parms.initial_value;
39 crc_table_value8(uint8_t *table, uint8_t p, uint8_t crc) {
40 return table[(crc ^ p) & 0xff] ^ (crc >> 8);
44 crc_table_value16(uint16_t *table, uint8_t p, uint16_t crc) {
45 return table[(crc ^ p) & 0xff] ^ (crc >> 8);
49 crc_table_value32(uint32_t *table, uint8_t p, uint32_t crc) {
50 return table[(crc ^ p) & 0xff] ^ (crc >> 8);
54 crc_table_value64(uint64_t *table, uint8_t p, uint64_t crc) {
55 return table[(crc ^ p) & 0xffLL] ^ (crc >> 8);
59 crc_reverse_update(crcInfoPtr crc, uint8_t *p, size_t len, uint64_t current)
62 switch (crc->descriptor->def.parms.width) {
63 case 1: current = crc_table_value8(crc->table.bytes, *p, (uint8_t) current); break;
64 case 2: current = crc_table_value16(crc->table.b16, *p, (uint16_t) current); break;
65 case 4: current = crc_table_value32(crc->table.b32, *p, (uint32_t) current); break;
66 case 8: current = crc_table_value64(crc->table.b64, *p, current); break;
74 crc_reverse_final(crcInfoPtr crc, uint64_t current)
76 return current ^ crc->descriptor->def.parms.final_xor;
80 crc_reverse_oneshot(crcInfoPtr crc, uint8_t *p, size_t len)
82 dispatch_once(&crc->table_init, ^{
83 gen_std_crc_table(crc);
85 uint64_t current = crc->descriptor->def.parms.initial_value;
87 switch (crc->descriptor->def.parms.width) {
88 case 1: current = crc_table_value8(crc->table.bytes, *p, (uint8_t) current); break;
89 case 2: current = crc_table_value16(crc->table.b16, *p, (uint16_t) current); break;
90 case 4: current = crc_table_value32(crc->table.b32, *p, (uint32_t) current); break;
91 case 8: current = crc_table_value64(crc->table.b64, *p, current); break;
95 return current ^ crc->descriptor->def.parms.final_xor;