iFactor out hashes to separate files - 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 c5abbf4d7c2a0129c74f15540e47d58cbf09fb67 /scm/dedup/commit/c5abbf4d7c2a0129c74f15540e47d58cbf09fb67.gph bitreich.org 70 1parent 6b656b00b35636ec242e9a9af7b8ede7467515a3 /scm/dedup/commit/6b656b00b35636ec242e9a9af7b8ede7467515a3.gph bitreich.org 70 hAuthor: sin URL:mailto:sin@2f30.org bitreich.org 70 iDate: Fri, 12 Apr 2019 13:42:59 +0100 Err bitreich.org 70 i Err bitreich.org 70 iFactor out hashes to separate files Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M Makefile | 8 ++++++++ Err bitreich.org 70 i M dedup.h | 20 ++++++++++++++++++++ Err bitreich.org 70 i A hash-blake2b.c | 26 ++++++++++++++++++++++++++ Err bitreich.org 70 i A hash-blake2bp.c | 26 ++++++++++++++++++++++++++ Err bitreich.org 70 i A hash-blake2s.c | 26 ++++++++++++++++++++++++++ Err bitreich.org 70 i A hash-blake2sp.c | 26 ++++++++++++++++++++++++++ Err bitreich.org 70 i M hash.c | 90 +------------------------------ Err bitreich.org 70 i Err bitreich.org 70 i7 files changed, 134 insertions(+), 88 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/Makefile b/Makefile /scm/dedup/file/Makefile.gph bitreich.org 70 i@@ -24,6 +24,10 @@ SRC = \ Err bitreich.org 70 i compress-none.c \ Err bitreich.org 70 i compress-snappy.c \ Err bitreich.org 70 i compress.c \ Err bitreich.org 70 i+ hash-blake2b.c \ Err bitreich.org 70 i+ hash-blake2bp.c \ Err bitreich.org 70 i+ hash-blake2s.c \ Err bitreich.org 70 i+ hash-blake2sp.c \ Err bitreich.org 70 i hash.c \ Err bitreich.org 70 i icache.c \ Err bitreich.org 70 i pack.c \ Err bitreich.org 70 i@@ -42,6 +46,10 @@ OBJ = \ Err bitreich.org 70 i compress-none.o \ Err bitreich.org 70 i compress-snappy.o \ Err bitreich.org 70 i compress.o \ Err bitreich.org 70 i+ hash-blake2b.o \ Err bitreich.org 70 i+ hash-blake2bp.o \ Err bitreich.org 70 i+ hash-blake2s.o \ Err bitreich.org 70 i+ hash-blake2sp.o \ Err bitreich.org 70 i hash.o \ Err bitreich.org 70 i icache.o \ Err bitreich.org 70 i pack.o \ Err bitreich.org 70 1diff --git a/dedup.h b/dedup.h /scm/dedup/file/dedup.h.gph bitreich.org 70 i@@ -145,6 +145,26 @@ size_t decompr(struct compr_ctx *ctx, const void *in, void *out, Err bitreich.org 70 i int compr_final(struct compr_ctx *ctx); Err bitreich.org 70 i int compr_name2type(char *name); Err bitreich.org 70 i Err bitreich.org 70 i+/* hash-blake2b.c */ Err bitreich.org 70 i+int blake2bi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i+int blake2bu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i+int blake2bf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i+ Err bitreich.org 70 i+/* hash-blake2bp.c */ Err bitreich.org 70 i+int blake2bpi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i+int blake2bpu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i+int blake2bpf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i+ Err bitreich.org 70 i+/* hash-blake2s.c */ Err bitreich.org 70 i+int blake2si(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i+int blake2su(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i+int blake2sf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i+ Err bitreich.org 70 i+/* hash-blake2sp.c */ Err bitreich.org 70 i+int blake2spi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i+int blake2spu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i+int blake2spf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i+ Err bitreich.org 70 i /* hash.c */ Err bitreich.org 70 i int hash_init(struct hash_ctx *ctx, int type, size_t n); Err bitreich.org 70 i int hash_update(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 1diff --git a/hash-blake2b.c b/hash-blake2b.c /scm/dedup/file/hash-blake2b.c.gph bitreich.org 70 i@@ -0,0 +1,26 @@ Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include "blake2.h" Err bitreich.org 70 i+#include "dedup.h" Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2b_init(&ctx->u.blake2b_ctx, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2b_update(&ctx->u.blake2b_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2b_final(&ctx->u.blake2b_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 1diff --git a/hash-blake2bp.c b/hash-blake2bp.c /scm/dedup/file/hash-blake2bp.c.gph bitreich.org 70 i@@ -0,0 +1,26 @@ Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include "blake2.h" Err bitreich.org 70 i+#include "dedup.h" Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bpi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2bp_init(&ctx->u.blake2bp_ctx, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bpu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2bp_update(&ctx->u.blake2bp_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2bpf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2bp_final(&ctx->u.blake2bp_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 1diff --git a/hash-blake2s.c b/hash-blake2s.c /scm/dedup/file/hash-blake2s.c.gph bitreich.org 70 i@@ -0,0 +1,26 @@ Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include "blake2.h" Err bitreich.org 70 i+#include "dedup.h" Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2si(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2s_init(&ctx->u.blake2s_ctx, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2su(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2s_update(&ctx->u.blake2s_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2sf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2s_final(&ctx->u.blake2s_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 1diff --git a/hash-blake2sp.c b/hash-blake2sp.c /scm/dedup/file/hash-blake2sp.c.gph bitreich.org 70 i@@ -0,0 +1,26 @@ Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i+#include "blake2.h" Err bitreich.org 70 i+#include "dedup.h" Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2spi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2sp_init(&ctx->u.blake2sp_ctx, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2spu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2sp_update(&ctx->u.blake2sp_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+int Err bitreich.org 70 i+blake2spf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ return blake2sp_final(&ctx->u.blake2sp_ctx, buf, n); Err bitreich.org 70 i+} Err bitreich.org 70 1diff --git a/hash.c b/hash.c /scm/dedup/file/hash.c.gph bitreich.org 70 i@@ -1,3 +1,5 @@ Err bitreich.org 70 i+#include Err bitreich.org 70 i+ Err bitreich.org 70 i #include Err bitreich.org 70 i #include Err bitreich.org 70 i #include Err bitreich.org 70 i@@ -6,22 +8,6 @@ Err bitreich.org 70 i #include "blake2.h" Err bitreich.org 70 i #include "dedup.h" Err bitreich.org 70 i Err bitreich.org 70 i-static int blake2bi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i-static int blake2bu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i-static int blake2bf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i- Err bitreich.org 70 i-static int blake2bpi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i-static int blake2bpu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i-static int blake2bpf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i- Err bitreich.org 70 i-static int blake2si(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i-static int blake2su(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i-static int blake2sf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i- Err bitreich.org 70 i-static int blake2spi(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i-static int blake2spu(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i-static int blake2spf(struct hash_ctx *ctx, void *buf, size_t n); Err bitreich.org 70 i- Err bitreich.org 70 i static struct hash_ops { Err bitreich.org 70 i int (*init)(struct hash_ctx *ctx, size_t n); Err bitreich.org 70 i int (*update)(struct hash_ctx *ctx, const void *buf, size_t n); Err bitreich.org 70 i@@ -60,78 +46,6 @@ static struct algomap { Err bitreich.org 70 i { .name = NULL }, Err bitreich.org 70 i }; Err bitreich.org 70 i Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2b_init(&ctx->u.blake2b_ctx, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2b_update(&ctx->u.blake2b_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2b_final(&ctx->u.blake2b_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bpi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2bp_init(&ctx->u.blake2bp_ctx, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bpu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2bp_update(&ctx->u.blake2bp_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2bpf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2bp_final(&ctx->u.blake2bp_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2si(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2s_init(&ctx->u.blake2s_ctx, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2su(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2s_update(&ctx->u.blake2s_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2sf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2s_final(&ctx->u.blake2s_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2spi(struct hash_ctx *ctx, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2sp_init(&ctx->u.blake2sp_ctx, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2spu(struct hash_ctx *ctx, const void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2sp_update(&ctx->u.blake2sp_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static int Err bitreich.org 70 i-blake2spf(struct hash_ctx *ctx, void *buf, size_t n) Err bitreich.org 70 i-{ Err bitreich.org 70 i- return blake2sp_final(&ctx->u.blake2sp_ctx, buf, n); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i int Err bitreich.org 70 i hash_init(struct hash_ctx *ctx, int type, size_t n) Err bitreich.org 70 i { Err bitreich.org 70 .