AC_CHECK_LIB(ssl, SSL_get_current_compression, [
AC_DEFINE(HAVE_SSL_COMPRESSION,, Build with OpenSSL compression)
],, $SSL_LIBS)
+ AC_CHECK_LIB(ssl, SSL_get_servername, [
+ AC_DEFINE(HAVE_SSL_GET_SERVERNAME,, Build with TLS hostname support)
+ ],, $SSL_LIBS)
fi
fi
#define SSL_PARAMETERS_PATH "ssl-params"
+#ifndef SSL_CTRL_SET_TLSEXT_HOSTNAME /* FIXME: this may be unnecessary.. */
+# undef HAVE_SSL_GET_SERVERNAME
+#endif
+
enum ssl_io_action {
SSL_ADD_INPUT,
SSL_REMOVE_INPUT,
return ret;
}
-#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
+#ifdef HAVE_SSL_GET_SERVERNAME
static void ssl_servername_callback(SSL *ssl, int *al ATTR_UNUSED,
void *context ATTR_UNUSED)
{
ssl_proxy_get_use_certificate_error(ctx->cert));
}
-#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
+#ifdef HAVE_SSL_GET_SERVERNAME
if (SSL_CTX_set_tlsext_servername_callback(ctx->ctx,
ssl_servername_callback) != 1) {
if (set->verbose_ssl)