Prototype for strchrnul() on platforms lacking one (OpenBSD)
[exim.git] / src / OS / os.h-GNU
index 48a53599a9ec15ed8cd4f2256e81fed46574a818..4fe55fa5ea90fe9d5c68d1831233164e8d7c0538 100644 (file)
@@ -1,14 +1,17 @@
-/* $Cambridge: exim/src/OS/os.h-GNU,v 1.2 2005/01/04 10:25:58 ph10 Exp $ */
-
 /* Exim: OS-specific C header file for GNU/Hurd */
+/* Copyright (c) The Exim Maintainers 2020 - 2021 */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <features.h>
 
 #define CRYPT_H
 #define GLIBC_IP_OPTIONS
-#define HAVE_MMAP
 #define HAVE_BSD_GETLOADAVG
+#define HAVE_MMAP
 #define HAVE_SYS_VFS_H
 #define NO_IP_VAR_H
 #define SIG_IGN_WORKS
+#define SIOCGIFCONF_GIVES_ADDR
 
 #define F_FREESP     O_TRUNC
 typedef struct flock flock_t;
@@ -18,4 +21,15 @@ typedef struct flock flock_t;
 
 /* Hurd-specific bits below */
 
+/* default is non-const */
+#define ICONV_ARG2_TYPE const char **
+
+/* setgroups(0, NULL) succeeds, and drops the gid group
+as well as any supplementary groups*/
+#define OS_SETGROUPS_ZERO_DROPS_ALL
+
+#if _POSIX_C_SOURCE >= 200809L || _ATFILE_SOURCE
+# define EXIM_HAVE_OPENAT
+#endif
+
 /* End */