X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=libcitadel%2Flib%2Flibcitadel.h;h=366b8a62c8ce977ce0598403a32061f197867c6f;hb=32ba61afbc6f9964bac00c006b0058ef23a3518d;hp=d8f246da43f9214dadb9b6a77de5bb7c6463bc6c;hpb=19fb2763b48d73c87bf6852d29e84353fd941842;p=citadel.git diff --git a/libcitadel/lib/libcitadel.h b/libcitadel/lib/libcitadel.h index d8f246da4..366b8a62c 100644 --- a/libcitadel/lib/libcitadel.h +++ b/libcitadel/lib/libcitadel.h @@ -192,6 +192,7 @@ typedef struct _ConstStr { StrBuf* NewStrBuf(void); StrBuf* NewStrBufDup(const StrBuf *CopyMe); StrBuf* NewStrBufPlain(const char* ptr, int nChars); +void SwapBuffers(StrBuf *A, StrBuf *B); long StrBufShrinkToFit(StrBuf *Buf, int Force); void ReAdjustEmptyBuf(StrBuf *Buf, long ThreshHold, long NewSize); void NewStrBufDupAppendFlush(StrBuf **CreateRelpaceMe, StrBuf *CopyFlushMe, const char *NoMe, int KeepOriginal); @@ -514,6 +515,7 @@ typedef long (*HashFunc)(const char *Str, long Len); 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) @@ -675,6 +677,7 @@ extern ConstStr RoomNetCfgStrs[maxRoomNetCfg]; /* 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" { @@ -754,6 +757,7 @@ extern "C" { #define QR2_SUBJECTREQ 8 /* Subject strongly recommended */ #define QR2_SMTP_PUBLIC 16 /* Listservice Subscribers may post */ #define QR2_MODERATED 32 /* Listservice aide has to permit posts */ +#define QR2_NOUPLMSG 64 /* If a file is uploaded, no message will be posted. */ #define US_NEEDVALID 1 /* User needs to be validated */ #define US_EXTEDIT 2 /* Always use external editor */