diff options
| -rw-r--r-- | configure.ac | 8 | ||||
| -rw-r--r-- | src/ssl_mbedtls.cc | 5 |
2 files changed, 10 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac index 149af5f..faa383c 100644 --- a/configure.ac +++ b/configure.ac @@ -88,13 +88,15 @@ AC_ARG_ENABLE([mbedtls], [mbedtls_check=$enableval], [mbedtls_check=yes]) AS_IF([test x$mbedtls_check = xyes], [AC_CHECK_HEADERS([mbedtls/ssl.h], - [AC_CHECK_LIB([mbedtls], [mbedtls_ssl_init], + [AC_CHECK_LIB([mbedcrypto], [mbedtls_ctr_drbg_random], [AC_CHECK_LIB([mbedx509], [mbedtls_x509_crt_init], - [AC_CHECK_LIB([mbedcrypto], [mbedtls_ctr_drbg_random], + [AC_CHECK_LIB([mbedtls], [mbedtls_ssl_init], [have_ssl=1 ssl_mbedtls=1 ssl_name=mbedtls - SSL_LIBS="-lmbedtls -lmbedx509 -lmbedcrypto"])])])])]) + SSL_LIBS="-lmbedtls -lmbedx509 -lmbedcrypto"],, + [-lmbedx509 -lmbedcrypto])],, + [-lmbedcrypto])])])]) # Check for openssl PKG_PROG_PKG_CONFIG diff --git a/src/ssl_mbedtls.cc b/src/ssl_mbedtls.cc index 1b3e350..75a624b 100644 --- a/src/ssl_mbedtls.cc +++ b/src/ssl_mbedtls.cc @@ -556,6 +556,11 @@ bool SSLCert::generate(Logger* logger, SSLEntropy* entropy, if (issuer_key) { mbedtls_x509write_crt_set_issuer_key( &crt, static_cast<SSLKeyImpl*>(issuer_key)->key()); + } else if (key) { + // Without an issuer_key mbedtls_x509write_crt_pem always fails because + // it uses the type of the issuer_key to figure out signature algo + mbedtls_x509write_crt_set_issuer_key( + &crt, static_cast<SSLKeyImpl*>(key)->key()); } subject = "CN=" + host; |
