diff options
author | Igor Sysoev <igor@sysoev.ru> | 2003-11-13 16:16:33 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2003-11-13 16:16:33 +0000 |
commit | 45890ea8c13a561fe3fd66bf639ad429f3c18846 (patch) | |
tree | 72b5d6ceedcd3152d68d579989a99ddf0de84db5 /src/os/unix/ngx_os.h | |
parent | 562e53ea7d2ec904abba1cf9a9766fe3a91574e8 (diff) | |
download | nginx-45890ea8c13a561fe3fd66bf639ad429f3c18846.tar.gz nginx-45890ea8c13a561fe3fd66bf639ad429f3c18846.zip |
nginx-0.0.1-2003-11-13-19:16:33 import
Diffstat (limited to 'src/os/unix/ngx_os.h')
-rw-r--r-- | src/os/unix/ngx_os.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/os/unix/ngx_os.h b/src/os/unix/ngx_os.h new file mode 100644 index 000000000..33e394319 --- /dev/null +++ b/src/os/unix/ngx_os.h @@ -0,0 +1,58 @@ +#ifndef _NGX_OS_H_INCLUDED_ +#define _NGX_OS_H_INCLUDED_ + + +#include <ngx_config.h> +#include <ngx_core.h> + + +#define NGX_IO_SENDFILE 1 +#define NGX_IO_ZEROCOPY 2 + +#if (HAVE_SENDFILE) +#define NGX_HAVE_SENDFILE NGX_IO_SENDFILE +#else +#define NGX_HAVE_SENDFILE 0 +#endif + +#if (HAVE_ZEROCOPY) +#define NGX_HAVE_ZEROCOPY NGX_IO_ZEROCOPY +#else +#define NGX_HAVE_ZEROCOPY 0 +#endif + + + +typedef struct { + ssize_t (*recv)(ngx_connection_t *c, char *buf, size_t size); + ssize_t (*recv_chain)(ngx_connection_t *c, ngx_chain_t *in); + ssize_t (*send)(ngx_connection_t *c, char *buf, size_t size); + ngx_chain_t *(*send_chain)(ngx_connection_t *c, ngx_chain_t *in); + int flags; +} ngx_os_io_t; + + +int ngx_os_init(ngx_log_t *log); +int ngx_daemon(ngx_log_t *log); +int ngx_posix_init(ngx_log_t *log); + +ssize_t ngx_unix_recv(ngx_connection_t *c, char *buf, size_t size); +ssize_t ngx_readv_chain(ngx_connection_t *c, ngx_chain_t *entry); +ngx_chain_t *ngx_writev_chain(ngx_connection_t *c, ngx_chain_t *in); + + +extern ngx_os_io_t ngx_os_io; +extern int ngx_max_sockets; +extern int ngx_inherited_nonblocking; + + +extern int restart; +extern int rotate; + + +#ifdef __FreeBSD__ +#include <ngx_freebsd.h> +#endif + + +#endif /* _NGX_OS_H_INCLUDED_ */ |