X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/3634fc257bd0667daef14d72005cd87c735bbb24..1d28cc061677bd07d9bed48dd84bd5c590247043:/src/OS/os.h-OpenBSD diff --git a/src/OS/os.h-OpenBSD b/src/OS/os.h-OpenBSD index da9e1bf35..19db7189a 100644 --- a/src/OS/os.h-OpenBSD +++ b/src/OS/os.h-OpenBSD @@ -1,14 +1,66 @@ /* Exim: OS-specific C header file for OpenBSD */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2021 */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ +/* See the file NOTICE for conditions of use and distribution. */ + #define HAVE_BSD_GETLOADAVG #define HAVE_MMAP #define HAVE_SYS_MOUNT_H -#define SIOCGIFCONF_GIVES_ADDR +#define HAVE_GETIFADDRS +#define EXIM_HAVE_OPENAT +#define EXIM_HAVE_FUTIMENS #define HAVE_ARC4RANDOM +/* In May 2014, OpenBSD 5.5 was released which cleaned up the arc4random_* API + which removed the arc4random_stir() function. Set NOT_HAVE_ARC4RANDOM_STIR + if the version released is past that point. */ +#include +#if OpenBSD >= 201405 +# define NOT_HAVE_ARC4RANDOM_STIR +#endif typedef struct flock flock_t; #define os_strsignal strsignal #define OS_STRSIGNAL +typedef struct __res_state *res_state; + +/* default is non-const */ +#define ICONV_ARG2_TYPE const char ** + +#ifndef EPROTO +# 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 + +#define EXIM_HAVE_KEVENT + /* End */