_cupsMutexUnlock(&tls_mutex);
+ DEBUG_printf(("4_httpTLSStart: Using private key file '%s'.", keyfile));
+ DEBUG_printf(("4_httpTLSStart: Using certificate file '%s'.", crtfile));
+
if (!SSL_CTX_use_PrivateKey_file(context, keyfile, SSL_FILETYPE_PEM) || !SSL_CTX_use_certificate_chain_file(context, crtfile))
{
// Unable to load private key or certificate...
http->error = EIO;
SSL_CTX_free(context);
- _cupsMutexUnlock(&tls_mutex);
return (-1);
}
strlcat(cipherlist, ":!SHA1:!SHA256:!SHA384", sizeof(cipherlist));
strlcat(cipherlist, ":@STRENGTH", sizeof(cipherlist));
+ DEBUG_printf(("4_httpTLSStart: cipherlist='%s', tls_min_version=%d, tls_max_version=%d", cipherlist, tls_min_version, tls_max_version));
+
SSL_CTX_set_min_proto_version(context, versions[tls_min_version]);
SSL_CTX_set_max_proto_version(context, versions[tls_max_version]);
SSL_CTX_set_cipher_list(context, cipherlist);
if (http->mode == _HTTP_MODE_CLIENT)
{
- // Negotiate as a server...
+ // Negotiate as a client...
+ DEBUG_puts("4_httpTLSStart: Calling SSL_connect...");
if (SSL_connect(http->tls) < 1)
{
// Failed
SSL_free(http->tls);
http->tls = NULL;
+ DEBUG_printf(("4_httpTLSStart: Returning -1 (%s)", ERR_error_string(error, NULL)));
+
return (-1);
}
}
else
{
// Negotiate as a server...
+ DEBUG_puts("4_httpTLSStart: Calling SSL_accept...");
if (SSL_accept(http->tls) < 1)
{
// Failed
SSL_free(http->tls);
http->tls = NULL;
+ DEBUG_printf(("4_httpTLSStart: Returning -1 (%s)", ERR_error_string(error, NULL)));
+
return (-1);
}
}
+ DEBUG_puts("4_httpTLSStart: Returning 0.");
+
return (0);
}