Loading tests/mysql_client_test.c +54 −0 Original line number Diff line number Diff line Loading @@ -15680,6 +15680,59 @@ static void test_bug28934() } /* Bug#27592 (stack overrun when storing datetime value using prepared statements) */ static void test_bug27592() { const int NUM_ITERATIONS= 40; int i; int rc; MYSQL_STMT *stmt= NULL; MYSQL_BIND bind[1]; MYSQL_TIME time_val; DBUG_ENTER("test_bug27592"); myheader("test_bug27592"); mysql_query(mysql, "DROP TABLE IF EXISTS t1"); mysql_query(mysql, "CREATE TABLE t1(c2 DATETIME)"); stmt= mysql_simple_prepare(mysql, "INSERT INTO t1 VALUES (?)"); DIE_UNLESS(stmt); memset(bind, 0, sizeof(bind)); bind[0].buffer_type= MYSQL_TYPE_DATETIME; bind[0].buffer= (char *) &time_val; bind[0].length= NULL; for (i= 0; i < NUM_ITERATIONS; i++) { time_val.year= 2007; time_val.month= 6; time_val.day= 7; time_val.hour= 18; time_val.minute= 41; time_val.second= 3; time_val.second_part=0; time_val.neg=0; rc= mysql_stmt_bind_param(stmt, bind); check_execute(stmt, rc); rc= mysql_stmt_execute(stmt); check_execute(stmt, rc); } mysql_stmt_close(stmt); DBUG_VOID_RETURN; } /* Read and parse arguments and MySQL options from my.cnf */ Loading Loading @@ -15963,6 +16016,7 @@ static struct my_tests_st my_tests[]= { { "test_bug27876", test_bug27876 }, { "test_bug28505", test_bug28505 }, { "test_bug28934", test_bug28934 }, { "test_bug27592", test_bug27592 }, { 0, 0 } }; Loading Loading
tests/mysql_client_test.c +54 −0 Original line number Diff line number Diff line Loading @@ -15680,6 +15680,59 @@ static void test_bug28934() } /* Bug#27592 (stack overrun when storing datetime value using prepared statements) */ static void test_bug27592() { const int NUM_ITERATIONS= 40; int i; int rc; MYSQL_STMT *stmt= NULL; MYSQL_BIND bind[1]; MYSQL_TIME time_val; DBUG_ENTER("test_bug27592"); myheader("test_bug27592"); mysql_query(mysql, "DROP TABLE IF EXISTS t1"); mysql_query(mysql, "CREATE TABLE t1(c2 DATETIME)"); stmt= mysql_simple_prepare(mysql, "INSERT INTO t1 VALUES (?)"); DIE_UNLESS(stmt); memset(bind, 0, sizeof(bind)); bind[0].buffer_type= MYSQL_TYPE_DATETIME; bind[0].buffer= (char *) &time_val; bind[0].length= NULL; for (i= 0; i < NUM_ITERATIONS; i++) { time_val.year= 2007; time_val.month= 6; time_val.day= 7; time_val.hour= 18; time_val.minute= 41; time_val.second= 3; time_val.second_part=0; time_val.neg=0; rc= mysql_stmt_bind_param(stmt, bind); check_execute(stmt, rc); rc= mysql_stmt_execute(stmt); check_execute(stmt, rc); } mysql_stmt_close(stmt); DBUG_VOID_RETURN; } /* Read and parse arguments and MySQL options from my.cnf */ Loading Loading @@ -15963,6 +16016,7 @@ static struct my_tests_st my_tests[]= { { "test_bug27876", test_bug27876 }, { "test_bug28505", test_bug28505 }, { "test_bug28934", test_bug28934 }, { "test_bug27592", test_bug27592 }, { 0, 0 } }; Loading