iFactor out init_{blk,snap}_hdr() - 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 6cb387cea51dc694f225ec04bdf1c5d02caf9dcb /scm/dedup/commit/6cb387cea51dc694f225ec04bdf1c5d02caf9dcb.gph bitreich.org 70 1parent 067e9ecb71b543b24683fc32bf03dc2e2874a55d /scm/dedup/commit/067e9ecb71b543b24683fc32bf03dc2e2874a55d.gph bitreich.org 70 hAuthor: sin URL:mailto:sin@2f30.org bitreich.org 70 iDate: Thu, 18 Apr 2019 00:35:29 +0100 Err bitreich.org 70 i Err bitreich.org 70 iFactor out init_{blk,snap}_hdr() Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M dedup.h | 2 ++ Err bitreich.org 70 i M dinit.c | 41 +++++-------------------------- Err bitreich.org 70 i M utils.c | 20 ++++++++++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i3 files changed, 28 insertions(+), 35 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/dedup.h b/dedup.h /scm/dedup/file/dedup.h.gph bitreich.org 70 i@@ -206,3 +206,5 @@ void str2bin(char *s, uint8_t *d); Err bitreich.org 70 i off_t xlseek(int fd, off_t offset, int whence); Err bitreich.org 70 i ssize_t xread(int fd, void *buf, size_t nbytes); Err bitreich.org 70 i ssize_t xwrite(int fd, const void *buf, size_t nbytes); Err bitreich.org 70 i+void init_blk_hdr(struct blk_hdr *hdr, int compr_algo, int hash_algo); Err bitreich.org 70 i+void init_snap_hdr(struct snap_hdr *hdr); Err bitreich.org 70 1diff --git a/dinit.c b/dinit.c /scm/dedup/file/dinit.c.gph bitreich.org 70 i@@ -28,37 +28,6 @@ int verbose; Err bitreich.org 70 i char *argv0; Err bitreich.org 70 i Err bitreich.org 70 i static void Err bitreich.org 70 i-init_blk_hdr(void) Err bitreich.org 70 i-{ Err bitreich.org 70 i- blk_hdr.flags = (VER_MAJ << VER_MAJ_SHIFT) | VER_MIN; Err bitreich.org 70 i- blk_hdr.flags |= compr_algo << COMPR_ALGO_SHIFT; Err bitreich.org 70 i- blk_hdr.flags |= hash_algo << HASH_ALGO_SHIFT; Err bitreich.org 70 i- blk_hdr.size = BLK_HDR_SIZE; Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static void Err bitreich.org 70 i-save_blk_hdr(void) Err bitreich.org 70 i-{ Err bitreich.org 70 i- xlseek(sfd, 0, SEEK_SET); Err bitreich.org 70 i- write_blk_hdr(sfd, &blk_hdr); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static void Err bitreich.org 70 i-init_snap_hdr(void) Err bitreich.org 70 i-{ Err bitreich.org 70 i- snap_hdr.flags = (VER_MAJ << VER_MAJ_SHIFT) | VER_MIN; Err bitreich.org 70 i- snap_hdr.size = SNAP_HDR_SIZE; Err bitreich.org 70 i- snap_hdr.st.min_blk_size = UINT64_MAX; Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static void Err bitreich.org 70 i-save_snap_hdr(void) Err bitreich.org 70 i-{ Err bitreich.org 70 i- xlseek(ifd, 0, SEEK_SET); Err bitreich.org 70 i- write_snap_hdr(ifd, &snap_hdr); Err bitreich.org 70 i-} Err bitreich.org 70 i- Err bitreich.org 70 i-static void Err bitreich.org 70 i init(void) Err bitreich.org 70 i { Err bitreich.org 70 i int flags; Err bitreich.org 70 i@@ -76,15 +45,17 @@ init(void) Err bitreich.org 70 i flock(sfd, LOCK_NB | LOCK_EX) < 0) Err bitreich.org 70 i err(1, "flock"); Err bitreich.org 70 i Err bitreich.org 70 i- init_snap_hdr(); Err bitreich.org 70 i- init_blk_hdr(); Err bitreich.org 70 i+ init_snap_hdr(&snap_hdr); Err bitreich.org 70 i+ init_blk_hdr(&blk_hdr, compr_algo, hash_algo); Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i static void Err bitreich.org 70 i term(void) Err bitreich.org 70 i { Err bitreich.org 70 i- save_blk_hdr(); Err bitreich.org 70 i- save_snap_hdr(); Err bitreich.org 70 i+ xlseek(ifd, 0, SEEK_SET); Err bitreich.org 70 i+ write_snap_hdr(ifd, &snap_hdr); Err bitreich.org 70 i+ xlseek(sfd, 0, SEEK_SET); Err bitreich.org 70 i+ write_blk_hdr(sfd, &blk_hdr); Err bitreich.org 70 i Err bitreich.org 70 i fsync(sfd); Err bitreich.org 70 i fsync(ifd); Err bitreich.org 70 1diff --git a/utils.c b/utils.c /scm/dedup/file/utils.c.gph bitreich.org 70 i@@ -6,6 +6,9 @@ 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 void Err bitreich.org 70 i str2bin(char *s, uint8_t *d) Err bitreich.org 70 i { Err bitreich.org 70 i@@ -65,3 +68,20 @@ xwrite(int fd, const void *buf, size_t nbytes) Err bitreich.org 70 i } Err bitreich.org 70 i return total; Err bitreich.org 70 i } Err bitreich.org 70 i+ Err bitreich.org 70 i+void Err bitreich.org 70 i+init_blk_hdr(struct blk_hdr *hdr, int compr_algo, int hash_algo) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ hdr->flags = (VER_MAJ << VER_MAJ_SHIFT) | VER_MIN; Err bitreich.org 70 i+ hdr->flags |= compr_algo << COMPR_ALGO_SHIFT; Err bitreich.org 70 i+ hdr->flags |= hash_algo << HASH_ALGO_SHIFT; Err bitreich.org 70 i+ hdr->size = BLK_HDR_SIZE; Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 i+void Err bitreich.org 70 i+init_snap_hdr(struct snap_hdr *hdr) Err bitreich.org 70 i+{ Err bitreich.org 70 i+ hdr->flags = (VER_MAJ << VER_MAJ_SHIFT) | VER_MIN; Err bitreich.org 70 i+ hdr->size = SNAP_HDR_SIZE; Err bitreich.org 70 i+ hdr->st.min_blk_size = UINT64_MAX; Err bitreich.org 70 i+} Err bitreich.org 70 .