diff options
author | Joerg Bruehe <joerg@mysql.com> | 2009-07-09 23:10:50 +0200 |
---|---|---|
committer | Joerg Bruehe <joerg@mysql.com> | 2009-07-09 23:10:50 +0200 |
commit | 67ffeccf2c5baeecd54191e7f3e5ef06aad1f71a (patch) | |
tree | 90adb4d952d048c2bf8d97e20ef78c5b0af453ec /tests | |
parent | 3e754876fcea32d6063ebd204b787566659f4948 (diff) | |
parent | e60ea9e8ac0564336d7dbd864c7374fa352e3281 (diff) | |
download | mariadb-git-67ffeccf2c5baeecd54191e7f3e5ef06aad1f71a.tar.gz |
Merge main 5.0 into 5.0-build.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/mysql_client_test.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/mysql_client_test.c b/tests/mysql_client_test.c index 9dfacb7436d..ce1a1a99b04 100644 --- a/tests/mysql_client_test.c +++ b/tests/mysql_client_test.c @@ -12063,6 +12063,27 @@ static void test_bug6081() } +/* + Verify that bogus database names are handled properly with + COM_CREATE_DB and COM_DROP_DB, i.e., cannot cause SIGSEGV through + the use of printf specifiers in the database name. +*/ +static void test_bug45790() +{ + const char* bogus_db = "%s%s%s%s%s%s%s"; + int rc; + + myheader("test_bug45790"); + rc= simple_command(mysql, COM_CREATE_DB, bogus_db, + (ulong)strlen(bogus_db), 0); + myquery(rc); + + rc= simple_command(mysql, COM_DROP_DB, bogus_db, + (ulong)strlen(bogus_db), 0); + myquery(rc); +} + + static void test_bug6096() { MYSQL_STMT *stmt; @@ -16829,6 +16850,7 @@ static struct my_tests_st my_tests[]= { { "test_bug6059", test_bug6059 }, { "test_bug6046", test_bug6046 }, { "test_bug6081", test_bug6081 }, + { "test_bug45790",test_bug45790 }, { "test_bug6096", test_bug6096 }, { "test_datetime_ranges", test_datetime_ranges }, { "test_bug4172", test_bug4172 }, |