/*
* Header file for libcitadel
*
- * Copyright (c) 1987-2013 by the citadel.org team
+ * Copyright (c) 1987-2016 by the citadel.org team
*
* This program is open source software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 3.
#include <sys/types.h>
#include <netinet/in.h>
-#define LIBCITADEL_VERSION_NUMBER 901
+#define LIBCITADEL_VERSION_NUMBER 903
/*
* Here's a bunch of stupid magic to make the MIME parser portable.
typedef void (*TransitionFunc) (void *Item1, void *Item2, int Odd);
typedef const char* (*PrintHashDataFunc) (const char *Key, void *Item, int Odd);
+long FourHash(const char *key, long length);
long Flathash(const char *str, long len);
long lFlathash(const char *str, long len);
#define IKEY(a) (const char*) &a, sizeof(a)
/* a nice consistent place to define how we turn a message id into a thread id hash */
#define ThreadIdHash(Buf) abs(HashLittle(ChrPtr(Buf), StrLength(Buf)))
+#define ThreadIdHashOffset(Buf, Offset) abs(HashLittle(ChrPtr(Buf) + Offset, StrLength(Buf)-Offset))
#ifdef __cplusplus
extern "C" {