.\" Automatically generated by Pandoc 3.5 .\" .TH "mysql_ssl_set" "3" "" "Version 3.4" "MariaDB Connector/C" .SS Name mysql_ssl_set \- Sets TLS/SSL options .SS Synopsis .IP .EX #include \f[B]\f[R] my_bool mysql_ssl_set(MYSQL *mysql, const char *key, const char *cert, const char *ca, const char *capath, const char *cipher) .EE .SS Description Used for establishing a secure TLS connection. It must be called before attempting to use \f[B]mysql_real_connect(3)\f[R]. TLS support must be enabled in the client library in order for the function to have any effect. .PP \f[CR]NULL\f[R] can be used for an unused parameter. Always returns zero. .PP To enable TLS without specifying certificates, set all values to \f[CR]NULL\f[R]: .IP .EX mysql_ssl_set(mysql, NULL, NULL, NULL, NULL, NULL) .EE .PP This is the same as \f[CR]mysql_optionsv(mysql, MYSQL_OPT_SSL_ENFORCE, &yes)\f[R]. .SS Parameter .IP \[bu] 2 \f[CR]mysql\f[R] \- a mysql handle, which was previously allocated by \f[B]mysql_init(3)\f[R]. .IP \[bu] 2 \f[CR]key\f[R] \- path to the key file. .IP \[bu] 2 \f[CR]cert\f[R] \- path to the certificate file. .IP \[bu] 2 \f[CR]ca\f[R] \- path to the certificate authority file. .IP \[bu] 2 \f[CR]capath\f[R] \- path to the directory containing the trusted TLS CA certificates in PEM format. .IP \[bu] 2 \f[CR]cipher\f[R] list of permitted (SSLv3, TLSv1.0 or TLSv1.2) cipher suites to use for TLS encryption. .SS Notes .IP \[bu] 2 \f[B]mysql_real_connect(3)\f[R] will return an error if attempting to connect and TLS is incorrectly set up. .IP \[bu] 2 Even if Connector/C supports TLSv1.3 protocol, it is not possible yet to specify TLSv1.3 cipher suites via \f[CR]cipher\f[R] parameter. .SS See also .IP \[bu] 2 \f[B]mysql_get_ssl_cipher(3)\f[R]