Small patch from the Sieve maintainer.
[exim.git] / src / OS / os.h-SunOS4
1 /* $Cambridge: exim/src/OS/os.h-SunOS4,v 1.1 2004/10/06 15:07:39 ph10 Exp $ */
2
3 /* Exim: OS-specific C header file for SunOS4 */
4
5 #define LOAD_AVG_NEEDS_ROOT
6 #define HAVE_DEV_KMEM
7 #define LOAD_AVG_TYPE   long
8 #define LOAD_AVG_SYMBOL "_avenrun"
9 #define KERNEL_PATH     "/vmunix"
10
11 #define HAVE_MMAP
12 #define HAVE_SYS_VFS_H
13
14 #define F_FREESP     O_TRUNC
15 #define EXIT_FAILURE 1
16 #define EXIT_SUCCESS 0
17 typedef struct flock flock_t;
18
19 #define STRERROR_FROM_ERRLIST
20 #define memmove(a, b, c) bcopy(b, a, c)
21 #define strtoul(str, ptr, base) ((unsigned int)strtol((str),(ptr),(base)))
22
23 extern char *strerror(int);
24 extern int   sys_nerr;
25 extern char *sys_errlist[];
26
27 /* In ANSI C strtod() is defined in stdlib.h, but in SunOS4 it is defined in
28 floatingpoint.h which is called from math.h, which Exim doesn't include. */
29
30 extern double strtod(const char *, char **);
31
32 /* SunOS4 seems to define getc, ungetc, feof and ferror as macros only, not
33 as functions. We need to have them as assignable functions. Setting this
34 flag causes this to get done in exim.h. */
35
36 #define FUDGE_GETC_AND_FRIENDS
37
38 /* End */