fix SSL connection issues on platforms with 32-bit off_t

patch by Maxim Dounin
This commit is contained in:
Igor Sysoev 2011-07-22 12:53:04 +00:00
parent a7ed0951e3
commit b0b6bcedfc
2 changed files with 5 additions and 3 deletions

View File

@ -127,5 +127,7 @@ typedef intptr_t ngx_flag_t;
#define NGX_MAX_UINT32_VALUE (uint32_t) 0xffffffff #define NGX_MAX_UINT32_VALUE (uint32_t) 0xffffffff
#endif #endif
#define NGX_MAX_INT32_VALUE (uint32_t) 0x7fffffff
#endif /* _NGX_CONFIG_H_INCLUDED_ */ #endif /* _NGX_CONFIG_H_INCLUDED_ */

View File

@ -986,10 +986,10 @@ ngx_ssl_send_chain(ngx_connection_t *c, ngx_chain_t *in, off_t limit)
} }
/* the maximum limit size is the maximum uint32_t value - the page size */ /* the maximum limit size is the maximum int32_t value - the page size */
if (limit == 0 || limit > (off_t) (NGX_MAX_UINT32_VALUE - ngx_pagesize)) { if (limit == 0 || limit > (off_t) (NGX_MAX_INT32_VALUE - ngx_pagesize)) {
limit = NGX_MAX_UINT32_VALUE - ngx_pagesize; limit = NGX_MAX_INT32_VALUE - ngx_pagesize;
} }
buf = c->ssl->buf; buf = c->ssl->buf;