/*
* ngIRCd -- The Next Generation IRC Daemon
- * Copyright (c)2001-2005 Alexander Barton (alex@barton.de)
+ * Copyright (c)2001-2010 Alexander Barton (alex@barton.de)
*
* 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.20 2005/04/09 18:27:16 alex Exp $
- *
- * Portability functions and declarations (header for libngbportab).
*/
-
#ifndef __PORTAB__
#define __PORTAB__
+/**
+ * @file
+ * Portability functions and declarations (header)
+ */
#include "config.h"
/* compiler features */
-#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7))
+#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 7))
# define PUNUSED(x) __attribute__ ((unused)) x
# define UNUSED __attribute__ ((unused))
#else
#endif
-/* keywords */
-#define LOCAL static
-
/* datatypes */
#ifndef PROTOTYPES
#endif
#endif
+#ifdef NeXT
+#define S_IRUSR 0000400 /* read permission, owner */
+#define S_IWUSR 0000200 /* write permission, owner */
+#define S_IRGRP 0000040 /* read permission, group */
+#define S_IROTH 0000004 /* read permission, other */
+#define ssize_t int
+#endif
+
#undef GLOBAL
#define GLOBAL
extern size_t strlcpy PARAMS(( char *dst, const char *src, size_t size ));
#endif
+#ifndef HAVE_STRDUP
+extern char * strdup PARAMS(( const char *s ));
+#endif
+
+#ifndef HAVE_STRTOK_R
+extern char * strtok_r PARAMS((char *str, const char *delim, char **saveptr));
+#endif
+
#ifndef HAVE_VSNPRINTF
#include <stdarg.h>
extern int vsnprintf PARAMS(( char *str, size_t count, const char *fmt, va_list args ));