Fix taint-checking on OpenBSD
[users/jgh/exim.git] / src / OS / os.h-OpenBSD
index 5d55a967ea5d6dda5f736e69df493f2913cd29ff..dde779f00fc15bcd94d76b0890d63dd8b28738f8 100644 (file)
@@ -1,4 +1,7 @@
 /* Exim: OS-specific C header file for OpenBSD */
+/* Copyright (c) University of Cambridge 1995 - 2018 */
+/* See the file NOTICE for conditions of use and distribution. */
+
 
 #define HAVE_BSD_GETLOADAVG
 #define HAVE_MMAP
@@ -10,7 +13,7 @@
    if the version released is past that point. */
 #include <sys/param.h>
 #if OpenBSD >= 201405
-#define NOT_HAVE_ARC4RANDOM_STIR
+# define NOT_HAVE_ARC4RANDOM_STIR
 #endif
 
 typedef struct flock flock_t;
@@ -27,4 +30,31 @@ typedef struct __res_state *res_state;
 # define EPROTO 71
 #endif
 
+/* We need to force this; the automatic in buildconfig.c gets %ld */
+#ifdef OFF_T_FMT
+# undef OFF_T_FMT
+# undef LONGLONG_T
+#endif
+#define OFF_T_FMT "%lld"
+#define LONGLONG_T long long int
+
+#ifdef PID_T_FMT
+# undef PID_T_FMT
+#endif
+#define PID_T_FMT "%d"
+
+#ifdef INO_T_FMT
+# undef INO_T_FMT
+#endif
+#define INO_T_FMT "%llu"
+
+#ifdef TIME_T_FMT
+# undef TIME_T_FMT
+#endif
+#define TIME_T_FMT "%lld"
+
+/* seems arpa/nameser.h does not define this.
+Space-constrained devices could use much smaller; a few k. */
+#define NS_MAXMSG 65535
+
 /* End */