]> code.citadel.org Git - citadel.git/blobdiff - libcitadel/lib/libcitadel.h
Add function to do some revalidations on hashlists; Attention; this can be cpu intens...
[citadel.git] / libcitadel / lib / libcitadel.h
index 88ab8d72b4940253bc17179b5184fcc97bc40006..efd3caba047c6da923d0e59643de3bdebb5d4960 100644 (file)
@@ -16,7 +16,7 @@
 #include <stdarg.h>
 #include <arpa/inet.h>
 
-#define LIBCITADEL_VERSION_NUMBER      789
+#define LIBCITADEL_VERSION_NUMBER      800
 
 /*
  * Here's a bunch of stupid magic to make the MIME parser portable.
@@ -109,6 +109,7 @@ typedef enum _room_views {
        VIEW_MAX
 } ROOM_VIEWS;
 
+#define BLOG_EUIDBUF_SIZE      40
 
 #ifndef IsEmptyStr
 #define IsEmptyStr(a) ((a)[0] == '\0')
@@ -241,7 +242,6 @@ int StrBufTCP_read_buffered_line_fast(StrBuf *Line,
                                      const char **Error);
 
 
-int StrBufSipLine(StrBuf *LineBuf, StrBuf *Buf, const char **Ptr);
 
 typedef enum _eReadState {
        eReadFail,
@@ -264,7 +264,7 @@ int StrBuf_write_one_chunk_callback(int fd, short event, IOBuffer *FB);
 eReadState StrBufChunkSipLine(StrBuf *LineBuf, IOBuffer *FB);
 eReadState StrBufCheckBuffer(IOBuffer *FB);
 
-
+int StrBufSipLine(StrBuf *LineBuf, const StrBuf *Buf, const char **Ptr);
 int StrBufReplaceToken(StrBuf *Buf, long where, long HowLong, const char *Repl, long ReplLen);
 int StrBufExtract_token(StrBuf *dest, const StrBuf *Source, int parmnum, char separator);
 int StrBufSub(StrBuf *dest, const StrBuf *Source, unsigned long Offset, size_t nChars);
@@ -479,6 +479,8 @@ long lFlathash(const char *str, long len);
 #define IKEY(a) (const char*) &a, sizeof(a)
 #define LKEY(a) (const char*) &a, sizeof(a)
 
+int TestValidateHash(HashList *TestHash);
+
 HashList *NewHash(int Uniq, HashFunc F);
 void DeleteHash(HashList **Hash);
 void DeleteHashContent(HashList **Hash);
@@ -626,4 +628,7 @@ void WildFireSerializePayload(StrBuf *JsonBuffer, StrBuf *OutBuf, int *MsgCount,
 
 extern ConstStr RoomNetCfgStrs[maxRoomNetCfg];
 
+/* Convenience function to "perform a function and cut a log record if result != 0" */
+#define CtdlLogResult(x) if (x) syslog(LOG_CRIT, "%s:%d %s", __FILE__, __LINE__, strerror(errno))
+
 #endif // LIBCITADEL_H