diff options
Diffstat (limited to 'src/os/unix/ngx_posix_config.h')
-rw-r--r-- | src/os/unix/ngx_posix_config.h | 53 |
1 files changed, 52 insertions, 1 deletions
diff --git a/src/os/unix/ngx_posix_config.h b/src/os/unix/ngx_posix_config.h index bf0f5d842..bac02f7dd 100644 --- a/src/os/unix/ngx_posix_config.h +++ b/src/os/unix/ngx_posix_config.h @@ -8,9 +8,20 @@ #define _NGX_POSIX_CONFIG_H_INCLUDED_ +#if 0 +#define _XOPEN_SOURCE +#define _XOPEN_SOURCE_EXTENDED 1 +#endif + + #include <sys/types.h> #include <sys/time.h> +#if (NGX_HAVE_UNISTD_H) #include <unistd.h> +#endif +#if (NGX_HAVE_INTTYPES_H) +#include <inttypes.h> +#endif #include <stdarg.h> #include <stddef.h> /* offsetof() */ #include <stdio.h> @@ -22,8 +33,12 @@ #include <grp.h> #include <dirent.h> -#include <sys/uio.h> +#if (NGX_HAVE_SYS_FILIO_H) #include <sys/filio.h> /* FIONBIO */ +#endif +#include <sys/ioctl.h> /* FIONBIO */ + +#include <sys/uio.h> #include <sys/stat.h> #include <fcntl.h> @@ -34,9 +49,19 @@ #include <sys/socket.h> #include <netinet/in.h> +#include <netinet/tcp.h> /* TCP_NODELAY */ #include <arpa/inet.h> #include <netdb.h> +#if (NGX_HAVE_LIMITS_H) +#include <limits.h> /* IOV_MAX */ +#endif + +#ifndef IOV_MAX +#define IOV_MAX 16 +#endif + + #include <ngx_auto_config.h> @@ -53,6 +78,32 @@ #endif +#if (HAVE_KQUEUE) +#include <sys/event.h> +#endif + + +#if (HAVE_DEVPOLL) +#include <sys/ioctl.h> +#include <sys/devpoll.h> +#endif + + +#if (__FreeBSD__) && (__FreeBSD_version < 400017) + +#include <sys/param.h> /* ALIGN() */ + +/* FreeBSD 3.x has no CMSG_SPACE() at all and has the broken CMSG_DATA() */ + +#undef CMSG_SPACE +#define CMSG_SPACE(l) (ALIGN(sizeof(struct cmsghdr)) + ALIGN(l)) + +#undef CMSG_DATA +#define CMSG_DATA(cmsg) ((u_char *)(cmsg) + ALIGN(sizeof(struct cmsghdr))) + +#endif + + #define ngx_setproctitle(title) |