1 /* Exim: OS-specific C header file for Darwin (Mac OS X) */
3 /* #define CRYPT_H */ /* Apparently this isn't needed */
6 #define HAVE_SYS_MOUNT_H
8 #define SIOCGIFCONF_GIVES_ADDR
10 /* OSX 10.2 does not have poll.h, 10.3 does emulate it badly. */
13 #define F_FREESP O_TRUNC
14 typedef struct flock flock_t;
16 #define BASE_62 36 /* HFS+ aliases lower and upper cases in filenames.
17 Consider reducing MAX_LOCALHOST_NUMBER */
19 #ifndef _BSD_SOCKLEN_T_
20 #define _BSD_SOCKLEN_T_ int32_t /* socklen_t (duh) */
23 /* Settings for handling IP options. There's no netinet/ip_var.h. The IP
24 option handling is in the style of the later GLIBCs but the GLIBC macros
25 aren't set, so we invent a new one. */
28 #define DARWIN_IP_OPTIONS
30 /* Need this for the DNS lookup code. Remember to remove if we get round to
31 updating Exim to use the newer interface. */
35 /* It's not .so for dynamic libraries on Darwin. */
36 #define DYNLIB_FN_EXT "dylib"
38 /* We currently need some assistance getting OFF_T_FMT correct on MacOS */
42 #define OFF_T_FMT "%lld"
43 #define LONGLONG_T long int
45 /* default is non-const */
46 #define ICONV_ARG2_TYPE const char **
48 /* seems arpa/nameser.h does not define this */
49 #define NS_MAXMSG 65535
51 /* There may be very many supplementary groups for the user. See notes
52 in "man 2 getgroups". */
53 #define _DARWIN_UNLIMITED_GETGROUPS
54 #define EXIM_GROUPLIST_SIZE 64
56 /* TCP_FASTOPEN support. For the moment, claim there is none
57 (the probe fails; unsure why).
58 Sometime in the future need to investigate connectex(). */
60 #define EXIM_TFO_PROBE