iMove error functions to misc.c so they can be reused - 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 a8beae9784fa77d57a05f35c0980d7504aea2fde /scm/dedup/commit/a8beae9784fa77d57a05f35c0980d7504aea2fde.gph bitreich.org 70
1parent ffaf068f318e080bdf7cfaf1232836b92f779315 /scm/dedup/commit/ffaf068f318e080bdf7cfaf1232836b92f779315.gph bitreich.org 70
hAuthor: sin <sin@2f30.org> URL:mailto:sin@2f30.org bitreich.org 70
iDate: Sun, 12 May 2019 11:52:09 +0100 Err bitreich.org 70
i Err bitreich.org 70
iMove error functions to misc.c so they can be reused Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M bcompress.c | 32 ++++++++++++++++---------------- Err bitreich.org 70
i M bencrypt.c | 32 ++++++++++++++++---------------- Err bitreich.org 70
i M block.c | 51 +++++++------------------------ Err bitreich.org 70
i M block.h | 4 ++-- Err bitreich.org 70
i M bstorage.c | 70 ++++++++++++++++---------------- Err bitreich.org 70
i M dup-check.c | 12 ++++++------ Err bitreich.org 70
i M dup-gc.c | 6 +++--- Err bitreich.org 70
i M dup-init.c | 4 ++-- Err bitreich.org 70
i M dup-pack.c | 12 ++++++------ Err bitreich.org 70
i M dup-rm.c | 12 ++++++------ Err bitreich.org 70
i M dup-unpack.c | 12 ++++++------ Err bitreich.org 70
i M misc.c | 31 +++++++++++++++++++++++++++++++ Err bitreich.org 70
i M misc.h | 2 ++ Err bitreich.org 70
i M snap.c | 76 ++++++++++--------------------- Err bitreich.org 70
i M snap.h | 4 ++-- Err bitreich.org 70
i Err bitreich.org 70
i15 files changed, 167 insertions(+), 193 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/bcompress.c b/bcompress.c /scm/dedup/file/bcompress.c.gph bitreich.org 70
i@@ -106,13 +106,13 @@ bccreat(struct bctx *bctx, char *path, int mode) Err bitreich.org 70
i } else if (strcasecmp(param.calgo, "lz4") == 0) { Err bitreich.org 70
i type = CDLZ4TYPE; Err bitreich.org 70
i } else { Err bitreich.org 70
i- bseterr("invalid compression type: %s", param.calgo); Err bitreich.org 70
i+ seterr("invalid compression type: %s", param.calgo); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bctx->cctx = calloc(1, sizeof(struct cctx)); Err bitreich.org 70
i if (bctx->cctx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i cctx = bctx->cctx; Err bitreich.org 70
i@@ -132,7 +132,7 @@ bcopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i Err bitreich.org 70
i bctx->cctx = calloc(1, sizeof(struct cctx)); Err bitreich.org 70
i if (bctx->cctx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i cctx = bctx->cctx; Err bitreich.org 70
i@@ -151,7 +151,7 @@ bcopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i } else { Err bitreich.org 70
i bencryptops()->close(bctx); Err bitreich.org 70
i free(cctx); Err bitreich.org 70
i- bseterr("invalid compression type: %s", param.calgo); Err bitreich.org 70
i+ seterr("invalid compression type: %s", param.calgo); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i return 0; Err bitreich.org 70
i@@ -174,13 +174,13 @@ bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i } else if (cctx->type == CDLZ4TYPE) { Err bitreich.org 70
i cn = LZ4_compressBound(n); Err bitreich.org 70
i } else { Err bitreich.org 70
i- bseterr("invalid compression type: %d", cctx->type); Err bitreich.org 70
i+ seterr("invalid compression type: %d", cctx->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i cbuf = malloc(CDSIZE + cn); Err bitreich.org 70
i if (cbuf == NULL) { Err bitreich.org 70
i- bseterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -190,7 +190,7 @@ bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i } else if (cctx->type == CDSNAPPYTYPE) { Err bitreich.org 70
i if (snappy_compress(buf, n, &cbuf[CDSIZE], &cn) != SNAPPY_OK) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("snappy_compress: failed"); Err bitreich.org 70
i+ seterr("snappy_compress: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i } else if (cctx->type == CDLZ4TYPE) { Err bitreich.org 70
i@@ -199,13 +199,13 @@ bcput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i ret = LZ4_compress_default(buf, &cbuf[CDSIZE], n, cn); Err bitreich.org 70
i if (ret < 0) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("LZ4_compress_default: failed"); Err bitreich.org 70
i+ seterr("LZ4_compress_default: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i cn = ret; Err bitreich.org 70
i } else { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("invalid compression type: %d", cctx->type); Err bitreich.org 70
i+ seterr("invalid compression type: %d", cctx->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -242,7 +242,7 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i Err bitreich.org 70
i cbuf = malloc(size); Err bitreich.org 70
i if (cbuf == NULL) { Err bitreich.org 70
i- bseterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -258,7 +258,7 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i un = cd.size; Err bitreich.org 70
i if (*n < un) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("buffer too small"); Err bitreich.org 70
i+ seterr("buffer too small"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i memcpy(buf, &cbuf[CDSIZE], un); Err bitreich.org 70
i@@ -266,20 +266,20 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i if (snappy_uncompressed_length(&cbuf[CDSIZE], cd.size, Err bitreich.org 70
i &un) != SNAPPY_OK) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("snappy_uncompressed_length: failed"); Err bitreich.org 70
i+ seterr("snappy_uncompressed_length: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (*n < un) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("buffer too small"); Err bitreich.org 70
i+ seterr("buffer too small"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (snappy_uncompress(&cbuf[CDSIZE], cd.size, buf, Err bitreich.org 70
i &un) != SNAPPY_OK) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("snappy_uncompress: failed"); Err bitreich.org 70
i+ seterr("snappy_uncompress: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i } else if (cd.type == CDLZ4TYPE) { Err bitreich.org 70
i@@ -288,13 +288,13 @@ bcget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i ret = LZ4_decompress_safe(&cbuf[CDSIZE], buf, cd.size, *n); Err bitreich.org 70
i if (ret < 0) { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("LZ4_decompress_safe: failed"); Err bitreich.org 70
i+ seterr("LZ4_decompress_safe: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i un = ret; Err bitreich.org 70
i } else { Err bitreich.org 70
i free(cbuf); Err bitreich.org 70
i- bseterr("invalid compression type: %d", cd.type); Err bitreich.org 70
i+ seterr("invalid compression type: %d", cd.type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
1diff --git a/bencrypt.c b/bencrypt.c /scm/dedup/file/bencrypt.c.gph bitreich.org 70
i@@ -107,24 +107,24 @@ becreat(struct bctx *bctx, char *path, int mode) Err bitreich.org 70
i } else if (strcasecmp(param.ealgo, "XChaCha20-Poly1305") == 0) { Err bitreich.org 70
i type = EDCHACHATYPE; Err bitreich.org 70
i } else { Err bitreich.org 70
i- bseterr("invalid encryption type: %s", param.ealgo); Err bitreich.org 70
i+ seterr("invalid encryption type: %s", param.ealgo); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i /* Ensure that if caller requested encryption, a key was provided */ Err bitreich.org 70
i if (type != EDNONETYPE && !param.keyloaded) { Err bitreich.org 70
i- bseterr("expected encryption key"); Err bitreich.org 70
i+ seterr("expected encryption key"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (sodium_init() < 0) { Err bitreich.org 70
i- bseterr("sodium_init: failed"); Err bitreich.org 70
i+ seterr("sodium_init: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bctx->ectx = calloc(1, sizeof(struct ectx)); Err bitreich.org 70
i if (bctx->ectx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i ectx = bctx->ectx; Err bitreich.org 70
i@@ -145,7 +145,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i Err bitreich.org 70
i bctx->ectx = calloc(1, sizeof(struct ectx)); Err bitreich.org 70
i if (bctx->ectx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i ectx = bctx->ectx; Err bitreich.org 70
i@@ -164,7 +164,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i else { Err bitreich.org 70
i bstorageops()->close(bctx); Err bitreich.org 70
i free(ectx); Err bitreich.org 70
i- bseterr("invalid encryption type: %s", param.ealgo); Err bitreich.org 70
i+ seterr("invalid encryption type: %s", param.ealgo); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -172,7 +172,7 @@ beopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i if (ectx->type != EDNONETYPE && !param.keyloaded) { Err bitreich.org 70
i bstorageops()->close(bctx); Err bitreich.org 70
i free(ectx); Err bitreich.org 70
i- bseterr("expected encryption key"); Err bitreich.org 70
i+ seterr("expected encryption key"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -194,13 +194,13 @@ beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i } else if (ectx->type == EDCHACHATYPE) { Err bitreich.org 70
i en = n + crypto_aead_xchacha20poly1305_ietf_ABYTES; Err bitreich.org 70
i } else { Err bitreich.org 70
i- bseterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i+ seterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i ebuf = malloc(EDSIZE + en); Err bitreich.org 70
i if (ebuf == NULL) { Err bitreich.org 70
i- bseterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -214,7 +214,7 @@ beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i randombytes_buf(ed.nonce, sizeof(ed.nonce)); Err bitreich.org 70
i } else { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i+ seterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i packed(ebuf, &ed); Err bitreich.org 70
i@@ -231,7 +231,7 @@ beput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i assert(elen == en); Err bitreich.org 70
i } else { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i+ seterr("invalid encryption type: %d", ectx->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -256,7 +256,7 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i Err bitreich.org 70
i ebuf = malloc(size); Err bitreich.org 70
i if (ebuf == NULL) { Err bitreich.org 70
i- bseterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -272,7 +272,7 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i dn = ed.size; Err bitreich.org 70
i if (*n < dn) { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("buffer too small"); Err bitreich.org 70
i+ seterr("buffer too small"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i memcpy(buf, &ebuf[EDSIZE], dn); Err bitreich.org 70
i@@ -283,7 +283,7 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i dn = ed.size - crypto_aead_xchacha20poly1305_ietf_ABYTES; Err bitreich.org 70
i if (*n < dn) { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("buffer too small"); Err bitreich.org 70
i+ seterr("buffer too small"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -294,14 +294,14 @@ beget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i ebuf, EDSIZE, Err bitreich.org 70
i ed.nonce, ectx->key) < 0) { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("authentication failed"); Err bitreich.org 70
i+ seterr("authentication failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i assert(dn == dlen); Err bitreich.org 70
i } else { Err bitreich.org 70
i free(ebuf); Err bitreich.org 70
i- bseterr("invalid encryption type: %d", ed.type); Err bitreich.org 70
i+ seterr("invalid encryption type: %d", ed.type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
1diff --git a/block.c b/block.c /scm/dedup/file/block.c.gph bitreich.org 70
i@@ -4,7 +4,6 @@ Err bitreich.org 70
i Err bitreich.org 70
i #include <errno.h> Err bitreich.org 70
i #include <fcntl.h> Err bitreich.org 70
i-#include <stdarg.h> Err bitreich.org 70
i #include <stdint.h> Err bitreich.org 70
i #include <stdio.h> Err bitreich.org 70
i #include <stdlib.h> Err bitreich.org 70
i@@ -12,22 +11,19 @@ Err bitreich.org 70
i Err bitreich.org 70
i #include "block.h" Err bitreich.org 70
i Err bitreich.org 70
i-#define NERRBUF 128 Err bitreich.org 70
i-static char errbuf[NERRBUF]; Err bitreich.org 70
i- Err bitreich.org 70
i int Err bitreich.org 70
i bcreat(char *path, int mode, struct bctx **bctx) Err bitreich.org 70
i { Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (path == NULL || bctx == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i *bctx = calloc(1, sizeof(**bctx)); Err bitreich.org 70
i if (*bctx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -45,13 +41,13 @@ bopen(char *path, int flags, int mode, struct bctx **bctx) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (path == NULL || bctx == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i *bctx = calloc(1, sizeof(**bctx)); Err bitreich.org 70
i if (*bctx == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -69,7 +65,7 @@ bput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL || buf == NULL || n == 0 || md == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -83,7 +79,7 @@ bget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL || md == NULL || buf == NULL || n == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -97,7 +93,7 @@ brm(struct bctx *bctx, unsigned char *md) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL || md == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -111,7 +107,7 @@ bgc(struct bctx *bctx) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -125,7 +121,7 @@ bcheck(struct bctx *bctx, unsigned char *md) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL || md == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -139,7 +135,7 @@ bsync(struct bctx *bctx) Err bitreich.org 70
i struct bops *bops; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -154,7 +150,7 @@ bclose(struct bctx *bctx) Err bitreich.org 70
i int r; Err bitreich.org 70
i Err bitreich.org 70
i if (bctx == NULL) { Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -165,28 +161,3 @@ bclose(struct bctx *bctx) Err bitreich.org 70
i free(bctx); Err bitreich.org 70
i return r; Err bitreich.org 70
i } Err bitreich.org 70
i- Err bitreich.org 70
i-void Err bitreich.org 70
i-bseterr(char *fmt, ...) Err bitreich.org 70
i-{ Err bitreich.org 70
i- va_list ap; Err bitreich.org 70
i- Err bitreich.org 70
i- va_start(ap, fmt); Err bitreich.org 70
i- vsnprintf(errbuf, NERRBUF, fmt, ap); Err bitreich.org 70
i- va_end(ap); Err bitreich.org 70
i-} Err bitreich.org 70
i- Err bitreich.org 70
i-void Err bitreich.org 70
i-berr(char *fmt, ...) Err bitreich.org 70
i-{ Err bitreich.org 70
i- va_list ap; Err bitreich.org 70
i- Err bitreich.org 70
i- va_start(ap, fmt); Err bitreich.org 70
i- vfprintf(stderr, fmt, ap); Err bitreich.org 70
i- if (errbuf[0] == '\0') Err bitreich.org 70
i- fprintf(stderr, ": unknown error\n"); Err bitreich.org 70
i- else Err bitreich.org 70
i- fprintf(stderr, ": %s\n", errbuf); Err bitreich.org 70
i- va_end(ap); Err bitreich.org 70
i- exit(1); Err bitreich.org 70
i-} Err bitreich.org 70
1diff --git a/block.h b/block.h /scm/dedup/file/block.h.gph bitreich.org 70
i@@ -36,8 +36,8 @@ extern int bgc(struct bctx *); Err bitreich.org 70
i extern int bcheck(struct bctx *, unsigned char *); Err bitreich.org 70
i extern int bsync(struct bctx *); Err bitreich.org 70
i extern int bclose(struct bctx *); Err bitreich.org 70
i-extern void bseterr(char *, ...); Err bitreich.org 70
i-extern void berr(char *, ...); Err bitreich.org 70
i+extern void seterr(char *, ...); Err bitreich.org 70
i+extern void printerr(char *, ...); Err bitreich.org 70
i Err bitreich.org 70
i /* bcompat.c */ Err bitreich.org 70
i extern int punchhole(int, off_t, off_t); Err bitreich.org 70
1diff --git a/bstorage.c b/bstorage.c /scm/dedup/file/bstorage.c.gph bitreich.org 70
i@@ -130,7 +130,7 @@ unpackbhdr(int fd, struct bhdr *bhdr) Err bitreich.org 70
i int n; Err bitreich.org 70
i Err bitreich.org 70
i if (xread(fd, buf, sizeof(buf)) != sizeof(buf)) { Err bitreich.org 70
i- bseterr("failed to read block header: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to read block header: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -157,7 +157,7 @@ packbhdr(int fd, struct bhdr *bhdr) Err bitreich.org 70
i Err bitreich.org 70
i assert(n == BHDRSIZE); Err bitreich.org 70
i if (xwrite(fd, buf, n) != n) { Err bitreich.org 70
i- bseterr("failed to write block header: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to write block header: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i return n; Err bitreich.org 70
i@@ -172,7 +172,7 @@ unpackbd(int fd, struct bd *bd) Err bitreich.org 70
i int n; Err bitreich.org 70
i Err bitreich.org 70
i if (xread(fd, buf, sizeof(buf)) != sizeof(buf)) { Err bitreich.org 70
i- bseterr("failed to read block descriptor: %s", Err bitreich.org 70
i+ seterr("failed to read block descriptor: %s", Err bitreich.org 70
i strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i@@ -209,7 +209,7 @@ packbd(int fd, struct bd *bd) Err bitreich.org 70
i Err bitreich.org 70
i assert(n == BDSIZE); Err bitreich.org 70
i if (xwrite(fd, buf, n) != n) { Err bitreich.org 70
i- bseterr("failed to write block descriptor: %s", Err bitreich.org 70
i+ seterr("failed to write block descriptor: %s", Err bitreich.org 70
i strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i@@ -224,7 +224,7 @@ loadbd(struct sctx *sctx) Err bitreich.org 70
i Err bitreich.org 70
i bd = calloc(1, sizeof(*bd)); Err bitreich.org 70
i if (bd == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -235,14 +235,14 @@ loadbd(struct sctx *sctx) Err bitreich.org 70
i Err bitreich.org 70
i if (bd->type != BDTYPE) { Err bitreich.org 70
i free(bd); Err bitreich.org 70
i- bseterr("invalid block descriptor type: %d", bd->type); Err bitreich.org 70
i+ seterr("invalid block descriptor type: %d", bd->type); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i /* Move to the next block descriptor */ Err bitreich.org 70
i if (lseek(sctx->fd, bd->size, SEEK_CUR) < 0) { Err bitreich.org 70
i free(bd); Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -303,20 +303,20 @@ bscreat(struct bctx *bctx, char *path, int mode) Err bitreich.org 70
i int fd; Err bitreich.org 70
i Err bitreich.org 70
i if (sodium_init() < 0) { Err bitreich.org 70
i- bseterr("sodium_init: failed"); Err bitreich.org 70
i+ seterr("sodium_init: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i fd = open(path, O_RDWR | O_CREAT | O_EXCL, mode); Err bitreich.org 70
i if (fd < 0) { Err bitreich.org 70
i- bseterr("open: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("open: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bctx->sctx = calloc(1, sizeof(struct sctx)); Err bitreich.org 70
i if (bctx->sctx == NULL) { Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -354,25 +354,25 @@ bsopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i flags = O_RDWR; Err bitreich.org 70
i break; Err bitreich.org 70
i default: Err bitreich.org 70
i- bseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (sodium_init() < 0) { Err bitreich.org 70
i- bseterr("sodium_init: failed"); Err bitreich.org 70
i+ seterr("sodium_init: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i fd = open(path, flags, mode); Err bitreich.org 70
i if (fd < 0) { Err bitreich.org 70
i- bseterr("open: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("open: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bctx->sctx = calloc(1, sizeof(struct sctx)); Err bitreich.org 70
i if (bctx->sctx == NULL) { Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -390,7 +390,7 @@ bsopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i if (memcmp(bhdr->magic, BHDRMAGIC, NBHDRMAGIC) != 0) { Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- bseterr("unknown block header magic"); Err bitreich.org 70
i+ seterr("unknown block header magic"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -398,7 +398,7 @@ bsopen(struct bctx *bctx, char *path, int flags, int mode) Err bitreich.org 70
i if (((bhdr->flags >> VMAJSHIFT) & VMAJMASK) != VMAJ) { Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- bseterr("block header version mismatch"); Err bitreich.org 70
i+ seterr("block header version mismatch"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -423,7 +423,7 @@ bsput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i off_t offs; Err bitreich.org 70
i Err bitreich.org 70
i if (bhash(buf, n, key.md) < 0) { Err bitreich.org 70
i- bseterr("bhash: failed"); Err bitreich.org 70
i+ seterr("bhash: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -439,7 +439,7 @@ bsput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i Err bitreich.org 70
i bdoffs = bd->offset - BDSIZE; Err bitreich.org 70
i if (lseek(sctx->fd, bdoffs, SEEK_SET) < 0) { Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -456,13 +456,13 @@ bsput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i /* New blocks are appended at the end of storage file */ Err bitreich.org 70
i offs = lseek(sctx->fd, 0, SEEK_END); Err bitreich.org 70
i if (offs < 0) { Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bd = calloc(1, sizeof(*bd)); Err bitreich.org 70
i if (bd == NULL) { Err bitreich.org 70
i- bseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i bd->type = BDTYPE; Err bitreich.org 70
i@@ -480,7 +480,7 @@ bsput(struct bctx *bctx, void *buf, size_t n, unsigned char *md) Err bitreich.org 70
i /* Shouldn't fail but if it does rewind storage file state */ Err bitreich.org 70
i ftruncate(sctx->fd, offs); Err bitreich.org 70
i free(bd); Err bitreich.org 70
i- bseterr("failed to write block: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to write block: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -508,21 +508,21 @@ bsget(struct bctx *bctx, unsigned char *md, void *buf, size_t *n) Err bitreich.org 70
i memcpy(key.md, md, MDSIZE); Err bitreich.org 70
i bd = RB_FIND(bdcache, &sctx->bdcache, &key); Err bitreich.org 70
i if (bd == NULL) { Err bitreich.org 70
i- bseterr("unknown block"); Err bitreich.org 70
i+ seterr("unknown block"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (*n < bd->size) { Err bitreich.org 70
i- bseterr("buffer too small"); Err bitreich.org 70
i+ seterr("buffer too small"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (lseek(sctx->fd, bd->offset, SEEK_SET) < 0) { Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i if (xread(sctx->fd, buf, bd->size) != bd->size) { Err bitreich.org 70
i- bseterr("failed to read block: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to read block: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i *n = bd->size; Err bitreich.org 70
i@@ -541,13 +541,13 @@ bsrm(struct bctx *bctx, unsigned char *md) Err bitreich.org 70
i memcpy(key.md, md, MDSIZE); Err bitreich.org 70
i bd = RB_FIND(bdcache, &sctx->bdcache, &key); Err bitreich.org 70
i if (bd == NULL) { Err bitreich.org 70
i- bseterr("unknown block"); Err bitreich.org 70
i+ seterr("unknown block"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i bdoffs = bd->offset - BDSIZE; Err bitreich.org 70
i if (lseek(sctx->fd, bdoffs, SEEK_SET) < 0) { Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -569,7 +569,7 @@ bsrm(struct bctx *bctx, unsigned char *md) Err bitreich.org 70
i lseek(sctx->fd, bdoffs, SEEK_SET); Err bitreich.org 70
i bd->refcnt++; Err bitreich.org 70
i packbd(sctx->fd, bd); Err bitreich.org 70
i- bseterr("operation not supported"); Err bitreich.org 70
i+ seterr("operation not supported"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -622,31 +622,31 @@ bscheck(struct bctx *bctx, unsigned char *md) Err bitreich.org 70
i memcpy(key.md, md, MDSIZE); Err bitreich.org 70
i bd = RB_FIND(bdcache, &sctx->bdcache, &key); Err bitreich.org 70
i if (bd == NULL) { Err bitreich.org 70
i- bseterr("unknown block"); Err bitreich.org 70
i+ seterr("unknown block"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i buf = malloc(bd->size); Err bitreich.org 70
i if (buf == NULL) { Err bitreich.org 70
i- bseterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("malloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (lseek(sctx->fd, bd->offset, SEEK_SET) < 0) { Err bitreich.org 70
i free(buf); Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (xread(sctx->fd, buf, bd->size) != bd->size) { Err bitreich.org 70
i free(buf); Err bitreich.org 70
i- bseterr("failed to read block: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to read block: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (bhash(buf, bd->size, key.md) < 0) { Err bitreich.org 70
i free(buf); Err bitreich.org 70
i- bseterr("bhash: failed"); Err bitreich.org 70
i+ seterr("bhash: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -670,7 +670,7 @@ bssync(struct bctx *bctx) Err bitreich.org 70
i return 0; Err bitreich.org 70
i Err bitreich.org 70
i if (lseek(sctx->fd, 0, SEEK_SET) < 0) { Err bitreich.org 70
i- bseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i bhdr = &sctx->bhdr; Err bitreich.org 70
i@@ -705,7 +705,7 @@ bsclose(struct bctx *bctx) Err bitreich.org 70
i r = close(sctx->fd); Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i if (r < 0) Err bitreich.org 70
i- bseterr("close: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("close: %s", strerror(errno)); Err bitreich.org 70
i return r; Err bitreich.org 70
i } Err bitreich.org 70
i 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@@ -71,14 +71,14 @@ check(struct sctx *sctx, struct bctx *bctx) 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+ printerr("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
i+ printerr("sget"); Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i@@ -130,16 +130,16 @@ main(int argc, char *argv[]) Err bitreich.org 70
i loadkey(keyfile); Err bitreich.org 70
i Err bitreich.org 70
i if (sopen(spath, S_READ, 0600, &sctx) < 0) Err bitreich.org 70
i- serr("sopen: %s", spath); Err bitreich.org 70
i+ printerr("sopen: %s", spath); Err bitreich.org 70
i if (bopen(bpath, B_READ, 0600, &bctx) <0) Err bitreich.org 70
i- berr("bopen: %s", bpath); Err bitreich.org 70
i+ printerr("bopen: %s", bpath); Err bitreich.org 70
i Err bitreich.org 70
i check(sctx, bctx); Err bitreich.org 70
i Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", bpath); Err bitreich.org 70
i+ printerr("bclose: %s", bpath); Err bitreich.org 70
i if (sclose(sctx) < 0) Err bitreich.org 70
i- serr("sclose: %s", spath); Err bitreich.org 70
i+ printerr("sclose: %s", spath); Err bitreich.org 70
i Err bitreich.org 70
i if (unlockrepo(lfd) < 0) Err bitreich.org 70
i errx(1, "failed to unlock repository"); Err bitreich.org 70
1diff --git a/dup-gc.c b/dup-gc.c /scm/dedup/file/dup-gc.c.gph bitreich.org 70
i@@ -104,11 +104,11 @@ main(int argc, char *argv[]) Err bitreich.org 70
i loadkey(keyfile); Err bitreich.org 70
i Err bitreich.org 70
i if (bopen(path, B_RDWR, 0600, &bctx) < 0) Err bitreich.org 70
i- berr("bopen: %s", path); Err bitreich.org 70
i+ printerr("bopen: %s", path); Err bitreich.org 70
i if (bgc(bctx) < 0) Err bitreich.org 70
i- berr("bgc: %s", path); Err bitreich.org 70
i+ printerr("bgc: %s", path); Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", path); Err bitreich.org 70
i+ printerr("bclose: %s", path); Err bitreich.org 70
i Err bitreich.org 70
i if (unlockrepo(lfd) < 0) Err bitreich.org 70
i errx(1, "failed to unlock repository"); Err bitreich.org 70
1diff --git a/dup-init.c b/dup-init.c /scm/dedup/file/dup-init.c.gph bitreich.org 70
i@@ -124,9 +124,9 @@ main(int argc, char *argv[]) Err bitreich.org 70
i savestate(repo); Err bitreich.org 70
i Err bitreich.org 70
i if (bcreat(bpath, 0600, &bctx) < 0) Err bitreich.org 70
i- berr("bcreat: %s", bpath); Err bitreich.org 70
i+ printerr("bcreat: %s", bpath); Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", bpath); Err bitreich.org 70
i+ printerr("bclose: %s", bpath); Err bitreich.org 70
i Err bitreich.org 70
i if (unlockrepo(lfd) < 0) Err bitreich.org 70
i errx(1, "failed to unlock repository"); Err bitreich.org 70
1diff --git a/dup-pack.c b/dup-pack.c /scm/dedup/file/dup-pack.c.gph bitreich.org 70
i@@ -73,9 +73,9 @@ pack(struct sctx *sctx, struct bctx *bctx) Err bitreich.org 70
i if (buf == NULL) Err bitreich.org 70
i errx(1, "cget: failed"); Err bitreich.org 70
i if (bput(bctx, buf, n, md) < 0) Err bitreich.org 70
i- berr("bput"); Err bitreich.org 70
i+ printerr("bput"); Err bitreich.org 70
i if (sput(sctx, md) < 0) Err bitreich.org 70
i- serr("sput"); Err bitreich.org 70
i+ printerr("sput"); Err bitreich.org 70
i if (cdrain(c) < 0) Err bitreich.org 70
i errx(1, "cdrain: failed"); Err bitreich.org 70
i } Err bitreich.org 70
i@@ -133,16 +133,16 @@ main(int argc, char *argv[]) Err bitreich.org 70
i loadkey(keyfile); Err bitreich.org 70
i Err bitreich.org 70
i if (screat(spath, 0600, &sctx) < 0) Err bitreich.org 70
i- serr("screat: %s", spath); Err bitreich.org 70
i+ printerr("screat: %s", spath); Err bitreich.org 70
i if (bopen(bpath, B_RDWR, 0600, &bctx) <0) Err bitreich.org 70
i- berr("bopen: %s", bpath); Err bitreich.org 70
i+ printerr("bopen: %s", bpath); Err bitreich.org 70
i Err bitreich.org 70
i pack(sctx, bctx); Err bitreich.org 70
i Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", bpath); Err bitreich.org 70
i+ printerr("bclose: %s", bpath); Err bitreich.org 70
i if (sclose(sctx) < 0) Err bitreich.org 70
i- serr("sclose: %s", spath); Err bitreich.org 70
i+ printerr("sclose: %s", spath); Err bitreich.org 70
i Err bitreich.org 70
i if (unlockrepo(lfd) < 0) Err bitreich.org 70
i errx(1, "failed to unlock repository"); Err bitreich.org 70
1diff --git a/dup-rm.c b/dup-rm.c /scm/dedup/file/dup-rm.c.gph bitreich.org 70
i@@ -63,10 +63,10 @@ rm(struct sctx *sctx, struct bctx *bctx) Err bitreich.org 70
i Err bitreich.org 70
i while ((n = sget(sctx, md)) == MDSIZE) { Err bitreich.org 70
i if (brm(bctx, md) < 0) Err bitreich.org 70
i- berr("brm"); Err bitreich.org 70
i+ printerr("brm"); Err bitreich.org 70
i } Err bitreich.org 70
i if (n < 0) Err bitreich.org 70
i- serr("sget"); Err bitreich.org 70
i+ printerr("sget"); Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i static void Err bitreich.org 70
i@@ -119,16 +119,16 @@ main(int argc, char *argv[]) Err bitreich.org 70
i loadkey(keyfile); Err bitreich.org 70
i Err bitreich.org 70
i if (sopen(spath, S_READ, 0600, &sctx) < 0) Err bitreich.org 70
i- serr("sopen: %s", spath); Err bitreich.org 70
i+ printerr("sopen: %s", spath); Err bitreich.org 70
i if (bopen(bpath, B_RDWR, 0600, &bctx) <0) Err bitreich.org 70
i- berr("bopen: %s", bpath); Err bitreich.org 70
i+ printerr("bopen: %s", bpath); Err bitreich.org 70
i Err bitreich.org 70
i rm(sctx, bctx); Err bitreich.org 70
i Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", bpath); Err bitreich.org 70
i+ printerr("bclose: %s", bpath); Err bitreich.org 70
i if (sclose(sctx) < 0) Err bitreich.org 70
i- serr("sclose: %s", spath); Err bitreich.org 70
i+ printerr("sclose: %s", spath); Err bitreich.org 70
i if (unlink(spath) < 0) Err bitreich.org 70
i err(1, "unlink: %s", spath); Err bitreich.org 70
i Err bitreich.org 70
1diff --git a/dup-unpack.c b/dup-unpack.c /scm/dedup/file/dup-unpack.c.gph bitreich.org 70
i@@ -70,12 +70,12 @@ unpack(struct sctx *sctx, struct bctx *bctx) Err bitreich.org 70
i size_t bn = BSIZEMAX; Err bitreich.org 70
i Err bitreich.org 70
i if (bget(bctx, md, buf, &bn) < 0) Err bitreich.org 70
i- berr("bget"); Err bitreich.org 70
i+ printerr("bget"); Err bitreich.org 70
i if (xwrite(1, buf, bn) != bn) Err bitreich.org 70
i err(1, "xwrite"); Err bitreich.org 70
i } Err bitreich.org 70
i if (sn < 0) Err bitreich.org 70
i- serr("sget"); Err bitreich.org 70
i+ printerr("sget"); Err bitreich.org 70
i free(buf); Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -129,16 +129,16 @@ main(int argc, char *argv[]) Err bitreich.org 70
i loadkey(keyfile); Err bitreich.org 70
i Err bitreich.org 70
i if (sopen(spath, S_READ, 0600, &sctx) < 0) Err bitreich.org 70
i- serr("sopen: %s", spath); Err bitreich.org 70
i+ printerr("sopen: %s", spath); Err bitreich.org 70
i if (bopen(bpath, B_READ, 0600, &bctx) <0) Err bitreich.org 70
i- berr("bopen: %s", bpath); Err bitreich.org 70
i+ printerr("bopen: %s", bpath); Err bitreich.org 70
i Err bitreich.org 70
i unpack(sctx, bctx); Err bitreich.org 70
i Err bitreich.org 70
i if (bclose(bctx) < 0) Err bitreich.org 70
i- berr("bclose: %s", bpath); Err bitreich.org 70
i+ printerr("bclose: %s", bpath); Err bitreich.org 70
i if (sclose(sctx) < 0) Err bitreich.org 70
i- serr("sclose: %s", spath); Err bitreich.org 70
i+ printerr("sclose: %s", spath); Err bitreich.org 70
i Err bitreich.org 70
i if (unlockrepo(lfd) < 0) Err bitreich.org 70
i errx(1, "failed to unlock repository"); Err bitreich.org 70
1diff --git a/misc.c b/misc.c /scm/dedup/file/misc.c.gph bitreich.org 70
i@@ -1,7 +1,13 @@ Err bitreich.org 70
i #include <sys/types.h> Err bitreich.org 70
i Err bitreich.org 70
i+#include <stdarg.h> Err bitreich.org 70
i+#include <stdio.h> 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+#define NERRBUF 128 Err bitreich.org 70
i+static char errbuf[NERRBUF]; Err bitreich.org 70
i+ Err bitreich.org 70
i ssize_t Err bitreich.org 70
i xread(int fd, void *buf, size_t nbytes) Err bitreich.org 70
i { Err bitreich.org 70
i@@ -41,3 +47,28 @@ xwrite(int fd, 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+seterr(char *fmt, ...) Err bitreich.org 70
i+{ Err bitreich.org 70
i+ va_list ap; Err bitreich.org 70
i+ Err bitreich.org 70
i+ va_start(ap, fmt); Err bitreich.org 70
i+ vsnprintf(errbuf, NERRBUF, fmt, ap); Err bitreich.org 70
i+ va_end(ap); Err bitreich.org 70
i+} Err bitreich.org 70
i+ Err bitreich.org 70
i+void Err bitreich.org 70
i+printerr(char *fmt, ...) Err bitreich.org 70
i+{ Err bitreich.org 70
i+ va_list ap; Err bitreich.org 70
i+ Err bitreich.org 70
i+ va_start(ap, fmt); Err bitreich.org 70
i+ vfprintf(stderr, fmt, ap); Err bitreich.org 70
i+ if (errbuf[0] == '\0') Err bitreich.org 70
i+ fprintf(stderr, ": unknown error\n"); Err bitreich.org 70
i+ else Err bitreich.org 70
i+ fprintf(stderr, ": %s\n", errbuf); Err bitreich.org 70
i+ va_end(ap); Err bitreich.org 70
i+ exit(1); Err bitreich.org 70
i+} Err bitreich.org 70
1diff --git a/misc.h b/misc.h /scm/dedup/file/misc.h.gph bitreich.org 70
i@@ -1,2 +1,4 @@ Err bitreich.org 70
i extern ssize_t xread(int, void *, size_t); Err bitreich.org 70
i extern ssize_t xwrite(int, void *, size_t); Err bitreich.org 70
i+extern void seterr(char *, ...); Err bitreich.org 70
i+extern void printerr(char *, ...); Err bitreich.org 70
1diff --git a/snap.c b/snap.c /scm/dedup/file/snap.c.gph bitreich.org 70
i@@ -6,7 +6,6 @@ Err bitreich.org 70
i #include <errno.h> Err bitreich.org 70
i #include <fcntl.h> Err bitreich.org 70
i #include <limits.h> Err bitreich.org 70
i-#include <stdarg.h> Err bitreich.org 70
i #include <stdint.h> Err bitreich.org 70
i #include <stdio.h> Err bitreich.org 70
i #include <stdlib.h> Err bitreich.org 70
i@@ -32,8 +31,6 @@ Err bitreich.org 70
i Err bitreich.org 70
i #define SHDRSIZE (NSHDRMAGIC + 24 + 24 + 8 + 8) Err bitreich.org 70
i Err bitreich.org 70
i-#define NERRBUF 128 Err bitreich.org 70
i- Err bitreich.org 70
i /* misc helpers */ Err bitreich.org 70
i extern int pack(unsigned char *, char *, ...); Err bitreich.org 70
i extern int unpack(unsigned char *, char *, ...); Err bitreich.org 70
i@@ -60,8 +57,6 @@ struct sctx { Err bitreich.org 70
i struct shdr shdr; /* snapshot header */ Err bitreich.org 70
i }; Err bitreich.org 70
i Err bitreich.org 70
i-static char errbuf[NERRBUF]; Err bitreich.org 70
i- Err bitreich.org 70
i /* Read snapshot header */ Err bitreich.org 70
i static int Err bitreich.org 70
i unpackshdr(int fd, struct shdr *shdr) Err bitreich.org 70
i@@ -70,7 +65,7 @@ unpackshdr(int fd, struct shdr *shdr) Err bitreich.org 70
i int n; Err bitreich.org 70
i Err bitreich.org 70
i if (xread(fd, buf, sizeof(buf)) != sizeof(buf)) { Err bitreich.org 70
i- sseterr("failed to read snapshot header: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to read snapshot header: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -101,7 +96,7 @@ packshdr(int fd, struct shdr *shdr) Err bitreich.org 70
i Err bitreich.org 70
i assert(n == SHDRSIZE); Err bitreich.org 70
i if (xwrite(fd, buf, n) != n) { Err bitreich.org 70
i- sseterr("failed to write snapshot header: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to write snapshot header: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i return n; Err bitreich.org 70
i@@ -114,12 +109,12 @@ loadmd(struct sctx *sctx) Err bitreich.org 70
i Err bitreich.org 70
i mdnode = calloc(1, sizeof(*mdnode)); Err bitreich.org 70
i if (mdnode == NULL) { Err bitreich.org 70
i- sseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i if (xread(sctx->fd, mdnode->md, MDSIZE) != MDSIZE) { Err bitreich.org 70
i free(mdnode); Err bitreich.org 70
i- sseterr("failed to read block hash: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("failed to read block hash: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i TAILQ_INSERT_TAIL(&sctx->mdhead, mdnode, e); Err bitreich.org 70
i@@ -157,25 +152,25 @@ screat(char *path, int mode, struct sctx **sctx) Err bitreich.org 70
i int fd; Err bitreich.org 70
i Err bitreich.org 70
i if (path == NULL || sctx == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (sodium_init() < 0) { Err bitreich.org 70
i- sseterr("sodium_init: failed"); Err bitreich.org 70
i+ seterr("sodium_init: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i fd = open(path, O_RDWR | O_CREAT | O_EXCL, mode); Err bitreich.org 70
i if (fd < 0) { Err bitreich.org 70
i- sseterr("open: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("open: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i *sctx = calloc(1, sizeof(**sctx)); Err bitreich.org 70
i if (*sctx == NULL) { Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- sseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -204,31 +199,31 @@ sopen(char *path, int flags, int mode, struct sctx **sctx) Err bitreich.org 70
i int fd; Err bitreich.org 70
i Err bitreich.org 70
i if (path == NULL || sctx == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i /* Existing snapshots are immutable */ Err bitreich.org 70
i if (flags != S_READ) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i if (sodium_init() < 0) { Err bitreich.org 70
i- sseterr("sodium_init: failed"); Err bitreich.org 70
i+ seterr("sodium_init: failed"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i fd = open(path, O_RDONLY, mode); Err bitreich.org 70
i if (fd < 0) { Err bitreich.org 70
i- sseterr("open: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("open: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i *sctx = calloc(1, sizeof(**sctx)); Err bitreich.org 70
i if (*sctx == NULL) { Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- sseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -248,7 +243,7 @@ sopen(char *path, int flags, int mode, struct sctx **sctx) Err bitreich.org 70
i if (memcmp(shdr->magic, SHDRMAGIC, NSHDRMAGIC) != 0) { Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- sseterr("unknown snapshot header magic"); Err bitreich.org 70
i+ seterr("unknown snapshot header magic"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -256,7 +251,7 @@ sopen(char *path, int flags, int mode, struct sctx **sctx) Err bitreich.org 70
i if (((shdr->flags >> VMAJSHIFT) & VMAJMASK) != VMAJ) { Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i close(fd); Err bitreich.org 70
i- sseterr("snapshot header version mismatch"); Err bitreich.org 70
i+ seterr("snapshot header version mismatch"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -275,13 +270,13 @@ sput(struct sctx *sctx, unsigned char *md) Err bitreich.org 70
i struct mdnode *mdnode; Err bitreich.org 70
i Err bitreich.org 70
i if (sctx == NULL || md == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i mdnode = calloc(1, sizeof(*mdnode)); Err bitreich.org 70
i if (mdnode == NULL) { Err bitreich.org 70
i- sseterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("calloc: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i shdr = &sctx->shdr; Err bitreich.org 70
i@@ -297,7 +292,7 @@ sget(struct sctx *sctx, unsigned char *md) Err bitreich.org 70
i struct mdnode *mdnode; Err bitreich.org 70
i Err bitreich.org 70
i if (sctx == NULL || md == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -318,7 +313,7 @@ int Err bitreich.org 70
i srewind(struct sctx *sctx) Err bitreich.org 70
i { Err bitreich.org 70
i if (sctx == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i sctx->mdnext = NULL; Err bitreich.org 70
i@@ -332,7 +327,7 @@ ssync(struct sctx *sctx) Err bitreich.org 70
i struct mdnode *mdnode; Err bitreich.org 70
i Err bitreich.org 70
i if (sctx == NULL) { Err bitreich.org 70
i- sseterr("invalid params"); Err bitreich.org 70
i+ seterr("invalid params"); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -340,7 +335,7 @@ ssync(struct sctx *sctx) Err bitreich.org 70
i return 0; Err bitreich.org 70
i Err bitreich.org 70
i if (lseek(sctx->fd, 0, SEEK_SET) < 0) { Err bitreich.org 70
i- sseterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("lseek: %s", strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i@@ -349,7 +344,7 @@ ssync(struct sctx *sctx) Err bitreich.org 70
i return -1; Err bitreich.org 70
i TAILQ_FOREACH(mdnode, &sctx->mdhead, e) { Err bitreich.org 70
i if (xwrite(sctx->fd, mdnode->md, MDSIZE) != MDSIZE) { Err bitreich.org 70
i- sseterr("failed to write block hash: %s", Err bitreich.org 70
i+ seterr("failed to write block hash: %s", Err bitreich.org 70
i strerror(errno)); Err bitreich.org 70
i return -1; Err bitreich.org 70
i } Err bitreich.org 70
i@@ -381,31 +376,6 @@ sclose(struct sctx *sctx) Err bitreich.org 70
i r = close(sctx->fd); Err bitreich.org 70
i free(sctx); Err bitreich.org 70
i if (r < 0) Err bitreich.org 70
i- sseterr("close: %s", strerror(errno)); Err bitreich.org 70
i+ seterr("close: %s", strerror(errno)); Err bitreich.org 70
i return r; Err bitreich.org 70
i } Err bitreich.org 70
i- Err bitreich.org 70
i-void Err bitreich.org 70
i-sseterr(char *fmt, ...) Err bitreich.org 70
i-{ Err bitreich.org 70
i- va_list ap; Err bitreich.org 70
i- Err bitreich.org 70
i- va_start(ap, fmt); Err bitreich.org 70
i- vsnprintf(errbuf, NERRBUF, fmt, ap); Err bitreich.org 70
i- va_end(ap); Err bitreich.org 70
i-} Err bitreich.org 70
i- Err bitreich.org 70
i-void Err bitreich.org 70
i-serr(char *fmt, ...) Err bitreich.org 70
i-{ Err bitreich.org 70
i- va_list ap; Err bitreich.org 70
i- Err bitreich.org 70
i- va_start(ap, fmt); Err bitreich.org 70
i- vfprintf(stderr, fmt, ap); Err bitreich.org 70
i- if (errbuf[0] == '\0') Err bitreich.org 70
i- fprintf(stderr, ": unknown error\n"); Err bitreich.org 70
i- else Err bitreich.org 70
i- fprintf(stderr, ": %s\n", errbuf); Err bitreich.org 70
i- va_end(ap); Err bitreich.org 70
i- exit(1); Err bitreich.org 70
i-} Err bitreich.org 70
1diff --git a/snap.h b/snap.h /scm/dedup/file/snap.h.gph bitreich.org 70
i@@ -11,5 +11,5 @@ extern int sget(struct sctx *, unsigned char *); Err bitreich.org 70
i extern int srewind(struct sctx *); Err bitreich.org 70
i extern int ssync(struct sctx *); Err bitreich.org 70
i extern int sclose(struct sctx *); Err bitreich.org 70
i-extern void sseterr(char *, ...); Err bitreich.org 70
i-extern void serr(char *, ...); Err bitreich.org 70
i+extern void seterr(char *, ...); Err bitreich.org 70
i+extern void printerr(char *, ...); Err bitreich.org 70
.
Response:
text/plain