/* 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
#define HAVE_SYS_MOUNT_H
#define SIOCGIFCONF_GIVES_ADDR
#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 <sys/param.h>
#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

/* End */
