/* Generic unistd.h */
-/*
- * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
+/* $OpenLDAP$ */
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * Copyright 1998-2009 The OpenLDAP Foundation.
* All rights reserved.
*
- * Redistribution and use in source and binary forms are permitted only
- * as authorized by the OpenLDAP Public License. A copy of this
- * license is available at http://www.OpenLDAP.org/license.html or
- * in file LICENSE in the top-level directory of the distribution.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted only as authorized by the OpenLDAP
+ * Public License.
+ *
+ * A copy of this license is available in file LICENSE in the
+ * top-level directory of the distribution or, alternatively, at
+ * <http://www.OpenLDAP.org/license.html>.
*/
#ifndef _AC_UNISTD_H
#define _AC_UNISTD_H
-#if HAVE_SYS_TYPES_H
+#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
-#if HAVE_UNISTD_H
+#ifdef HAVE_UNISTD_H
# include <unistd.h>
#endif
-/* crypt() may be defined in a separate include file */
-#if HAVE_CRYPT_H
-# include <crypt.h>
-#else
- extern char *(crypt)();
+#ifdef HAVE_PROCESS_H
+# include <process.h>
#endif
-#ifndef HAVE_GETPASS
-LDAP_F(char*)(getpass) LDAP_P((const char *getpass));
+/* note: callers of crypt(3) should include <ac/crypt.h> */
+
+#if defined(HAVE_GETPASSPHRASE)
+LDAP_LIBC_F(char*)(getpassphrase)();
+
#else
-LDAP_F(char*)(getpass)();
+#define getpassphrase(p) lutil_getpass(p)
+LDAP_LUTIL_F(char*)(lutil_getpass) LDAP_P((const char *getpass));
#endif
/* getopt() defines may be in separate include file */
-#if HAVE_GETOPT_H
+#ifdef HAVE_GETOPT_H
# include <getopt.h>
#elif !defined(HAVE_GETOPT)
#else
/* assume we need to declare these externs */
- extern char *optarg;
- extern int optind, opterr, optopt;
-#endif
-
-#ifndef HAVE_TEMPNAM
- LDAP_F(char *)(tempnam) LDAP_P((
- const char *tmpdir,
- const char *prefix));
-#endif
-#ifndef HAVE_MKTEMP
- LDAP_F(char *)(mktemp) LDAP_P((char *));
+ LDAP_LIBC_V (char *) optarg;
+ LDAP_LIBC_V (int) optind, opterr, optopt;
#endif
/* use lutil file locking */
#define ldap_unlockf(x) lutil_unlockf(x)
#include <lutil_lockf.h>
+/*
+ * Windows: although sleep() will be resolved by both MSVC and Mingw GCC
+ * linkers, the function is not declared in header files. This is
+ * because Windows' version of the function is called _sleep(), and it
+ * is declared in stdlib.h
+ */
+
+#ifdef _WIN32
+#define sleep _sleep
+#endif
+
#endif /* _AC_UNISTD_H */