updates
[silc.git] / includes / silcincludes.h
index 63c9da34a06fdf05bdb77876a0a0b9d8e6b04d72..56e265398869b3d974007957750c024df2965c16 100644 (file)
 #include <pthread.h>
 #endif
 
+#ifdef HAVE_STDDEF_H
+#include <stddef.h>
+#endif
+
 #endif                         /* !SILC_WIN32 */
 
 #ifndef HAVE_GETOPT_LONG
 #define FALSE 0
 #endif
 
+/* Define offsetof */
+#ifndef offsetof
+#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
+#endif
+
 /* Define types. The types must be at least of the specified size */
 #undef uint8
 #undef uint16
@@ -196,6 +205,9 @@ typedef signed long int64;
 #ifndef WIN32
 typedef unsigned long long uint64;
 typedef signed long long int64;
+#else
+typedef uint32 uint64; /* XXX Use Windows's own 64 bit types */
+typedef int32 int64;
 #endif
 #else
 typedef uint32 uint64;
@@ -208,8 +220,10 @@ typedef uint32 * void *;
 #endif
 
 #ifndef bool
+#ifndef CXX
 #define bool unsigned char
 #endif
+#endif
 
 /* Generic global SILC includes */
 #include "bitmove.h"
@@ -228,23 +242,25 @@ typedef uint32 * void *;
 /* SILC util library includes */
 #include "silcmutex.h"
 #include "silcthread.h"
+#include "silcschedule.h"
 #include "silchashtable.h"
 #include "silclog.h"
 #include "silcmemory.h"
+#include "silclist.h"
+#include "silcdlist.h"
 #include "silcbuffer.h"
 #include "silcbufutil.h"
 #include "silcbuffmt.h"
 #include "silcnet.h"
 #include "silcutil.h"
 #include "silcconfig.h"
-#include "silcschedule.h"
+#include "silcprotocol.h"
+#include "silcsockconn.h"
 
 /* SILC core library includes */
 #include "silcid.h"
 #include "silcidcache.h"
-#include "silcprotocol.h"
-#include "silcsockconn.h"
-#include "silcpayload.h"
+#include "silcargument.h"
 #include "silccommand.h"
 #include "silcchannel.h"
 #include "silcpacket.h"
@@ -253,10 +269,6 @@ typedef uint32 * void *;
 #include "silcauth.h"
 #include "silcprivate.h"
 
-/* TRQ (SilcList API and SilcDList API) */
-#include "silclist.h"
-#include "silcdlist.h"
-
 #ifdef SILC_SIM
 /* SILC Module library includes */
 #include "silcsim.h"
@@ -268,5 +280,8 @@ typedef uint32 * void *;
 #include "payload.h"
 #include "groups.h"
 
-#endif
+/* SILC SFTP library */
+#include "silcsftp.h"
+#include "silcsftp_fs.h"
 
+#endif