Hopeful fix
This commit is contained in:
@ -307,11 +307,9 @@ int proxy_init(proxy_ctx_t **proxy_ptr, http_req *req, http_res *res, http_statu
|
||||
goto proxy;
|
||||
|
||||
retry:
|
||||
if (proxy->initialized) {
|
||||
info(BLUE_STR "Closing proxy connection");
|
||||
sock_close(&proxy->proxy);
|
||||
proxy->initialized = 0;
|
||||
}
|
||||
if (proxy->initialized)
|
||||
proxy_close(proxy);
|
||||
|
||||
retry = 0;
|
||||
tries++;
|
||||
|
||||
@ -323,7 +321,7 @@ int proxy_init(proxy_ctx_t **proxy_ptr, http_req *req, http_res *res, http_statu
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (sock_set_timeout(&proxy->proxy, SERVER_TIMEOUT_INIT) != 0)
|
||||
if (sock_set_socket_timeout(&proxy->proxy, 1) != 0 || sock_set_timeout(&proxy->proxy, SERVER_TIMEOUT_INIT) != 0)
|
||||
goto proxy_timeout_err;
|
||||
|
||||
struct hostent *host_ent = gethostbyname2(conf->proxy.hostname, AF_INET6);
|
||||
@ -383,6 +381,7 @@ int proxy_init(proxy_ctx_t **proxy_ptr, http_req *req, http_res *res, http_statu
|
||||
ret = SSL_do_handshake(proxy->proxy.ssl);
|
||||
if (ret != 1) {
|
||||
error_ssl(SSL_get_error(proxy->proxy.ssl, (int) ret));
|
||||
SSL_free(proxy->proxy.ssl);
|
||||
res->status = http_get_status(502);
|
||||
ctx->origin = SERVER_REQ;
|
||||
error("Unable to perform handshake");
|
||||
|
@ -202,7 +202,7 @@ static void terminate_gracefully(int sig) {
|
||||
workers_destroy();
|
||||
|
||||
while (list_size(clients) > 0)
|
||||
server_free_client(clients[0]);
|
||||
tcp_close(clients[0]);
|
||||
|
||||
proxy_close_all();
|
||||
logger_set_prefix("");
|
||||
|
Reference in New Issue
Block a user