Latest update - 7665
This commit is contained in:
@@ -492,6 +492,7 @@ ngx_add_inherited_sockets(ngx_cycle_t *cycle)
|
||||
ngx_memzero(ls, sizeof(ngx_listening_t));
|
||||
|
||||
ls->fd = (ngx_socket_t) s;
|
||||
ls->inherited = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1070,7 +1070,8 @@ ngx_close_listening_sockets(ngx_cycle_t *cycle)
|
||||
|
||||
if (ls[i].sockaddr->sa_family == AF_UNIX
|
||||
&& ngx_process <= NGX_PROCESS_MASTER
|
||||
&& ngx_new_binary == 0)
|
||||
&& ngx_new_binary == 0
|
||||
&& (!ls[i].inherited || ngx_getppid() != ngx_parent))
|
||||
{
|
||||
u_char *name = ls[i].addr_text.data + sizeof("unix:") - 1;
|
||||
|
||||
|
||||
@@ -520,6 +520,7 @@ ngx_init_cycle(ngx_cycle_t *old_cycle)
|
||||
== NGX_OK)
|
||||
{
|
||||
nls[n].fd = ls[i].fd;
|
||||
nls[n].inherited = ls[i].inherited;
|
||||
nls[n].previous = &ls[i];
|
||||
ls[i].remain = 1;
|
||||
|
||||
|
||||
@@ -928,6 +928,8 @@ ngx_int_t
|
||||
ngx_ssl_trusted_certificate(ngx_conf_t *cf, ngx_ssl_t *ssl, ngx_str_t *cert,
|
||||
ngx_int_t depth)
|
||||
{
|
||||
SSL_CTX_set_verify(ssl->ctx, SSL_VERIFY_PEER, ngx_ssl_verify_callback);
|
||||
|
||||
SSL_CTX_set_verify_depth(ssl->ctx, depth);
|
||||
|
||||
if (cert->len == 0) {
|
||||
|
||||
@@ -77,12 +77,11 @@ ngx_master_process_cycle(ngx_cycle_t *cycle)
|
||||
u_char *p;
|
||||
size_t size;
|
||||
ngx_int_t i;
|
||||
ngx_uint_t n, sigio;
|
||||
ngx_uint_t sigio;
|
||||
sigset_t set;
|
||||
struct itimerval itv;
|
||||
ngx_uint_t live;
|
||||
ngx_msec_t delay;
|
||||
ngx_listening_t *ls;
|
||||
ngx_core_conf_t *ccf;
|
||||
|
||||
sigemptyset(&set);
|
||||
@@ -204,16 +203,7 @@ ngx_master_process_cycle(ngx_cycle_t *cycle)
|
||||
if (ngx_quit) {
|
||||
ngx_signal_worker_processes(cycle,
|
||||
ngx_signal_value(NGX_SHUTDOWN_SIGNAL));
|
||||
|
||||
ls = cycle->listening.elts;
|
||||
for (n = 0; n < cycle->listening.nelts; n++) {
|
||||
if (ngx_close_socket(ls[n].fd) == -1) {
|
||||
ngx_log_error(NGX_LOG_EMERG, cycle->log, ngx_socket_errno,
|
||||
ngx_close_socket_n " %V failed",
|
||||
&ls[n].addr_text);
|
||||
}
|
||||
}
|
||||
cycle->listening.nelts = 0;
|
||||
ngx_close_listening_sockets(cycle);
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -189,6 +189,13 @@ ngx_udp_output_chain_to_iovec(ngx_iovec_t *vec, ngx_chain_t *in, ngx_log_t *log)
|
||||
return cl;
|
||||
}
|
||||
|
||||
/* zero-sized datagram; pretend to have at least 1 iov */
|
||||
if (n == 0) {
|
||||
iov = &vec->iovs[n++];
|
||||
iov->iov_base = NULL;
|
||||
iov->iov_len = 0;
|
||||
}
|
||||
|
||||
vec->count = n;
|
||||
vec->size = total;
|
||||
|
||||
|
||||
@@ -839,7 +839,7 @@ ngx_stream_proxy_init_upstream(ngx_stream_session_t *s)
|
||||
u->upstream_buf.last = p;
|
||||
}
|
||||
|
||||
if (c->buffer && c->buffer->pos < c->buffer->last) {
|
||||
if (c->buffer && c->buffer->pos <= c->buffer->last) {
|
||||
ngx_log_debug1(NGX_LOG_DEBUG_STREAM, c->log, 0,
|
||||
"stream proxy add preread buffer: %uz",
|
||||
c->buffer->last - c->buffer->pos);
|
||||
@@ -853,6 +853,7 @@ ngx_stream_proxy_init_upstream(ngx_stream_session_t *s)
|
||||
*cl->buf = *c->buffer;
|
||||
|
||||
cl->buf->tag = (ngx_buf_tag_t) &ngx_stream_proxy_module;
|
||||
cl->buf->temporary = (cl->buf->pos == cl->buf->last) ? 0 : 1;
|
||||
cl->buf->flush = 1;
|
||||
|
||||
cl->next = u->upstream_out;
|
||||
|
||||
@@ -234,7 +234,8 @@ ngx_stream_write_filter(ngx_stream_session_t *s, ngx_chain_t *in,
|
||||
|
||||
if (size == 0
|
||||
&& !(c->buffered & NGX_LOWLEVEL_BUFFERED)
|
||||
&& !(last && c->need_last_buf))
|
||||
&& !(last && c->need_last_buf)
|
||||
&& !(c->type == SOCK_DGRAM && flush))
|
||||
{
|
||||
if (last || flush || sync) {
|
||||
for (cl = *out; cl; /* void */) {
|
||||
|
||||
Reference in New Issue
Block a user