csum-file.hon commit merge-file: handle empty files gracefully (381b851)
   1#ifndef CSUM_FILE_H
   2#define CSUM_FILE_H
   3
   4struct progress;
   5
   6/* A SHA1-protected file */
   7struct sha1file {
   8        int fd;
   9        unsigned int offset;
  10        SHA_CTX ctx;
  11        off_t total;
  12        struct progress *tp;
  13        const char *name;
  14        int do_crc;
  15        uint32_t crc32;
  16        unsigned char buffer[8192];
  17};
  18
  19extern struct sha1file *sha1fd(int fd, const char *name);
  20extern struct sha1file *sha1fd_throughput(int fd, const char *name, struct progress *tp);
  21extern int sha1close(struct sha1file *, unsigned char *, int);
  22extern int sha1write(struct sha1file *, void *, unsigned int);
  23extern void crc32_begin(struct sha1file *);
  24extern uint32_t crc32_end(struct sha1file *);
  25
  26#endif