diff options
Diffstat (limited to 'src/os/unix/ngx_linux_sendfile_chain.c')
-rw-r--r-- | src/os/unix/ngx_linux_sendfile_chain.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/os/unix/ngx_linux_sendfile_chain.c b/src/os/unix/ngx_linux_sendfile_chain.c index 9b311b21e..d96d93df7 100644 --- a/src/os/unix/ngx_linux_sendfile_chain.c +++ b/src/os/unix/ngx_linux_sendfile_chain.c @@ -4,6 +4,17 @@ #include <ngx_event.h> +/* + * On Linux up to 2.4.21 sendfile() (syscall #187) works with 32-bit + * offsets only and the including <sys/sendfile.h> breaks building + * if off_t is 64 bit wide. So we use own sendfile() definition where + * offset paramter is int32_t. It allows to use sendfile() with + * the file parts below 2G. + * + * Linux 2.4.21 has a new sendfile64() syscall #239. + */ + + ngx_chain_t *ngx_linux_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in) { int rc; |