Subversion使用哪些算法(SHA1、MD5等)来检测数据是否损坏?(例如,由于磁盘故障)
svn_checksum_t *
svn_checksum_create(svn_checksum_kind_t kind,
apr_pool_t *pool)
{
svn_checksum_t *checksum;
switch (kind)
{
case svn_checksum_md5:
case svn_checksum_sha1:
checksum = apr_pcalloc(pool, sizeof(*checksum) + DIGESTSIZE(kind));
checksum->digest = (unsigned char *)checksum + sizeof(*checksum);
checksum->kind = kind;
return checksum;
default:
return NULL;
}
}
对于当前版本(1.8.x),使用svn info
显示的校验和为SHA-1,即如果文件未被修改,则sha1sum {file}
应该与svn info
中的校验和匹配。