summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/event/ngx_event_openssl.c4
-rw-r--r--src/event/ngx_event_openssl.h5
2 files changed, 8 insertions, 1 deletions
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c
index eb418314d..148705ccc 100644
--- a/src/event/ngx_event_openssl.c
+++ b/src/event/ngx_event_openssl.c
@@ -837,7 +837,9 @@ ngx_ssl_info_callback(const ngx_ssl_conn_t *ssl_conn, int where, int ret)
BIO *rbio, *wbio;
ngx_connection_t *c;
- if (where & SSL_CB_HANDSHAKE_START) {
+ if ((where & SSL_CB_HANDSHAKE_START)
+ && SSL_is_server((ngx_ssl_conn_t *) ssl_conn))
+ {
c = ngx_ssl_get_connection((ngx_ssl_conn_t *) ssl_conn);
if (c->ssl->handshaked) {
diff --git a/src/event/ngx_event_openssl.h b/src/event/ngx_event_openssl.h
index 607ee9011..2a149802b 100644
--- a/src/event/ngx_event_openssl.h
+++ b/src/event/ngx_event_openssl.h
@@ -54,6 +54,11 @@
#define ngx_ssl_conn_t SSL
+#if (OPENSSL_VERSION_NUMBER < 0x10002000L)
+#define SSL_is_server(s) (s)->server
+#endif
+
+
struct ngx_ssl_s {
SSL_CTX *ctx;
ngx_log_t *log;