URI: 
       Store store compression status in the store header - dedup - deduplicating backup program
  HTML git clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/
   DIR Log
   DIR Files
   DIR Refs
   DIR Tags
   DIR README
   DIR LICENSE
       ---
   DIR commit 13bf2f947a35134d17043151e3a07f7aa86155b1
   DIR parent bea0c2a2d0e5dd3b04fd7888bcaf6ab3eb87fa79
  HTML Author: sin <sin@2f30.org>
       Date:   Sun,  3 Mar 2019 13:24:04 +0000
       
       Store store compression status in the store header
       
       Diffstat:
         M dedup.c                             |      10 ++++++++++
         M dedup.h                             |       3 +++
       
       2 files changed, 13 insertions(+), 0 deletions(-)
       ---
   DIR diff --git a/dedup.c b/dedup.c
       @@ -511,15 +511,25 @@ static void
        init_blk_hdr(void)
        {
                blk_hdr.flags = (VER_MAJ << VER_MAJ_SHIFT) | VER_MIN;
       +        blk_hdr.flags |= compr_enabled << COMPR_ENABLED_SHIFT;
                blk_hdr.size = BLK_HDR_SIZE;
        }
        
        static void
        load_blk_hdr(void)
        {
       +        uint64_t v;
       +
                xlseek(sfd, 0, SEEK_SET);
                read_blk_hdr(sfd, &blk_hdr);
                match_ver(blk_hdr.flags);
       +
       +        v = blk_hdr.flags >> COMPR_ENABLED_SHIFT;
       +        v &= COMPR_ENABLED_MASK;
       +        if (v != compr_enabled)
       +                errx(1, "store is %s but dedup was invoked %s",
       +                     v ? "compressed" : "not compressed",
       +                     compr_enabled ? "with compression" : "without compression");
        }
        
        static void
   DIR diff --git a/dedup.h b/dedup.h
       @@ -23,6 +23,9 @@
        #define VER_MAJ_SHIFT        8
        #define VER_MAJ_MASK        0xff
        
       +#define COMPR_ENABLED_SHIFT        16
       +#define COMPR_ENABLED_MASK        0x1
       +
        struct cache;
        struct chunker;