r13811: nicer format...
[samba.git] / source4 / include / includes.h
index 68e369a77be2ae36ca162c887ba9009fdecd661a..83bc9569cb5b7de8b7c3fab8b3d6d11f3c98a18b 100644 (file)
 
 #ifndef NO_CONFIG_H /* for some tests */
 #include "config.h"
-#include "smb_build.h"
 #endif
 
 #include "local.h"
 
-#if (__GNUC__ >= 3)
+#ifdef __GNUC__
+/** gcc attribute used on function parameters so that it does not emit
+ * warnings about them being unused. **/
+#  define UNUSED(param) param __attribute__ ((unused))
+#else
+#  define UNUSED(param) param
+/** Feel free to add definitions for other compilers here. */
+#endif
+
+#ifndef PRINTF_ATTRIBUTE
+#if !defined(NO_PRINTF_ATTRIBUTE) && (__GNUC__ >= 3)
 /** Use gcc attribute to check printf fns.  a1 is the 1-based index of
  * the parameter containing the format, and a2 the index of the first
  * argument. Note that some gcc 2.x versions don't handle this
 #else
 #define PRINTF_ATTRIBUTE(a1, a2)
 #endif
-
-#ifdef __GNUC__
-/** gcc attribute used on function parameters so that it does not emit
- * warnings about them being unused. **/
-#  define UNUSED(param) param __attribute__ ((unused))
-#else
-#  define UNUSED(param) param
-/** Feel free to add definitions for other compilers here. */
 #endif
 
 #include <sys/types.h>
 #include <stdint.h>
 #endif
 
+#ifdef HAVE_INTTYPES_H
+#include <inttypes.h>
+#endif
+
 #ifdef HAVE_STRING_H
 #include <string.h>
 #endif
 #include <varargs.h>
 #endif
 
-/* we support ADS if we want it and have krb5 and ldap libs */
-#if defined(WITH_ADS) && defined(HAVE_KRB5) && defined(HAVE_LDAP)
-#define HAVE_ADS
-#endif
-
-/*
- * Define VOLATILE if needed.
- */
-
-#if defined(HAVE_VOLATILE)
-#define VOLATILE volatile
-#else
-#define VOLATILE
-#endif
-
-#define False (0)
-#define True (1)
-#define Auto (2)
-
-typedef int BOOL;
-
-/*
-  we use struct ipv4_addr to avoid having to include all the
-  system networking headers everywhere
-*/
-struct ipv4_addr {
-       uint32_t addr;
+/* protocol types. It assumes that higher protocols include lower protocols
+   as subsets. FIXME: Move to one of the smb-specific headers */
+enum protocol_types {
+       PROTOCOL_NONE,
+       PROTOCOL_CORE,
+       PROTOCOL_COREPLUS,
+       PROTOCOL_LANMAN1,
+       PROTOCOL_LANMAN2,
+       PROTOCOL_NT1
 };
 
-#ifndef HAVE_STRERROR
-extern char *sys_errlist[];
-#define strerror(i) sys_errlist[i]
-#endif
+/* passed to br lock code. FIXME: Move to one of the smb-specific headers */
+enum brl_type {
+       READ_LOCK,
+       WRITE_LOCK,
+       PENDING_READ_LOCK,
+       PENDING_WRITE_LOCK
+};
 
-#ifndef HAVE_ERRNO_DECL
-extern int errno;
-#endif
+#define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2)
+#include "lib/replace/replace.h"
 
 /* Lists, trees, caching, database... */
-#include "xfile.h"
-#define TALLOC_DEPRECATED 1
-#include "lib/talloc/talloc.h"
 #include "nt_status.h"
+#include "talloc/talloc.h"
+#include "core.h"
+#include "charset/charset.h"
 #include "structs.h"
-#include "lib/tdb/include/tdb.h"
-#include "lib/tdb/include/spinlock.h"
-#include "lib/tdb/include/tdbutil.h"
-#include "db_wrap.h"
-#include "trans2.h"
-#include "nterr.h"
-#include "charset.h"
-#include "debug.h"
-#include "doserr.h"
-#include "enums.h"
-#include "pstring.h"
-#include "smb_macros.h"
-#include "smb.h"
-#include "ads.h"
-#include "lib/socket/socket.h"
-#include "libcli/ldap/ldap.h"
-#include "byteorder.h"
-#include "module.h"
-#include "mutex.h"
+#include "util/util.h"
+#include "libcli/util/nterr.h"
+#include "libcli/util/doserr.h"
 #include "librpc/ndr/libndr.h"
-#include "librpc/gen_ndr/ndr_misc.h"
-#include "librpc/gen_ndr/ndr_dcerpc.h"
+#include "librpc/gen_ndr/dcerpc.h"
+#include "librpc/ndr/ndr_orpc.h"
+#include "librpc/gen_ndr/orpc.h"
 #include "librpc/rpc/dcerpc.h"
-#include "lib/dcom/common/dcom.h"
-#include "librpc/gen_ndr/ndr_dcom.h"
-#include "smb_interfaces.h"
-#include "smbd/server.h"
-#include "smbd/service.h"
-#include "ntvfs/ntvfs.h"
-#include "cli_context.h"
-#include "nsswitch/winbind_client.h"
-
-#define malloc_p(type) (type *)malloc(sizeof(type))
-#define malloc_array_p(type, count) (type *)realloc_array(NULL, sizeof(type), count)
-#define realloc_p(p, type, count) (type *)realloc_array(p, sizeof(type), count)
-
-#ifndef HAVE_COMPARISON_FN_T
-typedef int (*comparison_fn_t)(const void *, const void *);
-#endif
+#include "libcli/raw/trans2.h"
+#include "libcli/raw/interfaces.h"
+#include "auth/credentials/credentials.h"
+#include "libcli/nbt/libnbt.h"
 
-/***** automatically generated prototypes *****/
-#define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2)
-#include "proto.h"
 #undef _PRINTF_ATTRIBUTE
 #define _PRINTF_ATTRIBUTE(a1, a2)
 
-/* String routines */
-
-#include "safe_string.h"
-
-#ifdef __COMPAR_FN_T
-#define QSORT_CAST (__compar_fn_t)
-#endif
-
-#ifndef QSORT_CAST
-#define QSORT_CAST (int (*)(const void *, const void *))
-#endif
-
-#ifndef HAVE_PIPE
-#define SYNC_DNS 1
-#endif
-
-#ifndef HAVE_STRDUP
-char *strdup(const char *s);
-#endif
-
-#ifndef HAVE_MEMMOVE
-void *memmove(void *dest,const void *src,int size);
-#endif
-
-#ifndef HAVE_MKTIME
-time_t mktime(struct tm *t);
-#endif
-
-#ifndef HAVE_STRLCPY
-size_t strlcpy(char *d, const char *s, size_t bufsize);
-#endif
-
-#ifndef HAVE_STRLCAT
-size_t strlcat(char *d, const char *s, size_t bufsize);
-#endif
-
-#ifndef HAVE_STRNDUP
-char *strndup(const char *s, size_t n);
-#endif
-
-#ifndef HAVE_STRNLEN
-size_t strnlen(const char *s, size_t n);
-#endif
-
-#ifndef HAVE_STRTOUL
-unsigned long strtoul(const char *nptr, char **endptr, int base);
-#endif
-
-#ifndef HAVE_SETENV
-int setenv(const char *name, const char *value, int overwrite); 
-#endif
+/***** automatically generated prototypes *****/
+#include "include/proto.h"
 
-#ifndef HAVE_VASPRINTF_DECL
-int vasprintf(char **ptr, const char *format, va_list ap);
-#endif
+/* String routines */
 
-#if !defined(HAVE_BZERO) && defined(HAVE_MEMSET)
-#define bzero(a,b) memset((a),'\0',(b))
-#endif
+#include "util/safe_string.h"
 
 extern int DEBUGLEVEL;
 
-/* add varargs prototypes with printf checking */
-#ifndef HAVE_SNPRINTF_DECL
-int snprintf(char *,size_t ,const char *, ...) PRINTF_ATTRIBUTE(3,4);
-#endif
-#ifndef HAVE_ASPRINTF_DECL
-int asprintf(char **,const char *, ...) PRINTF_ATTRIBUTE(2,3);
-#endif
-
-
-/* we used to use these fns, but now we have good replacements
-   for snprintf and vsnprintf */
-#define slprintf snprintf
-
-
-#ifdef HAVE_VA_COPY
-#define VA_COPY(dest, src) va_copy(dest, src)
-#elif defined(HAVE___VA_COPY)
-#define VA_COPY(dest, src) __va_copy(dest, src)
-#else
-#define VA_COPY(dest, src) (dest) = (src)
-#endif
-
 #if defined(VALGRIND)
 #define strlen(x) valgrind_strlen(x)
 #endif
@@ -271,21 +155,11 @@ int asprintf(char **,const char *, ...) PRINTF_ATTRIBUTE(2,3);
   Also, please call this via the discard_const_p() macro interface, as that
   makes the return type safe.
 */
-#ifdef HAVE_INTPTR_T
 #define discard_const(ptr) ((void *)((intptr_t)(ptr)))
-#else
-#define discard_const(ptr) ((void *)(ptr))
-#endif
 #define discard_const_p(type, ptr) ((type *)discard_const(ptr))
 
-#ifndef UINT16_MAX
-#define UINT16_MAX 65535
+#ifndef _PUBLIC_
+#define _PUBLIC_
 #endif
 
-/*
-  type safe varient of smb_xmalloc()
-*/
-#define smb_xmalloc_p(type) (type *)smb_xmalloc(sizeof(type))
-
 #endif /* _INCLUDES_H */
-