MacOS: TCP Fast Open
[exim.git] / src / OS / os.h-Darwin
CommitLineData
61ec970d
PH
1/* Exim: OS-specific C header file for Darwin (Mac OS X) */
2
3/* #define CRYPT_H */ /* Apparently this isn't needed */
4
5#define HAVE_MMAP
6#define HAVE_SYS_MOUNT_H
7#define PAM_H_IN_PAM
8#define SIOCGIFCONF_GIVES_ADDR
9
f452e07e 10
61ec970d
PH
11#define F_FREESP O_TRUNC
12typedef struct flock flock_t;
13
14#define BASE_62 36 /* HFS+ aliases lower and upper cases in filenames.
15 Consider reducing MAX_LOCALHOST_NUMBER */
16
17#ifndef _BSD_SOCKLEN_T_
02c30a32 18# define _BSD_SOCKLEN_T_ int32_t /* socklen_t (duh) */
61ec970d
PH
19#endif
20
21/* Settings for handling IP options. There's no netinet/ip_var.h. The IP
22option handling is in the style of the later GLIBCs but the GLIBC macros
23aren't set, so we invent a new one. */
24
25#define NO_IP_VAR_H
26#define DARWIN_IP_OPTIONS
27
f625cc5a
PH
28/* Need this for the DNS lookup code. Remember to remove if we get round to
29updating Exim to use the newer interface. */
30
31#define BIND_8_COMPAT
32
e12f8c32
PP
33/* It's not .so for dynamic libraries on Darwin. */
34#define DYNLIB_FN_EXT "dylib"
35
17c76198 36/* We currently need some assistance getting OFF_T_FMT correct on MacOS */
2fc44bd5
PP
37#ifdef OFF_T_FMT
38# undef OFF_T_FMT
39#endif
40#define OFF_T_FMT "%lld"
17c76198
PP
41#define LONGLONG_T long int
42
9c19b270
JH
43/* default is non-const */
44#define ICONV_ARG2_TYPE const char **
45
9fa3eec7
JH
46/* seems arpa/nameser.h does not define this */
47#define NS_MAXMSG 65535
48
157d73b5
JH
49/* There may be very many supplementary groups for the user. See notes
50in "man 2 getgroups". */
51#define _DARWIN_UNLIMITED_GETGROUPS
52#define EXIM_GROUPLIST_SIZE 64
53
b536a578
JH
54/* TCP Fast Open: Darwin uses a connectex() call
55rather than a modified sendto() */
56#define EXIM_TFO_CONNECTX
590faf89 57
61ec970d 58/* End */