Latest update - 7454
This commit is contained in:
@@ -310,7 +310,7 @@ ngx_conf_parse(ngx_conf_t *cf, ngx_str_t *filename)
|
||||
goto failed;
|
||||
}
|
||||
|
||||
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, rv);
|
||||
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, "%s", rv);
|
||||
|
||||
goto failed;
|
||||
}
|
||||
|
||||
@@ -63,6 +63,7 @@ struct ngx_peer_connection_s {
|
||||
unsigned cached:1;
|
||||
unsigned transparent:1;
|
||||
unsigned so_keepalive:1;
|
||||
unsigned down:1;
|
||||
|
||||
/* ngx_connection_log_error_e */
|
||||
unsigned log_error:2;
|
||||
|
||||
@@ -68,6 +68,7 @@ static void ngx_ssl_session_rbtree_insert_value(ngx_rbtree_node_t *temp,
|
||||
static int ngx_ssl_session_ticket_key_callback(ngx_ssl_conn_t *ssl_conn,
|
||||
unsigned char *name, unsigned char *iv, EVP_CIPHER_CTX *ectx,
|
||||
HMAC_CTX *hctx, int enc);
|
||||
static void ngx_ssl_session_ticket_keys_cleanup(void *data);
|
||||
#endif
|
||||
|
||||
#ifndef X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT
|
||||
@@ -954,10 +955,13 @@ ngx_ssl_read_password_file(ngx_conf_t *cf, ngx_str_t *file)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
cln = ngx_pool_cleanup_add(cf->temp_pool, 0);
|
||||
passwords = ngx_array_create(cf->temp_pool, 4, sizeof(ngx_str_t));
|
||||
if (passwords == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (cln == NULL || passwords == NULL) {
|
||||
cln = ngx_pool_cleanup_add(cf->temp_pool, 0);
|
||||
if (cln == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -3523,6 +3527,7 @@ ngx_ssl_session_ticket_keys(ngx_conf_t *cf, ngx_ssl_t *ssl, ngx_array_t *paths)
|
||||
ngx_uint_t i;
|
||||
ngx_array_t *keys;
|
||||
ngx_file_info_t fi;
|
||||
ngx_pool_cleanup_t *cln;
|
||||
ngx_ssl_session_ticket_key_t *key;
|
||||
|
||||
if (paths == NULL) {
|
||||
@@ -3535,6 +3540,14 @@ ngx_ssl_session_ticket_keys(ngx_conf_t *cf, ngx_ssl_t *ssl, ngx_array_t *paths)
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
cln = ngx_pool_cleanup_add(cf->pool, 0);
|
||||
if (cln == NULL) {
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
cln->handler = ngx_ssl_session_ticket_keys_cleanup;
|
||||
cln->data = keys;
|
||||
|
||||
path = paths->elts;
|
||||
for (i = 0; i < paths->nelts; i++) {
|
||||
|
||||
@@ -3606,6 +3619,8 @@ ngx_ssl_session_ticket_keys(ngx_conf_t *cf, ngx_ssl_t *ssl, ngx_array_t *paths)
|
||||
ngx_log_error(NGX_LOG_ALERT, cf->log, ngx_errno,
|
||||
ngx_close_file_n " \"%V\" failed", &file.name);
|
||||
}
|
||||
|
||||
ngx_explicit_memzero(&buf, 80);
|
||||
}
|
||||
|
||||
if (SSL_CTX_set_ex_data(ssl->ctx, ngx_ssl_session_ticket_keys_index, keys)
|
||||
@@ -3636,6 +3651,8 @@ failed:
|
||||
ngx_close_file_n " \"%V\" failed", &file.name);
|
||||
}
|
||||
|
||||
ngx_explicit_memzero(&buf, 80);
|
||||
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
@@ -3764,6 +3781,16 @@ ngx_ssl_session_ticket_key_callback(ngx_ssl_conn_t *ssl_conn,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
ngx_ssl_session_ticket_keys_cleanup(void *data)
|
||||
{
|
||||
ngx_array_t *keys = data;
|
||||
|
||||
ngx_explicit_memzero(keys->elts,
|
||||
keys->nelts * sizeof(ngx_ssl_session_ticket_key_t));
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
ngx_int_t
|
||||
|
||||
Reference in New Issue
Block a user