From 1659af7ffad13d25b68f228917c79d848cedce38 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Sat, 11 Nov 2017 09:33:37 -0500 Subject: [PATCH] MYSQL_SECURE_AUTH has been removed in MySQL 8.0.3 RC (#892) https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-3.html#mysqld-8-0-3-capi > The deprecated secure_auth system variable and --secure-auth client option have been removed. > The MYSQL_SECURE_AUTH option for the mysql_options() C API function was removed. --- ext/mysql2/client.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ext/mysql2/client.c b/ext/mysql2/client.c index 2e7903b4f..71dd804ae 100644 --- a/ext/mysql2/client.c +++ b/ext/mysql2/client.c @@ -794,10 +794,12 @@ static VALUE _mysql_client_options(VALUE self, int opt, VALUE value) { retval = &boolval; break; +#if defined(MYSQL_SECURE_AUTH) case MYSQL_SECURE_AUTH: boolval = (value == Qfalse ? 0 : 1); retval = &boolval; break; +#endif case MYSQL_READ_DEFAULT_FILE: charval = (const char *)StringValuePtr(value); @@ -1193,7 +1195,10 @@ static VALUE set_ssl_options(VALUE self, VALUE key, VALUE cert, VALUE ca, VALUE } static VALUE set_secure_auth(VALUE self, VALUE value) { +/* This option was deprecated in MySQL 5.x and removed in MySQL 8.0 */ +#if defined(MYSQL_SECURE_AUTH) return _mysql_client_options(self, MYSQL_SECURE_AUTH, value); +#endif } static VALUE set_read_default_file(VALUE self, VALUE value) {