28LIBRSYNC_EXPORT
const int RS_MD4_SUM_LENGTH = 16;
29LIBRSYNC_EXPORT
const int RS_BLAKE2_SUM_LENGTH = 32;
32rs_weak_sum_t rs_calc_weak_sum(weaksum_kind_t kind,
void const *buf,
size_t len)
34 if (kind == RS_ROLLSUM) {
37 RollsumUpdate(&sum, buf, len);
38 return RollsumDigest(&sum);
42 rabinkarp_update(&sum, buf, len);
43 return rabinkarp_digest(&sum);
57void rs_calc_strong_sum(strongsum_kind_t kind,
void const *buf,
size_t len,
61 rs_mdfour((
unsigned char *)sum, buf, len);
64 blake2b_init(&ctx, RS_MAX_STRONG_SUM_LENGTH);
65 blake2b_update(&ctx, (
const uint8_t *)buf, len);
66 blake2b_final(&ctx, (uint8_t *)sum, RS_MAX_STRONG_SUM_LENGTH);