iShorten type width to 16 bits and mark rest as reserved - 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 bb81bcb6bd4b4bf7dbe36d2a47087dec0c58f812 /scm/dedup/commit/bb81bcb6bd4b4bf7dbe36d2a47087dec0c58f812.gph bitreich.org 70 1parent 8728669764d059ab08e07111ca630f7fa313e51d /scm/dedup/commit/8728669764d059ab08e07111ca630f7fa313e51d.gph bitreich.org 70 hAuthor: sin URL:mailto:sin@2f30.org bitreich.org 70 iDate: Wed, 1 May 2019 14:33:42 +0100 Err bitreich.org 70 i Err bitreich.org 70 iShorten type width to 16 bits and mark rest as reserved Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M bcompress.c | 11 +++++++---- Err bitreich.org 70 i M bstorage.c | 9 ++++++--- Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 13 insertions(+), 7 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@@ -45,12 +45,13 @@ static struct bops bops = { Err bitreich.org 70 i Err bitreich.org 70 i /* Compression layer context */ Err bitreich.org 70 i struct cctx { Err bitreich.org 70 i- uint64_t type; /* compression algorithm type for new blocks */ Err bitreich.org 70 i+ int type; /* compression algorithm type for new blocks */ Err bitreich.org 70 i }; Err bitreich.org 70 i Err bitreich.org 70 i /* Compression descriptor */ Err bitreich.org 70 i struct cd { Err bitreich.org 70 i- uint64_t type; /* compression algorithm type */ Err bitreich.org 70 i+ uint16_t type; /* compression algorithm type */ Err bitreich.org 70 i+ uint8_t reserved[6]; Err bitreich.org 70 i uint64_t size; Err bitreich.org 70 i }; Err bitreich.org 70 i Err bitreich.org 70 i@@ -60,8 +61,9 @@ unpackcd(void *buf, struct cd *cd) Err bitreich.org 70 i { Err bitreich.org 70 i int n; Err bitreich.org 70 i Err bitreich.org 70 i- n = unpack(buf, "qq", Err bitreich.org 70 i+ n = unpack(buf, "s'6q", Err bitreich.org 70 i &cd->type, Err bitreich.org 70 i+ cd->reserved, Err bitreich.org 70 i &cd->size); Err bitreich.org 70 i Err bitreich.org 70 i assert(n == CDSIZE); Err bitreich.org 70 i@@ -74,8 +76,9 @@ packcd(void *buf, struct cd *cd) Err bitreich.org 70 i { Err bitreich.org 70 i int n; Err bitreich.org 70 i Err bitreich.org 70 i- n = pack(buf, "qq", Err bitreich.org 70 i+ n = pack(buf, "s'6q", Err bitreich.org 70 i cd->type, Err bitreich.org 70 i+ cd->reserved, Err bitreich.org 70 i cd->size); Err bitreich.org 70 i Err bitreich.org 70 i assert(n == CDSIZE); Err bitreich.org 70 1diff --git a/bstorage.c b/bstorage.c /scm/dedup/file/bstorage.c.gph bitreich.org 70 i@@ -87,7 +87,8 @@ struct bhdr { Err bitreich.org 70 i Err bitreich.org 70 i /* Block descriptor */ Err bitreich.org 70 i struct bd { Err bitreich.org 70 i- uint64_t type; Err bitreich.org 70 i+ uint16_t type; Err bitreich.org 70 i+ uint8_t reserved[6]; Err bitreich.org 70 i uint64_t offset; /* offset of block */ Err bitreich.org 70 i uint64_t size; /* size of block */ Err bitreich.org 70 i uint64_t refcnt; Err bitreich.org 70 i@@ -194,9 +195,10 @@ unpackbd(int fd, struct bd *bd) Err bitreich.org 70 i if (xread(fd, buf, sizeof(buf)) != sizeof(buf)) Err bitreich.org 70 i return -1; Err bitreich.org 70 i Err bitreich.org 70 i- snprintf(fmt, sizeof(fmt), "qqqq'%d", MDSIZE); Err bitreich.org 70 i+ snprintf(fmt, sizeof(fmt), "s'6qqq'%d", MDSIZE); Err bitreich.org 70 i n = unpack(buf, fmt, Err bitreich.org 70 i &bd->type, Err bitreich.org 70 i+ bd->reserved, Err bitreich.org 70 i &bd->offset, Err bitreich.org 70 i &bd->size, Err bitreich.org 70 i &bd->refcnt, Err bitreich.org 70 i@@ -214,9 +216,10 @@ packbd(int fd, struct bd *bd) Err bitreich.org 70 i char fmt[BUFSIZ]; Err bitreich.org 70 i int n; Err bitreich.org 70 i Err bitreich.org 70 i- snprintf(fmt, sizeof(fmt), "qqqq'%d", MDSIZE); Err bitreich.org 70 i+ snprintf(fmt, sizeof(fmt), "s'6qqq'%d", MDSIZE); Err bitreich.org 70 i n = pack(buf, fmt, Err bitreich.org 70 i bd->type, Err bitreich.org 70 i+ bd->reserved, Err bitreich.org 70 i bd->offset, Err bitreich.org 70 i bd->size, Err bitreich.org 70 i bd->refcnt, Err bitreich.org 70 .