/* Generic errno.h */
+/* $OpenLDAP$ */
/*
* Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
* All rights reserved.
# include <sys/errno.h>
#endif
-#ifdef DECL_SYS_ERRLIST
#ifndef HAVE_SYS_ERRLIST
-int sys_nerr;
-char **sys_errlist;
-#else
-extern int sys_nerr;
-extern char *sys_errlist[];
+ /* no sys_errlist */
+# define sys_nerr 0
+# define sys_errlist ((char **)0)
+#elif DECL_SYS_ERRLIST
+ /* have sys_errlist but need declaration */
+ LIBC_F (int) sys_nerr;
+ LIBC_F (char) *sys_errlist[];
#endif
+
+#ifdef HAVE_STRERROR
+#define STRERROR(err) strerror(err)
+#else
+#define STRERROR(err) \
+ ((err) > -1 && (err) < sys_nerr ? sys_errlist[(err)] : "unknown")
#endif
-
-/* use _POSIX_VERSION for POSIX.1 code */
+LIBC_F (char *) strerror_r();
+
#endif /* _AC_ERRNO_H */