Update to MySQL 5.5.29
This commit is contained in:
parent
95a6a64ced
commit
0d93c47ace
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
|||||||
/mysql-5.5.28-nodocs.tar.gz
|
/mysql-5.5.29-nodocs.tar.gz
|
||||||
|
8
my.cnf
8
my.cnf
@ -1,12 +1,12 @@
|
|||||||
[mysqld]
|
[mysqld]
|
||||||
# Settings user and group are ignored when systemd is used.
|
|
||||||
# If you need to run mysqld under different user or group,
|
|
||||||
# customize your systemd unit file for mysqld according to the
|
|
||||||
# instructions in http://fedoraproject.org/wiki/Systemd
|
|
||||||
datadir=/var/lib/mysql
|
datadir=/var/lib/mysql
|
||||||
socket=/var/lib/mysql/mysql.sock
|
socket=/var/lib/mysql/mysql.sock
|
||||||
# Disabling symbolic-links is recommended to prevent assorted security risks
|
# Disabling symbolic-links is recommended to prevent assorted security risks
|
||||||
symbolic-links=0
|
symbolic-links=0
|
||||||
|
# Settings user and group are ignored when systemd is used.
|
||||||
|
# If you need to run mysqld under a different user or group,
|
||||||
|
# customize your systemd unit file for mysqld according to the
|
||||||
|
# instructions in http://fedoraproject.org/wiki/Systemd
|
||||||
|
|
||||||
[mysqld_safe]
|
[mysqld_safe]
|
||||||
log-error=/var/log/mysqld.log
|
log-error=/var/log/mysqld.log
|
||||||
|
@ -1,81 +0,0 @@
|
|||||||
Back-ported patch for CVE-2012-5611 --- see
|
|
||||||
http://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/2502.565.17
|
|
||||||
|
|
||||||
|
|
||||||
diff -Naur mysql-5.5.28.orig/mysql-test/r/information_schema.result mysql-5.5.28/mysql-test/r/information_schema.result
|
|
||||||
--- mysql-5.5.28.orig/mysql-test/r/information_schema.result 2012-08-29 04:50:47.000000000 -0400
|
|
||||||
+++ mysql-5.5.28/mysql-test/r/information_schema.result 2012-12-05 10:33:56.906738492 -0500
|
|
||||||
@@ -1712,6 +1712,10 @@
|
|
||||||
length(CAST(b AS CHAR))
|
|
||||||
20
|
|
||||||
DROP TABLE ubig;
|
|
||||||
+grant usage on *.* to mysqltest_1@localhost;
|
|
||||||
+select 1 from information_schema.tables where table_schema=repeat('a', 2000);
|
|
||||||
+1
|
|
||||||
+drop user mysqltest_1@localhost;
|
|
||||||
End of 5.1 tests.
|
|
||||||
#
|
|
||||||
# Additional test for WL#3726 "DDL locking for all metadata objects"
|
|
||||||
diff -Naur mysql-5.5.28.orig/mysql-test/t/information_schema.test mysql-5.5.28/mysql-test/t/information_schema.test
|
|
||||||
--- mysql-5.5.28.orig/mysql-test/t/information_schema.test 2012-08-29 04:50:47.000000000 -0400
|
|
||||||
+++ mysql-5.5.28/mysql-test/t/information_schema.test 2012-12-05 10:33:56.908738590 -0500
|
|
||||||
@@ -1444,6 +1444,13 @@
|
|
||||||
|
|
||||||
DROP TABLE ubig;
|
|
||||||
|
|
||||||
+grant usage on *.* to mysqltest_1@localhost;
|
|
||||||
+connect (con1, localhost, mysqltest_1,,);
|
|
||||||
+connection con1;
|
|
||||||
+select 1 from information_schema.tables where table_schema=repeat('a', 2000);
|
|
||||||
+connection default;
|
|
||||||
+disconnect con1;
|
|
||||||
+drop user mysqltest_1@localhost;
|
|
||||||
|
|
||||||
--echo End of 5.1 tests.
|
|
||||||
|
|
||||||
diff -Naur mysql-5.5.28.orig/sql/sql_acl.cc mysql-5.5.28/sql/sql_acl.cc
|
|
||||||
--- mysql-5.5.28.orig/sql/sql_acl.cc 2012-08-29 04:50:46.000000000 -0400
|
|
||||||
+++ mysql-5.5.28/sql/sql_acl.cc 2012-12-05 10:35:47.608766346 -0500
|
|
||||||
@@ -1573,14 +1573,20 @@
|
|
||||||
acl_entry *entry;
|
|
||||||
DBUG_ENTER("acl_get");
|
|
||||||
|
|
||||||
- mysql_mutex_lock(&acl_cache->lock);
|
|
||||||
- end=strmov((tmp_db=strmov(strmov(key, ip ? ip : "")+1,user)+1),db);
|
|
||||||
+ tmp_db= strmov(strmov(key, ip ? ip : "") + 1, user) + 1;
|
|
||||||
+ end= strnmov(tmp_db, db, key + sizeof(key) - tmp_db);
|
|
||||||
+
|
|
||||||
+ if (end >= key + sizeof(key)) // db name was truncated
|
|
||||||
+ DBUG_RETURN(0); // no privileges for an invalid db name
|
|
||||||
+
|
|
||||||
if (lower_case_table_names)
|
|
||||||
{
|
|
||||||
my_casedn_str(files_charset_info, tmp_db);
|
|
||||||
db=tmp_db;
|
|
||||||
}
|
|
||||||
key_length= (size_t) (end-key);
|
|
||||||
+
|
|
||||||
+ mysql_mutex_lock(&acl_cache->lock);
|
|
||||||
if (!db_is_pattern && (entry=(acl_entry*) acl_cache->search((uchar*) key,
|
|
||||||
key_length)))
|
|
||||||
{
|
|
||||||
@@ -4902,11 +4908,17 @@
|
|
||||||
bool check_grant_db(THD *thd,const char *db)
|
|
||||||
{
|
|
||||||
Security_context *sctx= thd->security_ctx;
|
|
||||||
- char helping [NAME_LEN+USERNAME_LENGTH+2];
|
|
||||||
+ char helping [NAME_LEN+USERNAME_LENGTH+2], *end;
|
|
||||||
uint len;
|
|
||||||
bool error= TRUE;
|
|
||||||
|
|
||||||
- len= (uint) (strmov(strmov(helping, sctx->priv_user) + 1, db) - helping) + 1;
|
|
||||||
+ end= strmov(helping, sctx->priv_user) + 1;
|
|
||||||
+ end= strnmov(end, db, helping + sizeof(helping) - end);
|
|
||||||
+
|
|
||||||
+ if (end >= helping + sizeof(helping)) // db name was truncated
|
|
||||||
+ return 1; // no privileges for an invalid db name
|
|
||||||
+
|
|
||||||
+ len= (uint) (end - helping) + 1;
|
|
||||||
|
|
||||||
mysql_rwlock_rdlock(&LOCK_grant);
|
|
||||||
|
|
17
mysql.spec
17
mysql.spec
@ -1,6 +1,6 @@
|
|||||||
Name: mysql
|
Name: mysql
|
||||||
Version: 5.5.28
|
Version: 5.5.29
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
Summary: MySQL client programs and shared libraries
|
Summary: MySQL client programs and shared libraries
|
||||||
Group: Applications/Databases
|
Group: Applications/Databases
|
||||||
@ -56,7 +56,6 @@ Patch18: mysql-cipherspec.patch
|
|||||||
Patch19: mysql-file-contents.patch
|
Patch19: mysql-file-contents.patch
|
||||||
Patch20: mysql-string-overflow.patch
|
Patch20: mysql-string-overflow.patch
|
||||||
Patch21: mysql-dh1024.patch
|
Patch21: mysql-dh1024.patch
|
||||||
Patch22: mysql-cve-2012-5611.patch
|
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
BuildRequires: perl, readline-devel, openssl-devel
|
BuildRequires: perl, readline-devel, openssl-devel
|
||||||
@ -81,9 +80,8 @@ Obsoletes: mysql-cluster < 5.1.44
|
|||||||
%global __perl_requires %{SOURCE999}
|
%global __perl_requires %{SOURCE999}
|
||||||
%global __perllib_requires %{SOURCE999}
|
%global __perllib_requires %{SOURCE999}
|
||||||
|
|
||||||
# patch utility does automatically back-up of chunks that didn't apply
|
# By default, patch(1) creates backup files when chunks apply with offsets.
|
||||||
# smoothly, but we don't want to create that files because they could be
|
# Turn that off to ensure such files don't get included in RPMs (cf bz#884755).
|
||||||
# included in RPM incorrectly
|
|
||||||
%global _default_patch_flags --no-backup-if-mismatch
|
%global _default_patch_flags --no-backup-if-mismatch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -217,7 +215,6 @@ the MySQL sources.
|
|||||||
%patch19 -p1
|
%patch19 -p1
|
||||||
%patch20 -p1
|
%patch20 -p1
|
||||||
%patch21 -p1
|
%patch21 -p1
|
||||||
%patch22 -p1
|
|
||||||
|
|
||||||
# workaround for upstream bug #56342
|
# workaround for upstream bug #56342
|
||||||
rm -f mysql-test/t/ssl_8k_key-master.opt
|
rm -f mysql-test/t/ssl_8k_key-master.opt
|
||||||
@ -710,6 +707,12 @@ fi
|
|||||||
%{_mandir}/man1/mysql_client_test.1*
|
%{_mandir}/man1/mysql_client_test.1*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jan 2 2013 Tom Lane <tgl@redhat.com> 5.5.29-1
|
||||||
|
- Update to MySQL 5.5.29, for various fixes described at
|
||||||
|
http://dev.mysql.com/doc/refman/5.5/en/news-5-5-29.html
|
||||||
|
- Fix inaccurate default for socket location in mysqld-wait-ready
|
||||||
|
Resolves: #890535
|
||||||
|
|
||||||
* Thu Dec 6 2012 Honza Horak <hhorak@redhat.com> 5.5.28-3
|
* Thu Dec 6 2012 Honza Horak <hhorak@redhat.com> 5.5.28-3
|
||||||
- Rebase patches to not leave backup files when not applied smoothly
|
- Rebase patches to not leave backup files when not applied smoothly
|
||||||
- Use --no-backup-if-mismatch to prevent including backup files
|
- Use --no-backup-if-mismatch to prevent including backup files
|
||||||
|
@ -25,7 +25,7 @@ get_mysql_option(){
|
|||||||
# Defaults here had better match what mysqld_safe will default to
|
# Defaults here had better match what mysqld_safe will default to
|
||||||
get_mysql_option mysqld datadir "/var/lib/mysql"
|
get_mysql_option mysqld datadir "/var/lib/mysql"
|
||||||
datadir="$result"
|
datadir="$result"
|
||||||
get_mysql_option mysqld socket "$datadir/mysql.sock"
|
get_mysql_option mysqld socket "/var/lib/mysql/mysql.sock"
|
||||||
socketfile="$result"
|
socketfile="$result"
|
||||||
|
|
||||||
# Wait for the server to come up or for the mysqld process to disappear
|
# Wait for the server to come up or for the mysqld process to disappear
|
||||||
|
Loading…
Reference in New Issue
Block a user