Rocco Rutte:
[apps/madmutt.git] / hcache.c
index ef6831f..eea6d20 100644 (file)
--- a/hcache.c
+++ b/hcache.c
  *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
  */
 
+# if HAVE_INTTYPES_H
+#  include <inttypes.h>
+# else
+#  if HAVE_STDINT_H
+#   include <stdint.h>
+#  endif
+# endif
+
 #if HAVE_CONFIG_H
 #include "config.h"
-#endif /* HAVE_CONFIG_H */
+#endif                         /* HAVE_CONFIG_H */
+
+#ifdef USE_HCACHE
 
 #if HAVE_GDBM
 #include <gdbm.h>
@@ -30,6 +40,9 @@
 
 #include <errno.h>
 #include <fcntl.h>
+#if HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
 #include "mutt.h"
 #ifdef USE_IMAP
 #include "message.h"
@@ -62,7 +75,7 @@ header_cache
 typedef union
 {
         struct timeval timeval;
-        unsigned long long uid_validity;
+        uint64_t uid_validity;
 } validate;
 
 static void *
@@ -126,6 +139,7 @@ dump_char(char *c, unsigned char *d, int *off)
        return d;
 }
 
+#if 0
 static unsigned char *
 dump_char_size(char *c, unsigned char *d, int *off, ssize_t size)
 {
@@ -142,6 +156,7 @@ dump_char_size(char *c, unsigned char *d, int *off, ssize_t size)
 
        return d;
 }
+#endif
 
 static void
 restore_char(char **c, const unsigned char *d, int *off)
@@ -241,6 +256,7 @@ restore_list(LIST **l, const unsigned char *d, int *off)
        *l = NULL;
 }
 
+#if 0
 static unsigned char *
 dump_buffer(BUFFER *b, unsigned char *d, int *off)
 {
@@ -277,6 +293,7 @@ restore_buffer(BUFFER **b, const unsigned char *d, int *off)
        restore_int(& (*b)->dsize, d, off);
        restore_int((unsigned int *) & (*b)->destroy, d, off);
 }
+#endif
 
 static unsigned char *
 dump_parameter(PARAMETER *p, unsigned char *d, int *off)
@@ -512,7 +529,7 @@ mutt_hcache_per_folder(const char *path, const char *folder)
 /* This function transforms a header into a char so that it is useable by
  * db_store */
 static void *
-mutt_hcache_dump(void *_db, HEADER *h, int *off, unsigned long long uid_validity)
+mutt_hcache_dump(void *_db, HEADER *h, int *off, uint64_t uid_validity)
 {
        struct header_cache *db = _db;
        unsigned char *d = NULL;
@@ -521,7 +538,7 @@ mutt_hcache_dump(void *_db, HEADER *h, int *off, unsigned long long uid_validity
        d = lazy_malloc(sizeof(validate));
 
        if (uid_validity) {
-               memcpy(d, &uid_validity, sizeof(long long));
+               memcpy(d, &uid_validity, sizeof(uint64_t));
        } else {
                struct timeval now;
                gettimeofday(&now, NULL);
@@ -654,7 +671,7 @@ mutt_hcache_fetch(void *db, const char *filename, size_t (*keylen)(const char *f
 }
 
 int
-mutt_hcache_store(void *db, const char *filename, HEADER *header, unsigned long long uid_validity, size_t (*keylen)(const char *fn))
+mutt_hcache_store(void *db, const char *filename, HEADER *header, uint64_t uid_validity, size_t (*keylen)(const char *fn))
 {
        struct header_cache *h = db;
        datum key;
@@ -835,7 +852,7 @@ mutt_hcache_fetch(void *db, const char *filename, size_t (*keylen)(const char *f
 }
 
 int
-mutt_hcache_store(void *db, const char *filename, HEADER *header, unsigned long long uid_validity, size_t (*keylen)(const char *fn))
+mutt_hcache_store(void *db, const char *filename, HEADER *header, uint64_t uid_validity, size_t (*keylen)(const char *fn))
 {
        DBT key;
        DBT data;
@@ -878,3 +895,5 @@ mutt_hcache_delete(void *db, const char *filename, size_t (*keylen)(const char *
        return h->db->del(h->db, NULL, &key, 0);
 }
 #endif
+
+#endif /* USE_HCACHE */