Fix build on GNU/Hurd [supports openat()]. Bug 2608
[exim.git] / src / OS / os.h-GNU
index 48a53599a9ec15ed8cd4f2256e81fed46574a818..2c3b7b5f557bafd16ee92ccf731d4da82aca47e4 100644 (file)
@@ -1,14 +1,16 @@
-/* $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 */
+
+#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 +20,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 */