SMOLNET PORTAL home about changes
idup-check: Print hashes of corrupt blocks - dedup - deduplicating backup program	Err	bitreich.org	70
hgit clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/	URL:git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/	bitreich.org	70
1Log	/scm/dedup/log.gph	bitreich.org	70
1Files	/scm/dedup/files.gph	bitreich.org	70
1Refs	/scm/dedup/refs.gph	bitreich.org	70
1Tags	/scm/dedup/tag	bitreich.org	70
1README	/scm/dedup/file/README.gph	bitreich.org	70
1LICENSE	/scm/dedup/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit fb016d2858d1d77359c56f4d67070fc8386879b6	/scm/dedup/commit/fb016d2858d1d77359c56f4d67070fc8386879b6.gph	bitreich.org	70
1parent bfcf7e2d112888bb42b40e2d25211edc7375f8c5	/scm/dedup/commit/bfcf7e2d112888bb42b40e2d25211edc7375f8c5.gph	bitreich.org	70
hAuthor: sin <sin@2f30.org>	URL:mailto:sin@2f30.org	bitreich.org	70
iDate:   Sun,  5 May 2019 20:56:51 +0100	Err	bitreich.org	70
i	Err	bitreich.org	70
idup-check: Print hashes of corrupt blocks	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M dup-check.1                         |       3 +++	Err	bitreich.org	70
i  M dup-check.c                         |      14 +++++++++++++-	Err	bitreich.org	70
i	Err	bitreich.org	70
i2 files changed, 16 insertions(+), 1 deletion(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/dup-check.1 b/dup-check.1	/scm/dedup/file/dup-check.1.gph	bitreich.org	70
i@@ -19,6 +19,9 @@ This is done by recalculating the hash of	Err	bitreich.org	70
i all blocks contained in the snapshot and checking	Err	bitreich.org	70
i whether the recorded hash of each block matches the	Err	bitreich.org	70
i actual hash.	Err	bitreich.org	70
i+.sp	Err	bitreich.org	70
i+If a corrupt block is detected, the hash of the	Err	bitreich.org	70
i+block will be printed on standard output.	Err	bitreich.org	70
i .Sh OPTIONS	Err	bitreich.org	70
i .Bl -tag -width "-k keyfile"	Err	bitreich.org	70
i .It Fl k Ar keyfile	Err	bitreich.org	70
1diff --git a/dup-check.c b/dup-check.c	/scm/dedup/file/dup-check.c.gph	bitreich.org	70
i@@ -8,6 +8,8 @@	Err	bitreich.org	70
i #include <stdlib.h>	Err	bitreich.org	70
i #include <unistd.h>	Err	bitreich.org	70
i 	Err	bitreich.org	70
i+#include <sodium.h>	Err	bitreich.org	70
i+	Err	bitreich.org	70
i #include "arg.h"	Err	bitreich.org	70
i #include "block.h"	Err	bitreich.org	70
i #include "config.h"	Err	bitreich.org	70
i@@ -24,9 +26,19 @@ check(struct sctx *sctx, struct bctx *bctx)	Err	bitreich.org	70
i         unsigned char md[MDSIZE];	Err	bitreich.org	70
i         int n;	Err	bitreich.org	70
i 	Err	bitreich.org	70
i+        if (sodium_init() < 0)	Err	bitreich.org	70
i+                errx(1, "sodium_init: failed");	Err	bitreich.org	70
i+	Err	bitreich.org	70
i         while ((n = sget(sctx, md)) == MDSIZE) {	Err	bitreich.org	70
i-                if (bcheck(bctx, md) < 0)	Err	bitreich.org	70
i+                char mdstr[MDSIZE * 2 + 1];	Err	bitreich.org	70
i+                int r;	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+                if ((r = bcheck(bctx, md)) < 0) {	Err	bitreich.org	70
i                         berr("bcheck");	Err	bitreich.org	70
i+                } else if (r > 0) {	Err	bitreich.org	70
i+                        sodium_bin2hex(mdstr, sizeof(mdstr), md, MDSIZE);	Err	bitreich.org	70
i+                        puts(mdstr);	Err	bitreich.org	70
i+                }	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i         if (n < 0)	Err	bitreich.org	70
i                 serr("sget");	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/dedup/commit/fb016d2858d1d773...
Content-Typetext/plain; charset=utf-8