summaryrefslogtreecommitdiff
path: root/vio
diff options
context:
space:
mode:
authormsvensson@neptunus.(none) <>2006-04-18 17:58:27 +0200
committermsvensson@neptunus.(none) <>2006-04-18 17:58:27 +0200
commita51668c74c498e3e5702342fe5ced68afbee0756 (patch)
tree64442542d9a9aa7ed4cfe1f7d0a101de3e8418b1 /vio
parentd66ac949113597de32590610eb32a81349779480 (diff)
downloadmariadb-git-a51668c74c498e3e5702342fe5ced68afbee0756.tar.gz
Bug#17208 SSL: client does not verify server certificate
- Add new function 'ssl_verify_server_cert' which is used if we are connecting to the server with SSL. It will compare the hostname in the server's cert against the hostname that we used when connecting to the server. Will reject the connection if hostname does not match. - Add new option "OPT_SSL_VERIFY_SERVER_CERT" to be passed to mysql_options which will turn on checking of servers cert. - Add new argument "ssl-verify-server-cert" to all mysql* clients which will activate the above option. - Generate a new server cert with 1024 bits that has "localhost" as the server name.
Diffstat (limited to 'vio')
-rw-r--r--vio/viosslfactories.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/vio/viosslfactories.c b/vio/viosslfactories.c
index d6356f1adca..2b3e80a98e4 100644
--- a/vio/viosslfactories.c
+++ b/vio/viosslfactories.c
@@ -290,20 +290,20 @@ new_VioSSLConnectorFd(const char *key_file, const char *cert_file,
const char *cipher)
{
struct st_VioSSLFd *ssl_fd;
- int verify= SSL_VERIFY_NONE;
+ int verify= SSL_VERIFY_PEER;
if (!(ssl_fd= new_VioSSLFd(key_file, cert_file, ca_file,
ca_path, cipher, TLSv1_client_method())))
{
return 0;
}
+
/* Init the the VioSSLFd as a "connector" ie. the client side */
/*
The verify_callback function is used to control the behaviour
- when the SSL_VERIFY_PEER flag is set. Here it is SSL_VERIFY_NONE
- and thus callback is set to NULL
+ when the SSL_VERIFY_PEER flag is set.
*/
- SSL_CTX_set_verify(ssl_fd->ssl_context, verify, NULL);
+ SSL_CTX_set_verify(ssl_fd->ssl_context, verify, vio_verify_callback);
return ssl_fd;
}