1 /* Exim: OS-specific C header file for SunOS4 */
2 /* SPDX-License-Identifier: GPL-2.0-or-later */
4 #define LOAD_AVG_NEEDS_ROOT
6 #define LOAD_AVG_TYPE long
7 #define LOAD_AVG_SYMBOL "_avenrun"
8 #define KERNEL_PATH "/vmunix"
11 #define HAVE_SYS_VFS_H
13 #define F_FREESP O_TRUNC
14 #define EXIT_FAILURE 1
15 #define EXIT_SUCCESS 0
16 typedef struct flock flock_t;
18 #define STRERROR_FROM_ERRLIST
19 #define memmove(a, b, c) bcopy(b, a, c)
20 #define strtoul(str, ptr, base) ((unsigned int)strtol((str),(ptr),(base)))
22 extern char *strerror(int);
24 extern char *sys_errlist[];
26 /* In ANSI C strtod() is defined in stdlib.h, but in SunOS4 it is defined in
27 floatingpoint.h which is called from math.h, which Exim doesn't include. */
29 extern double strtod(const char *, char **);
31 /* SunOS4 seems to define getc, ungetc, feof and ferror as macros only, not
32 as functions. We need to have them as assignable functions. Setting this
33 flag causes this to get done in exim.h. */
35 #define FUDGE_GETC_AND_FRIENDS
37 /* default is non-const */
38 #define ICONV_ARG2_TYPE const char **