]> git.sur5r.net Git - openldap/blobdiff - include/ac/unistd.h
streamline group attr specification/diagnostics
[openldap] / include / ac / unistd.h
index d62d3b86bde7dc8331091c13d7efc67d80001a30..dd3c2788ae83cf1e8db423ebed6aff48d4b24868 100644 (file)
@@ -1,13 +1,17 @@
 /* Generic unistd.h */
 /* $OpenLDAP$ */
-/*
- * Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
+/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
+ *
+ * Copyright 1998-2007 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
 #      include <unistd.h>
 #endif
 
+#if HAVE_PROCESS_H
+#      include <process.h>
+#endif
+
 /* note: callers of crypt(3) should include <ac/crypt.h> */
 
-#ifdef __MINGW32__
-#   undef LDAP_F_PRE
-#   ifdef LIBLUTIL_DECL
-#      define LDAP_F_PRE       extern __declspec(LIBLUTIL_DECL)
-#   else
-#      define LDAP_F_PRE       extern
-#   endif
-#endif
+#if defined(HAVE_GETPASSPHRASE)
+LDAP_LIBC_F(char*)(getpassphrase)();
+
+#elif defined(HAVE_GETPASS)
+#define getpassphrase(p) getpass(p)
+LDAP_LIBC_F(char*)(getpass)();
 
-#ifndef HAVE_GETPASS
-LDAP_F(char*)(getpass) LDAP_P((const char *getpass));
 #else
-LDAP_F(char*)(getpass)();
+#define NEED_GETPASSPHRASE 1
+#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 */
@@ -48,21 +54,8 @@ LDAP_F(char*)(getpass)();
 
 #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
-
-/* This is never even checked for or implemented if not present */
-#if 0
-#ifndef HAVE_MKTEMP
-       LDAP_F(char *)(mktemp) LDAP_P((char *));
-#endif
+       LDAP_LIBC_V (char *) optarg;
+       LDAP_LIBC_V (int) optind, opterr, optopt;
 #endif
 
 /* use lutil file locking */
@@ -70,4 +63,15 @@ LDAP_F(char*)(getpass)();
 #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 */