mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
This commit is contained in:
@ -5528,8 +5528,6 @@ int main(int argc, char **argv)
|
|||||||
dump_progress(result_file);
|
dump_progress(result_file);
|
||||||
dynstr_free(&ds_progress);
|
dynstr_free(&ds_progress);
|
||||||
|
|
||||||
dynstr_free(&ds_res);
|
|
||||||
|
|
||||||
if (!got_end_timer)
|
if (!got_end_timer)
|
||||||
timer_output(); /* No end_timer cmd, end it */
|
timer_output(); /* No end_timer cmd, end it */
|
||||||
free_used_memory();
|
free_used_memory();
|
||||||
|
@ -122,6 +122,10 @@ extern "C" {
|
|||||||
/* On NetWare, to fix the problem with the deletion of open files */
|
/* On NetWare, to fix the problem with the deletion of open files */
|
||||||
#define CANT_DELETE_OPEN_FILES 1
|
#define CANT_DELETE_OPEN_FILES 1
|
||||||
|
|
||||||
|
#define FN_LIBCHAR '\\'
|
||||||
|
#define FN_ROOTDIR "\\"
|
||||||
|
#define FN_DEVCHAR ':'
|
||||||
|
|
||||||
/* default directory information */
|
/* default directory information */
|
||||||
#define DEFAULT_MYSQL_HOME "sys:/mysql"
|
#define DEFAULT_MYSQL_HOME "sys:/mysql"
|
||||||
#define PACKAGE "mysql"
|
#define PACKAGE "mysql"
|
||||||
|
@ -3,9 +3,12 @@ create table t1(f1 int);
|
|||||||
insert into t1 values (5);
|
insert into t1 values (5);
|
||||||
grant select on test.* to ssl_user1@localhost require SSL;
|
grant select on test.* to ssl_user1@localhost require SSL;
|
||||||
grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA";
|
grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA";
|
||||||
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/emailAddress=abstract.mysql.developer@mysql.com";
|
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB";
|
||||||
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/emailAddress=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/L=Uppsala/O=MySQL AB/CN=Abstract MySQL Developer/emailAddress=abstract.mysql.developer@mysql.com";
|
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB" ISSUER "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB";
|
||||||
|
grant select on test.* to ssl_user5@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "xxx";
|
||||||
flush privileges;
|
flush privileges;
|
||||||
|
connect(localhost,ssl_user5,,test,MASTER_PORT,MASTER_SOCKET);
|
||||||
|
ERROR 28000: Access denied for user 'ssl_user5'@'localhost' (using password: NO)
|
||||||
SHOW STATUS LIKE 'Ssl_cipher';
|
SHOW STATUS LIKE 'Ssl_cipher';
|
||||||
Variable_name Value
|
Variable_name Value
|
||||||
Ssl_cipher DHE-RSA-AES256-SHA
|
Ssl_cipher DHE-RSA-AES256-SHA
|
||||||
@ -39,7 +42,7 @@ f1
|
|||||||
delete from t1;
|
delete from t1;
|
||||||
ERROR 42000: DELETE command denied to user 'ssl_user4'@'localhost' for table 't1'
|
ERROR 42000: DELETE command denied to user 'ssl_user4'@'localhost' for table 't1'
|
||||||
drop user ssl_user1@localhost, ssl_user2@localhost,
|
drop user ssl_user1@localhost, ssl_user2@localhost,
|
||||||
ssl_user3@localhost, ssl_user4@localhost;
|
ssl_user3@localhost, ssl_user4@localhost, ssl_user5@localhost;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
mysqltest: Could not open connection 'default': 2026 SSL connection error
|
mysqltest: Could not open connection 'default': 2026 SSL connection error
|
||||||
mysqltest: Could not open connection 'default': 2026 SSL connection error
|
mysqltest: Could not open connection 'default': 2026 SSL connection error
|
||||||
|
@ -10,14 +10,18 @@ insert into t1 values (5);
|
|||||||
|
|
||||||
grant select on test.* to ssl_user1@localhost require SSL;
|
grant select on test.* to ssl_user1@localhost require SSL;
|
||||||
grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA";
|
grant select on test.* to ssl_user2@localhost require cipher "DHE-RSA-AES256-SHA";
|
||||||
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/emailAddress=abstract.mysql.developer@mysql.com";
|
grant select on test.* to ssl_user3@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB";
|
||||||
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/L=Uppsala/O=MySQL AB/CN=MySQL Client/emailAddress=abstract.mysql.developer@mysql.com" ISSUER "/C=SE/L=Uppsala/O=MySQL AB/CN=Abstract MySQL Developer/emailAddress=abstract.mysql.developer@mysql.com";
|
grant select on test.* to ssl_user4@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB" ISSUER "/C=SE/ST=Uppsala/L=Uppsala/O=MySQL AB";
|
||||||
|
grant select on test.* to ssl_user5@localhost require cipher "DHE-RSA-AES256-SHA" AND SUBJECT "xxx";
|
||||||
flush privileges;
|
flush privileges;
|
||||||
|
|
||||||
connect (con1,localhost,ssl_user1,,,,,SSL);
|
connect (con1,localhost,ssl_user1,,,,,SSL);
|
||||||
connect (con2,localhost,ssl_user2,,,,,SSL);
|
connect (con2,localhost,ssl_user2,,,,,SSL);
|
||||||
connect (con3,localhost,ssl_user3,,,,,SSL);
|
connect (con3,localhost,ssl_user3,,,,,SSL);
|
||||||
connect (con4,localhost,ssl_user4,,,,,SSL);
|
connect (con4,localhost,ssl_user4,,,,,SSL);
|
||||||
|
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
|
||||||
|
--error 1045
|
||||||
|
connect (con5,localhost,ssl_user5,,,,,SSL);
|
||||||
|
|
||||||
connection con1;
|
connection con1;
|
||||||
# Check ssl turned on
|
# Check ssl turned on
|
||||||
@ -49,7 +53,7 @@ delete from t1;
|
|||||||
|
|
||||||
connection default;
|
connection default;
|
||||||
drop user ssl_user1@localhost, ssl_user2@localhost,
|
drop user ssl_user1@localhost, ssl_user2@localhost,
|
||||||
ssl_user3@localhost, ssl_user4@localhost;
|
ssl_user3@localhost, ssl_user4@localhost, ssl_user5@localhost;
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
@ -2364,8 +2364,7 @@ ha_innobase::open(
|
|||||||
"have forgotten\nto delete the corresponding "
|
"have forgotten\nto delete the corresponding "
|
||||||
".frm files of InnoDB tables, or you\n"
|
".frm files of InnoDB tables, or you\n"
|
||||||
"have moved .frm files to another database?\n"
|
"have moved .frm files to another database?\n"
|
||||||
"Look from section 15.1 of "
|
"See http://dev.mysql.com/doc/refman/5.0/en/innodb-troubleshooting.html\n"
|
||||||
"http://www.innodb.com/ibman.html\n"
|
|
||||||
"how you can resolve the problem.\n",
|
"how you can resolve the problem.\n",
|
||||||
norm_name);
|
norm_name);
|
||||||
free_share(share);
|
free_share(share);
|
||||||
@ -2382,8 +2381,7 @@ ha_innobase::open(
|
|||||||
"Have you deleted the .ibd file from the "
|
"Have you deleted the .ibd file from the "
|
||||||
"database directory under\nthe MySQL datadir, "
|
"database directory under\nthe MySQL datadir, "
|
||||||
"or have you used DISCARD TABLESPACE?\n"
|
"or have you used DISCARD TABLESPACE?\n"
|
||||||
"Look from section 15.1 of "
|
"See http://dev.mysql.com/doc/refman/5.0/en/innodb-troubleshooting.html\n"
|
||||||
"http://www.innodb.com/ibman.html\n"
|
|
||||||
"how you can resolve the problem.\n",
|
"how you can resolve the problem.\n",
|
||||||
norm_name);
|
norm_name);
|
||||||
free_share(share);
|
free_share(share);
|
||||||
@ -5604,13 +5602,14 @@ ha_innobase::info(
|
|||||||
for (i = 0; i < table->s->keys; i++) {
|
for (i = 0; i < table->s->keys; i++) {
|
||||||
if (index == NULL) {
|
if (index == NULL) {
|
||||||
ut_print_timestamp(stderr);
|
ut_print_timestamp(stderr);
|
||||||
sql_print_error("Table %s contains less "
|
sql_print_error("Table %s contains fewer "
|
||||||
"indexes inside InnoDB than "
|
"indexes inside InnoDB than "
|
||||||
"are defined in the MySQL "
|
"are defined in the MySQL "
|
||||||
".frm file. Have you mixed up "
|
".frm file. Have you mixed up "
|
||||||
".frm files from different "
|
".frm files from different "
|
||||||
"installations? See section "
|
"installations? See "
|
||||||
"15.1 at http://www.innodb.com/ibman.html",
|
"http://dev.mysql.com/doc/refman/5.0/en/innodb-troubleshooting.html\n",
|
||||||
|
|
||||||
ib_table->name);
|
ib_table->name);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -5619,17 +5618,11 @@ ha_innobase::info(
|
|||||||
|
|
||||||
if (j + 1 > index->n_uniq) {
|
if (j + 1 > index->n_uniq) {
|
||||||
ut_print_timestamp(stderr);
|
ut_print_timestamp(stderr);
|
||||||
sql_print_error("Index %s of %s has "
|
sql_print_error(
|
||||||
"%lu columns unique "
|
"Index %s of %s has %lu columns unique inside InnoDB, but MySQL is asking "
|
||||||
"inside InnoDB, but "
|
"statistics for %lu columns. Have you mixed up .frm files from different "
|
||||||
"MySQL is asking "
|
"installations? "
|
||||||
"statistics for %lu "
|
"See http://dev.mysql.com/doc/refman/5.0/en/innodb-troubleshooting.html\n",
|
||||||
"columns. Have you "
|
|
||||||
"mixed up .frm files "
|
|
||||||
"from different "
|
|
||||||
"installations? See "
|
|
||||||
"section 15.1 at "
|
|
||||||
"http://www.innodb.com/ibman.html",
|
|
||||||
index->name,
|
index->name,
|
||||||
ib_table->name,
|
ib_table->name,
|
||||||
(unsigned long)
|
(unsigned long)
|
||||||
@ -6438,7 +6431,7 @@ ha_innobase::transactional_table_lock(
|
|||||||
"table %s does not exist.\n"
|
"table %s does not exist.\n"
|
||||||
"Have you deleted the .ibd file from the database directory under\n"
|
"Have you deleted the .ibd file from the database directory under\n"
|
||||||
"the MySQL datadir?"
|
"the MySQL datadir?"
|
||||||
"Look from section 15.1 of http://www.innodb.com/ibman.html\n"
|
"See http://dev.mysql.com/doc/refman/5.0/en/innodb-troubleshooting.html\n"
|
||||||
"how you can resolve the problem.\n",
|
"how you can resolve the problem.\n",
|
||||||
prebuilt->table->name);
|
prebuilt->table->name);
|
||||||
DBUG_RETURN(HA_ERR_CRASHED);
|
DBUG_RETURN(HA_ERR_CRASHED);
|
||||||
|
@ -224,7 +224,7 @@ static bool extract_date_time(DATE_TIME_FORMAT *format,
|
|||||||
tmp= (char*) val + min(2, val_len);
|
tmp= (char*) val + min(2, val_len);
|
||||||
l_time->day= (int) my_strtoll10(val, &tmp, &error);
|
l_time->day= (int) my_strtoll10(val, &tmp, &error);
|
||||||
/* Skip 'st, 'nd, 'th .. */
|
/* Skip 'st, 'nd, 'th .. */
|
||||||
val= tmp + min((int) (end-tmp), 2);
|
val= tmp + min((int) (val_end-tmp), 2);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* Hour */
|
/* Hour */
|
||||||
|
@ -1006,6 +1006,7 @@ int acl_getroot(THD *thd, USER_RESOURCES *mqh,
|
|||||||
sql_print_information("X509 issuer mismatch: should be '%s' "
|
sql_print_information("X509 issuer mismatch: should be '%s' "
|
||||||
"but is '%s'", acl_user->x509_issuer, ptr);
|
"but is '%s'", acl_user->x509_issuer, ptr);
|
||||||
free(ptr);
|
free(ptr);
|
||||||
|
user_access=NO_ACCESS;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
user_access= acl_user->access;
|
user_access= acl_user->access;
|
||||||
@ -1021,11 +1022,13 @@ int acl_getroot(THD *thd, USER_RESOURCES *mqh,
|
|||||||
if (strcmp(acl_user->x509_subject,ptr))
|
if (strcmp(acl_user->x509_subject,ptr))
|
||||||
{
|
{
|
||||||
if (global_system_variables.log_warnings)
|
if (global_system_variables.log_warnings)
|
||||||
sql_print_information("X509 subject mismatch: '%s' vs '%s'",
|
sql_print_information("X509 subject mismatch: should be '%s' but is '%s'",
|
||||||
acl_user->x509_subject, ptr);
|
acl_user->x509_subject, ptr);
|
||||||
|
free(ptr);
|
||||||
|
user_access=NO_ACCESS;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else
|
user_access= acl_user->access;
|
||||||
user_access= acl_user->access;
|
|
||||||
free(ptr);
|
free(ptr);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -14968,7 +14968,7 @@ static void test_bug17667()
|
|||||||
strcpy(master_log_filename, opt_vardir);
|
strcpy(master_log_filename, opt_vardir);
|
||||||
strcat(master_log_filename, "/log/master.log");
|
strcat(master_log_filename, "/log/master.log");
|
||||||
printf("Opening '%s'\n", master_log_filename);
|
printf("Opening '%s'\n", master_log_filename);
|
||||||
log_file= fopen(master_log_filename, "r");
|
log_file= my_fopen(master_log_filename, (int) (O_RDONLY | O_BINARY), MYF(MY_WME));
|
||||||
free(master_log_filename);
|
free(master_log_filename);
|
||||||
|
|
||||||
if (log_file != NULL) {
|
if (log_file != NULL) {
|
||||||
@ -14993,6 +14993,8 @@ static void test_bug17667()
|
|||||||
DIE("Read error");
|
DIE("Read error");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* Print the line */
|
||||||
|
printf("%s", line_buffer);
|
||||||
|
|
||||||
} while (my_memmem(line_buffer, MAX_TEST_QUERY_LENGTH*2,
|
} while (my_memmem(line_buffer, MAX_TEST_QUERY_LENGTH*2,
|
||||||
statement_cursor->buffer, statement_cursor->length) == NULL);
|
statement_cursor->buffer, statement_cursor->length) == NULL);
|
||||||
@ -15013,7 +15015,7 @@ static void test_bug17667()
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (log_file != NULL)
|
if (log_file != NULL)
|
||||||
fclose(log_file);
|
my_fclose(log_file, MYF(0));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user