46 #ifndef HASHTABLE_NSTATS
66 int strong_len, rs_long_t sig_fsize);
73 rs_weak_sum_t weak_sum,
74 rs_strong_sum_t *strong_sum);
77 rs_long_t rs_signature_find_match(
rs_signature_t *sig, rs_weak_sum_t weak_sum,
78 void const *buf,
size_t len);
87 #define rs_signature_check(sig) do {\
88 assert(((sig)->magic == RS_BLAKE2_SIG_MAGIC && (sig)->strong_sum_len <= RS_BLAKE2_SUM_LENGTH)\
89 || ((sig)->magic == RS_MD4_SIG_MAGIC && (sig)->strong_sum_len <= RS_MD4_SUM_LENGTH));\
90 assert(0 < (sig)->block_len);\
91 assert(0 < (sig)->strong_sum_len && (sig)->strong_sum_len <= RS_MAX_STRONG_SUM_LENGTH);\
92 assert(0 <= (sig)->count && (sig)->count <= (sig)->size);\
93 assert(!(sig)->hashtable || (sig)->hashtable->count <= (sig)->count);\
97 static inline void rs_signature_calc_strong_sum(
rs_signature_t const *sig,
98 void const *buf,
size_t len,
102 rs_calc_blake2_sum(buf, len, sum);
104 rs_calc_md4_sum(buf, len, sum);