summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2010-03-03 16:23:14 +0000
committerIgor Sysoev <igor@sysoev.ru>2010-03-03 16:23:14 +0000
commite71f39932fdc1c691d5c1eb4d6c55b96e9610131 (patch)
tree900b0eb83778c30374cfcf1997956e30bda4fe87 /src
parent1ee4b090911cbb9b5830ffa8271056283f756fbb (diff)
downloadnginx-e71f39932fdc1c691d5c1eb4d6c55b96e9610131.tar.gz
nginx-e71f39932fdc1c691d5c1eb4d6c55b96e9610131.tar.bz2
add OpenSSL_add_all_algorithms(), this fixes the error
"ASN1_item_verify:unknown message digest algorithm" occurred if client certificate is signed using sha256WithRSAEncryption
Diffstat (limited to 'src')
-rw-r--r--src/event/ngx_event_openssl.c3
-rw-r--r--src/event/ngx_event_openssl.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/event/ngx_event_openssl.c b/src/event/ngx_event_openssl.c
index 134b361f6..4a05444a0 100644
--- a/src/event/ngx_event_openssl.c
+++ b/src/event/ngx_event_openssl.c
@@ -106,6 +106,8 @@ ngx_ssl_init(ngx_log_t *log)
ENGINE_load_builtin_engines();
+ OpenSSL_add_all_algorithms();
+
ngx_ssl_connection_index = SSL_get_ex_new_index(0, NULL, NULL, NULL, NULL);
if (ngx_ssl_connection_index == -1) {
@@ -2315,5 +2317,6 @@ ngx_openssl_engine(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
static void
ngx_openssl_exit(ngx_cycle_t *cycle)
{
+ EVP_cleanup();
ENGINE_cleanup();
}
diff --git a/src/event/ngx_event_openssl.h b/src/event/ngx_event_openssl.h
index f3b5a2558..a8f9d8757 100644
--- a/src/event/ngx_event_openssl.h
+++ b/src/event/ngx_event_openssl.h
@@ -15,6 +15,7 @@
#include <openssl/err.h>
#include <openssl/conf.h>
#include <openssl/engine.h>
+#include <openssl/evp.h>
#define NGX_SSL_NAME "OpenSSL"