25 #ifndef __MOTR_CKSUM_H__ 26 #define __MOTR_CKSUM_H__ 32 #include <openssl/md5.h> 36 #define m0_cksum_print(buf, seg, dbuf, msg) \ 38 struct m0_vec *vec = &(buf)->ov_vec; \ 39 char *dst = (char *)(buf)->ov_buf[seg]; \ 40 char *data = (char *)(dbuf)->ov_buf[seg]; \ 41 M0_LOG(M0_DEBUG, msg " count[%d] = %"PRIu64 \ 42 " cksum = %c%c data = %c%c", \ 43 seg, vec->v_count[seg], dst[0], dst[1], data[0],data[1]); \ 53 #define M0_CALC_PAD(size, alignment) ( size%alignment ? (((size/alignment + 1 ) * alignment) - size) : 0) 94 MD5_DIGEST_LENGTH), 32)];
112 sizeof(MD5_CTX)+MD5_DIGEST_LENGTH), 32)];
156 unsigned char *pi_value_without_seed);
203 unsigned char *pi_value_without_seed);
unsigned char * curr_context[DATA_UNIT_COUNT]
unsigned char pimd5_value[MD5_DIGEST_LENGTH]
m0_bindex_t pis_data_unit_offset
char pi_md5c_pad[M0_CALC_PAD((sizeof(struct m0_pi_hdr)+sizeof(MD5_CTX)+MD5_DIGEST_LENGTH), 32)]
unsigned char pimd5c_value[MD5_DIGEST_LENGTH]
char pimd5_pad[M0_CALC_PAD((sizeof(struct m0_pi_hdr)+MD5_DIGEST_LENGTH), 32)]
struct m0_pi_hdr pimd5_hdr
M0_BASSERT(M0_PI_TYPE_MAX<=8)
static struct m0_bufvec bvec
M0_INTERNAL uint64_t m0_calculate_cksum_size(struct m0_generic_pi *pi)
struct m0_pdclust_instance pi
#define M0_CALC_PAD(size, alignment)
struct m0_pi_hdr pimd5c_hdr
M0_INTERNAL uint64_t max_cksum_size(void)
M0_INTERNAL int m0_calculate_md5_inc_context(struct m0_md5_inc_context_pi *pi, struct m0_pi_seed *seed, struct m0_bufvec *bvec, enum m0_pi_calc_flag flag, unsigned char *curr_context, unsigned char *pi_value_without_seed)
int m0_client_calculate_pi(struct m0_generic_pi *pi, struct m0_pi_seed *seed, struct m0_bufvec *bvec, enum m0_pi_calc_flag flag, unsigned char *curr_context, unsigned char *pi_value_without_seed)
bool m0_calc_verify_cksum_one_unit(struct m0_generic_pi *pi, struct m0_pi_seed *seed, struct m0_bufvec *bvec)
unsigned char pimd5c_prev_context[sizeof(MD5_CTX)]