summaryrefslogtreecommitdiff
path: root/emit.c
diff options
context:
space:
mode:
authorMartin Pool <mbp@sourcefrog.net>2000-04-21 14:49:23 +0000
committerMartin Pool <mbp@sourcefrog.net>2000-04-21 14:49:23 +0000
commit8d1f2d6dcfe9ea572fecff58abb95b80ee0134f1 (patch)
tree1b230657391b37ac47b22ccdaa9638ec13a67572 /emit.c
parent46ec2746845ddc1bdbbec637f9b166ad5e8958cd (diff)
downloadlibrsync-8d1f2d6dcfe9ea572fecff58abb95b80ee0134f1.tar.gz
Add hsmdfour test driver.
Try to check file checksum during decode. Factor out the common code in test cases.
Diffstat (limited to 'emit.c')
-rw-r--r--emit.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/emit.c b/emit.c
index cd28ee5..90fd7be 100644
--- a/emit.c
+++ b/emit.c
@@ -66,8 +66,7 @@ int _hs_emit_eof(hs_write_fn_t write_fn, void *write_priv,
int
-_hs_emit_filesum(hs_write_fn_t write_fn, void *write_priv,
- char const *buf, uint32_t size)
+_hs_emit_checksum_cmd(hs_write_fn_t write_fn, void *write_priv, uint32_t size)
{
int ret;
@@ -80,6 +79,21 @@ _hs_emit_filesum(hs_write_fn_t write_fn, void *write_priv,
if (ret != 2)
return -1;
+ return 3;
+}
+
+
+
+int
+_hs_emit_filesum(hs_write_fn_t write_fn, void *write_priv,
+ char const *buf, uint32_t size)
+{
+ int ret;
+
+ ret = _hs_emit_checksum_cmd(write_fn, write_priv, size);
+ if (ret <= 0)
+ return -1;
+
ret = _hs_write_loop(write_fn, write_priv, buf, size);
if (ret != (int) size)
return -1;