summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@dtucker.net>2022-03-09 09:29:30 +1100
committerDarren Tucker <dtucker@dtucker.net>2022-03-09 09:29:30 +1100
commitc41c84b439f4cd74d4fe44298a4b4037ddd7d2ae (patch)
tree9c2d087470bcb5b5c9694de37a1cc969270da781
parent8cf5275452a950869cb90eeac7d220b01f77b12e (diff)
Check for missing ftruncate prototype.
From github PR#301 in conjunction with rsbeckerca.
-rw-r--r--configure.ac6
-rw-r--r--openbsd-compat/openbsd-compat.h4
2 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index a165d087..41761c5b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2092,6 +2092,12 @@ AC_CHECK_DECLS([O_NONBLOCK], , ,
#endif
])
+AC_CHECK_DECLS([ftruncate], , ,
+ [
+#include <sys/types.h>
+#include <unistd.h>
+ ])
+
AC_CHECK_DECLS([readv, writev], , , [
#include <sys/types.h>
#include <sys/uio.h>
diff --git a/openbsd-compat/openbsd-compat.h b/openbsd-compat/openbsd-compat.h
index c202e142..0cecfb62 100644
--- a/openbsd-compat/openbsd-compat.h
+++ b/openbsd-compat/openbsd-compat.h
@@ -65,6 +65,10 @@ int bindresvport_sa(int sd, struct sockaddr *sa);
void closefrom(int);
#endif
+#if defined(HAVE_DECL_FTRUNCATE) && HAVE_DECL_FTRUNCATE == 0
+int ftruncate(int filedes, off_t length);
+#endif
+
#ifndef HAVE_GETLINE
#include <stdio.h>
ssize_t getline(char **, size_t *, FILE *);