X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslurpd%2Flock.c;h=40c61a25171d2bc41280f96cb0432a61a6c1107b;hb=f3384af67ed3a8ced2145dddcc999f61cdc504ce;hp=6fbd4bbf9cc22cdbe6d36e9437cfd9927ecfa567;hpb=7e6ad5100c2702b1d56a285bdfb341ddf38c0d76;p=openldap diff --git a/servers/slurpd/lock.c b/servers/slurpd/lock.c index 6fbd4bbf9c..40c61a2517 100644 --- a/servers/slurpd/lock.c +++ b/servers/slurpd/lock.c @@ -22,12 +22,15 @@ #include #include #include -extern int flock (); +#ifdef HAVE_SYS_FILE_H #include +#endif +#ifdef HAVE_SYS_PARAM_H #include +#endif -#include "slurp.h" /* Was ../slapd/slap.h */ +#include "slurp.h" FILE * @@ -50,24 +53,13 @@ lock_fopen( } /* acquire the lock */ -#ifdef HAVE_FLOCK - while ( flock( fileno( *lfp ), LOCK_EX ) != 0 ) -#else - while ( lockf( fileno( *lfp ), F_LOCK, 0 ) != 0 ) -#endif - { - ; /* NULL */ - } + ldap_lockf( fileno(*lfp) ); /* open the log file */ if ( (fp = fopen( fname, type )) == NULL ) { Debug( LDAP_DEBUG_ANY, "Error: could not open \"%s\"\n", fname, 0, 0 ); -#ifdef HAVE_FLOCK - flock( fileno( *lfp ), LOCK_UN ); -#else - lockf( fileno( *lfp ), F_ULOCK, 0 ); -#endif + ldap_unlockf( fileno(*lfp) ); fclose( *lfp ); *lfp = NULL; return( NULL ); @@ -85,11 +77,7 @@ lock_fclose( ) { /* unlock */ -#ifdef HAVE_FLOCK - flock( fileno( lfp ), LOCK_UN ); -#else - lockf( fileno( lfp ), F_ULOCK, 0 ); -#endif + ldap_unlockf( fileno(lfp) ); fclose( lfp ); return( fclose( fp ) );