]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/portab/portab.h
Fixed spelling mistake :-)
[ngircd-alex.git] / src / portab / portab.h
index b2bd98161786eb3919055050c1a51f82bc88cc18..dc0a4f926d497d3a8f770dbd935e8a0b3e20dc16 100644 (file)
@@ -1,17 +1,16 @@
 /*
  * ngIRCd -- The Next Generation IRC Daemon
- * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
+ * Copyright (c)2001-2003 by Alexander Barton (alex@barton.de)
  *
- * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
- * der GNU General Public License (GPL), wie von der Free Software Foundation
- * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
- * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
- * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
- * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ * Please read the file COPYING, README and AUTHORS for more information.
  *
- * $Id: portab.h,v 1.3 2002/03/25 19:13:19 alex Exp $
+ * $Id: portab.h,v 1.15 2003/03/31 19:01:02 alex Exp $
  *
- * portab.h: "Portabilitaets-Definitionen"
+ * Portability functions and declarations (header for libngbportab).
  */
 
 
 
 #include "config.h"
 
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
 
-/* Keywords */
+/* compiler features */
+
+#ifdef __GNUC__
+# define PUNUSED(x) __attribute__ ((unused)) x
+# define UNUSED     __attribute__ ((unused))
+#else
+# define PUNUSED(x) x
+# define UNUSED
+#endif
+
+#ifndef PARAMS
+# if PROTOTYPES
+#  define PARAMS(args) args
+# else
+#  define PARAMS(args) ()
+# endif
+#endif
+
+
+/* keywords */
 
 #define EXTERN extern
 #define STATIC static
 #define LOCAL static
 #define CONST const
+#define REGISTER register
 
 
-/* Datatentypen */
+/* datatypes */
+
+#ifndef PROTOTYPES
+# ifndef signed
+#  define signed
+# endif
+#endif
 
 typedef void VOID;
 typedef void POINTER;
 
 typedef signed int INT;
 typedef unsigned int UINT;
+typedef signed long LONG;
+typedef unsigned long ULONG;
+
 typedef signed char INT8;
 typedef unsigned char UINT8;
 typedef signed short INT16;
@@ -44,6 +76,7 @@ typedef unsigned short UINT16;
 typedef signed long INT32;
 typedef unsigned long UINT32;
 
+typedef double DOUBLE;
 typedef float FLOAT;
 
 typedef char CHAR;
@@ -57,7 +90,11 @@ typedef UINT8 BOOLEAN;
 #define FALSE (BOOLEAN)0
 
 #undef NULL
-#define NULL (VOID *)0
+#ifdef PROTOTYPES
+# define NULL (VOID *)0
+#else
+# define NULL 0L
+#endif
 
 #undef GLOBAL
 #define GLOBAL
@@ -71,33 +108,50 @@ typedef UINT8 BOOLEAN;
 #endif
 
 
-/* configure-Optionen */
+/* target constants  */
+
+#ifndef TARGET_OS
+#define TARGET_OS "unknown"
+#endif
+
+#ifndef TARGET_CPU
+#define TARGET_CPU "unknown"
+#endif
+
+#ifndef TARGET_VENDOR
+#define TARGET_VENDOR "unknown"
+#endif
+
+
+/* configure options */
 
 #ifndef HAVE_socklen_t
 #define socklen_t int                  /* u.a. fuer Mac OS X */
 #endif
 
-#ifndef HAVE_INET_ATON
-#define inet_aton( opt, bind ) 0       /* Dummy fuer inet_aton() */
+#ifndef HAVE_SNPRINTF
+EXTERN INT snprintf PARAMS(( CHAR *str, size_t count, CONST CHAR *fmt, ... ));
 #endif
 
-#if OS_UNIX_AUX
-#define _POSIX_SOURCE                  /* muss unter A/UX definiert sein */
+#ifndef HAVE_STRLCAT
+EXTERN size_t strlcat PARAMS(( CHAR *dst, CONST CHAR *src, size_t size ));
 #endif
 
+#ifndef HAVE_STRLCPY
+EXTERN size_t strlcpy PARAMS(( CHAR *dst, CONST CHAR *src, size_t size ));
+#endif
 
-/* Konstanten */
-
-#ifndef TARGET_OS
-#define TARGET_OS "unknown"
+#ifndef HAVE_VSNPRINTF
+#include <stdarg.h>
+EXTERN INT vsnprintf PARAMS(( CHAR *str, size_t count, CONST CHAR *fmt, va_list args ));
 #endif
 
-#ifndef TARGET_CPU
-#define TARGET_CPU "unknown"
+#ifndef PACKAGE_NAME
+#define PACKAGE_NAME PACKAGE
 #endif
 
-#ifndef TARGET_VENDOR
-#define TARGET_VENDOR "unknown"
+#ifndef PACKAGE_VERSION
+#define PACKAGE_VERSION VERSION
 #endif