summaryrefslogtreecommitdiffhomepage
path: root/src/http/ngx_http_upstream.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2008-08-17 17:47:52 +0000
committerIgor Sysoev <igor@sysoev.ru>2008-08-17 17:47:52 +0000
commit916ee8ecea1728b23dbd2c11d9ca8242b593d32a (patch)
treea7df5f7c171ce8026fc54a06b36a190e51cb7be3 /src/http/ngx_http_upstream.c
parentf60dde9767d71d0d69d3a98646d813df423e7034 (diff)
downloadnginx-916ee8ecea1728b23dbd2c11d9ca8242b593d32a.tar.gz
nginx-916ee8ecea1728b23dbd2c11d9ca8242b593d32a.tar.bz2
proxy_ssl_session_reuse
Diffstat (limited to 'src/http/ngx_http_upstream.c')
-rw-r--r--src/http/ngx_http_upstream.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
index c27099616..ae86b9858 100644
--- a/src/http/ngx_http_upstream.c
+++ b/src/http/ngx_http_upstream.c
@@ -789,10 +789,12 @@ ngx_http_upstream_ssl_init_connection(ngx_http_request_t *r,
c->sendfile = 0;
u->output.sendfile = 0;
- if (u->peer.set_session(&u->peer, u->peer.data) != NGX_OK) {
- ngx_http_upstream_finalize_request(r, u,
- NGX_HTTP_INTERNAL_SERVER_ERROR);
- return;
+ if (u->conf->ssl_session_reuse) {
+ if (u->peer.set_session(&u->peer, u->peer.data) != NGX_OK) {
+ ngx_http_upstream_finalize_request(r, u,
+ NGX_HTTP_INTERNAL_SERVER_ERROR);
+ return;
+ }
}
r->connection->log->action = "SSL handshaking to upstream";
@@ -819,7 +821,9 @@ ngx_http_upstream_ssl_handshake(ngx_connection_t *c)
if (c->ssl->handshaked) {
- u->peer.save_session(&u->peer, u->peer.data);
+ if (u->conf->ssl_session_reuse) {
+ u->peer.save_session(&u->peer, u->peer.data);
+ }
c->write->handler = ngx_http_upstream_send_request_handler;
c->read->handler = ngx_http_upstream_process_header;