Merge branch 'mysql/5.5' into 5.5
This commit is contained in:
commit
df5f25fa7a
@ -1067,8 +1067,7 @@ static void fix_history(String *final_command);
|
|||||||
|
|
||||||
static COMMANDS *find_command(char *name);
|
static COMMANDS *find_command(char *name);
|
||||||
static COMMANDS *find_command(char cmd_name);
|
static COMMANDS *find_command(char cmd_name);
|
||||||
static bool add_line(String &buffer, char *line, ulong line_length,
|
static bool add_line(String &, char *, ulong, char *, bool *, bool);
|
||||||
char *in_string, bool *ml_comment, bool truncated);
|
|
||||||
static void remove_cntrl(String &buffer);
|
static void remove_cntrl(String &buffer);
|
||||||
static void print_table_data(MYSQL_RES *result);
|
static void print_table_data(MYSQL_RES *result);
|
||||||
static void print_table_data_html(MYSQL_RES *result);
|
static void print_table_data_html(MYSQL_RES *result);
|
||||||
|
@ -12,6 +12,14 @@ before calling SSL_new();
|
|||||||
|
|
||||||
*** end Note ***
|
*** end Note ***
|
||||||
|
|
||||||
|
yaSSL Release notes, version 2.4.4 (8/8/2017)
|
||||||
|
This release of yaSSL fixes an interop issue. A fix for detecting cipher
|
||||||
|
suites with non leading zeros is included as yaSSL only supports cipher
|
||||||
|
suites with leading zeros. Thanks for the report from Security Innovation
|
||||||
|
and Oracle.
|
||||||
|
|
||||||
|
Users interoping with other SSL stacks should update.
|
||||||
|
|
||||||
yaSSL Release notes, version 2.4.2 (9/22/2016)
|
yaSSL Release notes, version 2.4.2 (9/22/2016)
|
||||||
This release of yaSSL fixes a medium security vulnerability. A fix for
|
This release of yaSSL fixes a medium security vulnerability. A fix for
|
||||||
potential AES side channel leaks is included that a local user monitoring
|
potential AES side channel leaks is included that a local user monitoring
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
|
Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||||
Use is subject to license terms.
|
Use is subject to license terms.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
@ -35,7 +35,7 @@
|
|||||||
#include "rsa.h"
|
#include "rsa.h"
|
||||||
|
|
||||||
|
|
||||||
#define YASSL_VERSION "2.4.2"
|
#define YASSL_VERSION "2.4.4"
|
||||||
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2005, 2014, Oracle and/or its affiliates
|
Copyright (c) 2005, 2017, Oracle and/or its affiliates.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -1578,6 +1578,10 @@ void ServerHello::Process(input_buffer& input, SSL& ssl)
|
|||||||
ssl.SetError(badVersion_error);
|
ssl.SetError(badVersion_error);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (cipher_suite_[0] != 0x00) {
|
||||||
|
ssl.SetError(unknown_cipher);
|
||||||
|
return;
|
||||||
|
}
|
||||||
ssl.set_pending(cipher_suite_[1]);
|
ssl.set_pending(cipher_suite_[1]);
|
||||||
ssl.set_random(random_, server_end);
|
ssl.set_random(random_, server_end);
|
||||||
if (id_len_)
|
if (id_len_)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2005, 2014, Oracle and/or its affiliates
|
Copyright (c) 2005, 2017, Oracle and/or its affiliates.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -1399,12 +1399,17 @@ void SSL::matchSuite(const opaque* peer, uint length)
|
|||||||
// start with best, if a match we are good, Ciphers are at odd index
|
// start with best, if a match we are good, Ciphers are at odd index
|
||||||
// since all SSL and TLS ciphers have 0x00 first byte
|
// since all SSL and TLS ciphers have 0x00 first byte
|
||||||
for (uint i = 1; i < secure_.get_parms().suites_size_; i += 2)
|
for (uint i = 1; i < secure_.get_parms().suites_size_; i += 2)
|
||||||
for (uint j = 1; j < length; j+= 2)
|
for (uint j = 0; (j + 1) < length; j+= 2) {
|
||||||
if (secure_.use_parms().suites_[i] == peer[j]) {
|
if (peer[j] != 0x00) {
|
||||||
|
continue; // only 0x00 first byte supported
|
||||||
|
}
|
||||||
|
|
||||||
|
if (secure_.use_parms().suites_[i] == peer[j + 1]) {
|
||||||
secure_.use_parms().suite_[0] = 0x00;
|
secure_.use_parms().suite_[0] = 0x00;
|
||||||
secure_.use_parms().suite_[1] = peer[j];
|
secure_.use_parms().suite_[1] = peer[j + 1];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
SetError(match_error);
|
SetError(match_error);
|
||||||
}
|
}
|
||||||
@ -2706,4 +2711,3 @@ template mySTL::list<yaSSL::SSL_SESSION*>::iterator find_if<mySTL::list<yaSSL::S
|
|||||||
template mySTL::list<yaSSL::ThreadError>::iterator find_if<mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match>(mySTL::list<yaSSL::ThreadError>::iterator, mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match);
|
template mySTL::list<yaSSL::ThreadError>::iterator find_if<mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match>(mySTL::list<yaSSL::ThreadError>::iterator, mySTL::list<yaSSL::ThreadError>::iterator, yaSSL::yassl_int_cpp_local2::thr_match);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -220,6 +220,22 @@ a d
|
|||||||
3 11120436154190595086
|
3 11120436154190595086
|
||||||
drop table t1, t2;
|
drop table t1, t2;
|
||||||
End of 5.0 tests
|
End of 5.0 tests
|
||||||
|
#
|
||||||
|
# Bug#19875294 ASSERTION `SRC' FAILED IN MY_STRNXFRM_UNICODE
|
||||||
|
# (SIG 6 -STRINGS/CTYPE-UTF8.C:5151)
|
||||||
|
#
|
||||||
|
set @@sql_mode='';
|
||||||
|
CREATE TABLE t1(c1 SET('','')CHARACTER SET ucs2);
|
||||||
|
Warnings:
|
||||||
|
Note 1291 Column 'c1' has duplicated value '' in SET
|
||||||
|
INSERT INTO t1 VALUES(990101.102);
|
||||||
|
Warnings:
|
||||||
|
Warning 1265 Data truncated for column 'c1' at row 1
|
||||||
|
SELECT COALESCE(c1)FROM t1 ORDER BY 1;
|
||||||
|
COALESCE(c1)
|
||||||
|
|
||||||
|
DROP TABLE t1;
|
||||||
|
set @@sql_mode=default;
|
||||||
CREATE TABLE t1(a YEAR);
|
CREATE TABLE t1(a YEAR);
|
||||||
SELECT 1 FROM t1 WHERE a=1 AND CASE 1 WHEN a THEN 1 ELSE 1 END;
|
SELECT 1 FROM t1 WHERE a=1 AND CASE 1 WHEN a THEN 1 ELSE 1 END;
|
||||||
1
|
1
|
||||||
|
@ -174,6 +174,18 @@ drop table t1, t2;
|
|||||||
|
|
||||||
--echo End of 5.0 tests
|
--echo End of 5.0 tests
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#19875294 ASSERTION `SRC' FAILED IN MY_STRNXFRM_UNICODE
|
||||||
|
--echo # (SIG 6 -STRINGS/CTYPE-UTF8.C:5151)
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
set @@sql_mode='';
|
||||||
|
CREATE TABLE t1(c1 SET('','')CHARACTER SET ucs2);
|
||||||
|
INSERT INTO t1 VALUES(990101.102);
|
||||||
|
SELECT COALESCE(c1)FROM t1 ORDER BY 1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
set @@sql_mode=default;
|
||||||
|
|
||||||
#
|
#
|
||||||
# lp:1001510
|
# lp:1001510
|
||||||
# Bug #11764313 57135: CRASH IN ITEM_FUNC_CASE::FIND_ITEM WITH CASE WHEN
|
# Bug #11764313 57135: CRASH IN ITEM_FUNC_CASE::FIND_ITEM WITH CASE WHEN
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2000, 2013, Oracle and/or its affiliates.
|
Copyright (c) 2000, 2017, Oracle and/or its affiliates.
|
||||||
Copyright (c) 2008, 2013, Monty Program Ab
|
Copyright (c) 2008, 2017, MariaDB
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -7947,13 +7947,13 @@ String *Field_set::val_str(String *val_buffer,
|
|||||||
ulonglong tmp=(ulonglong) Field_enum::val_int();
|
ulonglong tmp=(ulonglong) Field_enum::val_int();
|
||||||
uint bitnr=0;
|
uint bitnr=0;
|
||||||
|
|
||||||
if (tmp == 0)
|
|
||||||
{
|
|
||||||
/*
|
/*
|
||||||
Some callers expect *val_buffer to contain the result,
|
Some callers expect *val_buffer to contain the result,
|
||||||
so we assign to it, rather than doing 'return &empty_set_string.
|
so we assign to it, rather than doing 'return &empty_set_string.
|
||||||
*/
|
*/
|
||||||
*val_buffer= empty_set_string;
|
*val_buffer= empty_set_string;
|
||||||
|
if (tmp == 0)
|
||||||
|
{
|
||||||
return val_buffer;
|
return val_buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2005, 2013, Oracle and/or its affiliates.
|
Copyright (c) 2005, 2017, Oracle and/or its affiliates.
|
||||||
|
Copyright (c) 2009, 2017, MariaDB
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#ifndef SQL_ITEM_INCLUDED
|
#ifndef SQL_ITEM_INCLUDED
|
||||||
#define SQL_ITEM_INCLUDED
|
#define SQL_ITEM_INCLUDED
|
||||||
|
|
||||||
/* Copyright (c) 2000, 2015, Oracle and/or its affiliates.
|
/* Copyright (c) 2000, 2017, Oracle and/or its affiliates.
|
||||||
Copyright (c) 2009, 2016, MariaDB
|
Copyright (c) 2009, 2017, MariaDB
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -2341,7 +2341,6 @@ static int init_slave_thread(THD* thd, SLAVE_THD_TYPE thd_type)
|
|||||||
thd->enable_slow_log= opt_log_slow_slave_statements;
|
thd->enable_slow_log= opt_log_slow_slave_statements;
|
||||||
thd->variables.log_slow_filter= global_system_variables.log_slow_filter;
|
thd->variables.log_slow_filter= global_system_variables.log_slow_filter;
|
||||||
set_slave_thread_options(thd);
|
set_slave_thread_options(thd);
|
||||||
thd->client_capabilities = CLIENT_LOCAL_FILES;
|
|
||||||
mysql_mutex_lock(&LOCK_thread_count);
|
mysql_mutex_lock(&LOCK_thread_count);
|
||||||
thd->thread_id= thd->variables.pseudo_thread_id= thread_id++;
|
thd->thread_id= thd->variables.pseudo_thread_id= thread_id++;
|
||||||
mysql_mutex_unlock(&LOCK_thread_count);
|
mysql_mutex_unlock(&LOCK_thread_count);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* Copyright (c) 2005, 2014, Oracle and/or its affiliates.
|
/* Copyright (c) 2005, 2017, Oracle and/or its affiliates.
|
||||||
Copyright (c) 2009, 2014, SkySQL Ab.
|
Copyright (c) 2009, 2017, SkySQL Ab.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -8164,6 +8164,7 @@ int create_partition_name(char *out, size_t outlen, const char *in1,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
transl_part= in2;
|
transl_part= in2;
|
||||||
|
|
||||||
if (name_variant == NORMAL_PART_NAME)
|
if (name_variant == NORMAL_PART_NAME)
|
||||||
end= strxnmov(out, outlen-1, in1, "#P#", transl_part, NullS);
|
end= strxnmov(out, outlen-1, in1, "#P#", transl_part, NullS);
|
||||||
else if (name_variant == TEMP_PART_NAME)
|
else if (name_variant == TEMP_PART_NAME)
|
||||||
@ -8178,25 +8179,19 @@ int create_partition_name(char *out, size_t outlen, const char *in1,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Create subpartition name. This method is used to calculate the
|
||||||
|
subpartition name, service routine to the del_ren_cre_table method.
|
||||||
|
The output buffer size should be FN_REFLEN + 1(terminating '\0').
|
||||||
|
|
||||||
/*
|
@param [out] out Created partition name string
|
||||||
Create subpartition name
|
@param in1 First part
|
||||||
|
@param in2 Second part
|
||||||
|
@param in3 Third part
|
||||||
|
@param name_variant Normal, temporary or renamed partition name
|
||||||
|
|
||||||
SYNOPSIS
|
@retval true Error.
|
||||||
create_subpartition_name()
|
@retval false Success.
|
||||||
out:out The buffer for the created partition name string
|
|
||||||
must be *at least* of FN_REFLEN+1 bytes
|
|
||||||
in1 First part
|
|
||||||
in2 Second part
|
|
||||||
in3 Third part
|
|
||||||
name_variant Normal, temporary or renamed partition name
|
|
||||||
|
|
||||||
RETURN VALUE
|
|
||||||
0 if ok, error if name too long
|
|
||||||
|
|
||||||
DESCRIPTION
|
|
||||||
This method is used to calculate the subpartition name, service routine to
|
|
||||||
the del_ren_cre_table method.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int create_subpartition_name(char *out, size_t outlen,
|
int create_subpartition_name(char *out, size_t outlen,
|
||||||
@ -8208,6 +8203,7 @@ int create_subpartition_name(char *out, size_t outlen,
|
|||||||
|
|
||||||
tablename_to_filename(in2, transl_part_name, FN_REFLEN);
|
tablename_to_filename(in2, transl_part_name, FN_REFLEN);
|
||||||
tablename_to_filename(in3, transl_subpart_name, FN_REFLEN);
|
tablename_to_filename(in3, transl_subpart_name, FN_REFLEN);
|
||||||
|
|
||||||
if (name_variant == NORMAL_PART_NAME)
|
if (name_variant == NORMAL_PART_NAME)
|
||||||
end= strxnmov(out, outlen-1, in1, "#P#", transl_part_name,
|
end= strxnmov(out, outlen-1, in1, "#P#", transl_part_name,
|
||||||
"#SP#", transl_subpart_name, NullS);
|
"#SP#", transl_subpart_name, NullS);
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
#ifndef SQL_PARTITION_INCLUDED
|
#ifndef SQL_PARTITION_INCLUDED
|
||||||
#define SQL_PARTITION_INCLUDED
|
#define SQL_PARTITION_INCLUDED
|
||||||
|
|
||||||
/* Copyright (c) 2006, 2013, Oracle and/or its affiliates.
|
/* Copyright (c) 2006, 2017, Oracle and/or its affiliates.
|
||||||
|
Copyright (c) 2011, 2017, MariaDB
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
Loading…
x
Reference in New Issue
Block a user