X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=includes%2Fsilc.h.in;h=b4a65f679f7528980222385102afec224c8ab6df;hb=be10e71673bc538573b1805ee2115f2a3a7281a2;hp=06b5332236b80bf1a963130778f23869d233ae9e;hpb=300127ede1b11277d9a90d0f5a70061aa0ee2e2d;p=silc.git diff --git a/includes/silc.h.in b/includes/silc.h.in index 06b53322..b4a65f67 100644 --- a/includes/silc.h.in +++ b/includes/silc.h.in @@ -4,7 +4,7 @@ Author: Pekka Riikonen - Copyright (C) 1997 - 2006 Pekka Riikonen + Copyright (C) 1997 - 2008 Pekka Riikonen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,320 +21,93 @@ by all files in SILC (directly or through other global include file). */ -#ifndef SILCINCLUDES_H -#define SILCINCLUDES_H +#ifndef SILC_H +#define SILC_H -#ifdef __cplusplus -extern "C" { -#endif - -#define SILC_UNIX - -#ifdef WIN32 -#ifndef SILC_WIN32 -#define SILC_WIN32 -#undef SILC_UNIX -#endif -#endif - -#if defined(__EPOC32__) -#ifndef SILC_EPOC -#define SILC_EPOC -#undef SILC_UNIX -#endif -#endif - -#ifdef BEOS -#ifndef SILC_BEOS -#define SILC_BEOS -#undef SILC_UNIX -#endif -#elif defined(__BEOS__) -#ifndef SILC_BEOS -#define SILC_BEOS -#undef SILC_UNIX -#endif -#endif - -#if defined(OS2) -#ifndef SILC_OS2 -#define SILC_OS2 -#undef SILC_UNIX -#endif -#endif - -#if defined(__MACH__) && defined(__APPLE__) -#ifndef SILC_MACOSX -#define SILC_MACOSX -#endif -#endif - -/* Types */ -#define SILC_SIZEOF_LONG_LONG @SILC_SIZEOF_LONG_LONG@ -#define SILC_SIZEOF_LONG @SILC_SIZEOF_LONG@ -#define SILC_SIZEOF_INT @SILC_SIZEOF_INT@ -#define SILC_SIZEOF_SHORT @SILC_SIZEOF_SHORT@ -#define SILC_SIZEOF_CHAR @SILC_SIZEOF_CHAR@ -#define SILC_SIZEOF_VOID_P @SILC_SIZEOF_VOID_P@ - -/* Compilation time defines, for third-party software */ -@__SILC_HAVE_PTHREAD@ -@__SILC_HAVE_SIM@ -@__SILC_ENABLE_DEBUG@ - -#if defined(HAVE_SILCDEFS_H) -/* Automatically generated configuration header */ -#include "silcdefs.h" -#include "silcdistdefs.h" -#endif /* HAVE_SILCDEFS_H */ - -/* Platform specific includes */ - -#if defined(SILC_WIN32) -#include "silcwin32.h" -#endif - -#if defined(SILC_EPOC) -#include "silcepoc.h" -#endif +/* Version check macro. Use this to check that package is of specific + version compile time. Use the __SILC_XXX_VERSION below in comparison. + Example: -#if defined(SILC_BEOS) -#include "silcbeos.h" -#endif + #if __SILC_TOOLKIT_VERSION < SILC_VERSION(1,2,0) + ... + #endif +*/ +#ifndef SILC_VERSION +#define SILC_VERSION(a, b, c) (((a) << 24) + ((b) << 16) + ((c) << 8) +#endif /* !SILC_VERSION */ -#if defined(SILC_OS2) -#include "silcos2.h" -#endif +/* SILC Crypto Toolkit version */ +@__SILC_PACKAGE_VERSION@ -#ifndef DLLAPI -#define DLLAPI +#ifdef __cplusplus +extern "C" { #endif +/* We except all systems to have these include files */ #include #include #include -#include -#include -#include -#include -#include - -#ifdef HAVE_SIGNAL_H -#include -#endif - -#ifdef HAVE_FCNTL_H -#include -#endif - -#ifdef HAVE_ERRNO_H -#include -#endif - -#ifdef HAVE_ASSERT_H -#include -#endif - -#if !defined(SILC_WIN32) - -#include -#include -#include -#include -#include - -#if defined(HAVE_GETOPT_H) && defined(HAVE_GETOPT) -#include -#else -#if defined(HAVE_SILCDEFS_H) -#include "getopti.h" -#endif /* HAVE_SILCDEFS_H */ -#endif - -#ifdef SOCKS5 -#include "socks.h" -#endif - -#include -#ifdef HAVE_NETINET_IN_H -#include -#endif - -#ifdef HAVE_XTI_H -#include -#else -#ifdef HAVE_NETINET_TCP_H -#include -#endif -#endif - -#ifdef HAVE_NETDB_H -#include -#endif -#ifdef HAVE_ARPA_INET_H -#include -#endif - -#ifdef HAVE_SYS_MMAN_H -#include -#endif - -#ifdef HAVE_DLFCN_H -#include -#endif - -#ifdef HAVE_LIMITS_H -#include -#endif - -#ifndef HAVE_REGEX_H #if defined(HAVE_SILCDEFS_H) -#include "regexpr.h" -#endif /* HAVE_SILCDEFS_H */ +/* Automatically generated configuration header. These are included only + when the SILC Toolkit itself is compiled. */ +#ifndef SILC_SYMBIAN +#include "silcdefs.h" #else -#include -#endif - -#ifdef SILC_HAVE_PTHREAD -#include -#endif - -#ifdef HAVE_STDDEF_H -#include -#endif - -#ifdef HAVE_TERMIOS_H -#include -#endif - -#ifdef HAVE_UTIME_H -#include -#endif - -#ifdef HAVE_ICONV_H -#include -#endif - -#ifdef HAVE_LOCALE_H -#include -#endif - -#ifdef HAVE_LANGINFO_H -#include -#endif - -#ifdef HAVE_SYS_RESOURCE_H -#include -#endif - -#endif /* !SILC_WIN32 */ - -/* Include generic SILC type definitions */ -#include "silctypes.h" -#include "silcversion.h" - -/* SILC util library includes */ -#include "silcstack.h" -#include "silcmemory.h" - -/* Math library includes */ -#include "silcmp.h" -#include "silcmath.h" - -/* More SILC util library includes */ -#include "silcbuffer.h" -#include "silcbuffmt.h" +#include "../../symbian/silcdefs.h" +#endif /* SILC_SYMBIAN */ +#include "silcdistdefs.h" +#include "silccompile.h" +#endif /* HAVE_CRYPTODEFS_H */ -/* Crypto library includes */ -#include "silccipher.h" -#include "silchash.h" -#include "silchmac.h" -#include "silcrng.h" -#include "silcpkcs.h" -#include "silcpk.h" -#include "silcpkcs1.h" +/* SRT and SCT include */ +#include +#include -/* More SILC util library includes */ -#include "silctime.h" -#include "silcmutex.h" -#include "silccond.h" -#include "silcthread.h" -#include "silcatomic.h" -#include "silcschedule.h" -#include "silchashtable.h" -#include "silclog.h" -#include "silclist.h" -#include "silcdlist.h" -#include "silcasync.h" -#include "silcstream.h" -#include "silcnet.h" -#include "silcfileutil.h" -#include "silcstrutil.h" -#include "silcutf8.h" -#include "silcstringprep.h" -#include "silcutil.h" -#include "silcconfig.h" -#include "silcfsm.h" -#include "silcsocketstream.h" -#include "silcfdstream.h" -#include "silcvcard.h" -#include "silcapputil.h" -#include "silcmime.h" +#include -#ifdef SILC_DIST_ASN1 -#include "silcasn1.h" -#include "silcber.h" -#endif /* SILC_DIST_ASN1 */ +#ifdef SILC_DIST_VCARD +#include +#endif /* SILC_DIST_VCARD */ /* SILC core library includes */ -#include "silcargument.h" -#include "silcstatus.h" -#include "silcid.h" -#include "silccommand.h" -#include "silcmessage.h" -#include "silcchannel.h" -#include "silcpacket.h" -#include "silcnotify.h" -#include "silcmode.h" -#include "silcauth.h" -#include "silcattrs.h" -#include "silcpubkey.h" - -#ifdef SILC_DIST_IDCACHE -#include "silcidcache.h" -#endif /* SILC_DIST_IDCACHE */ - -#ifdef SILC_DIST_SKR -#include "silcskr.h" -#endif /* SILC_DIST_SKR */ - -#if defined(SILC_SIM) -/* SILC Module library includes */ -#include "silcsim.h" -#include "silcsimutil.h" -#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* Application utility includes */ +#include +#include /* SILC Key Exchange library includes */ -#include "silcske.h" -#include "silcske_payload.h" -#include "silcske_groups.h" -#include "silcconnauth.h" +#include +#include +#include +#include #ifdef SILC_DIST_SFTP /* SILC SFTP library */ -#include "silcsftp.h" -#include "silcsftp_fs.h" +#include +#include #endif /* SILC_DIST_SFTP */ #ifdef SILC_DIST_HTTP /* SILC HTTP library */ -#include "silchttpserver.h" -#include "silchttpphp.h" +#include +#include #endif /* SILC_DIST_HTTP */ #ifdef __cplusplus } #endif -#endif /* SILCINCLUDES_H */ +#endif /* SILC_H */