AC_HEADER_STDC
AC_HEADER_TIME
-AC_CHECK_FUNCS([lrintf strlcpy daemon dirname basename daemon strcasecmp localtime_r fallocate posix_fallocate])
+
+AC_MSG_CHECKING([for fallocate])
+AC_TRY_LINK([#include <linux/falloc.h>],
+ [return fallocate(-1,0,0,0);],
+ [AC_DEFINE([HAVE_FALLOCATE],[1],[Defined if fallocate() exists])
+ AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])])
+AC_CHECK_FUNCS([lrintf strlcpy daemon dirname basename daemon strcasecmp localtime_r posix_fallocate])
AC_PROG_INSTALL
AC_PROG_MAKE_SET
ACX_PTHREAD
#include <fcntl.h>
#endif
+#ifdef HAVE_FALLOCATE
+ #include <linux/falloc.h>
+#endif
+
#include <sys/types.h>
#include <sys/stat.h>
#ifdef HAVE_GETRLIMIT
{
#ifdef HAVE_FALLOCATE
- return fallocate( fd, 0, offset, length );
+ return fallocate( fd, FALLOC_FL_KEEP_SIZE, 0, length );
#elif defined(HAVE_POSIX_FALLOCATE)