From: Ben Collins Date: Sat, 13 Mar 1999 20:31:55 +0000 (+0000) Subject: Macros for file locking/unlocking added (ldap_lockf/ldap_unlockf) X-Git-Tag: OPENLDAP_SLAPD_BACK_LDAP~392 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=4e733cf0248a8e0c876365893f9af5eed8910289;p=openldap Macros for file locking/unlocking added (ldap_lockf/ldap_unlockf) --- diff --git a/include/ac/unistd.h b/include/ac/unistd.h index 4c2d4ebd73..8b9c98c773 100644 --- a/include/ac/unistd.h +++ b/include/ac/unistd.h @@ -54,4 +54,23 @@ extern char* getpass LDAP_P((const char *getpass)); /* use _POSIX_VERSION for POSIX.1 code */ +/* Setup file locking macros */ +#if HAVE_LOCKF +# define ldap_lockf(x) lockf(fileno(x),F_LOCK, 0) +# define ldap_unlockf(x) lockf(fileno(x),F_ULOCK, 0) +#elif HAVE_FCNTL_H +# ifndef NEED_FCNTL_LOCKING +# define NEED_FCNTL_LOCKING +# endif +# include +# define ldap_lockf(x) lutil_ldap_lockf(x) +# define ldap_unlockf(x) lutil_ldap_unlockf(x) +#elif HAVE_FLOCK +# if HAVE_SYS_FILE_H +# include +# endif +# define ldap_lockf(x) flock(fileno(x),LOCK_EX) +# define ldap_unlockf(x) flock(fileno(x),LOCK_UN) +#endif + #endif /* _AC_UNISTD_H */