Commit graph

29982 commits

Author SHA1 Message Date
unknown
33417297c5 Fix a bunch of non-Linux compile failures.
VC++Files/mysql.sln:
  mysql_client_test depends on mysys.
VC++Files/mysys/mysys.vcproj:
  Add new file missing in previous push.
mysys/my_memmem.c:
  Fix illegal pointer arithmetics on void *.
tests/Makefile.am:
  -L must go before -l
tests/mysql_client_test.c:
  No declarations after statement in C code.
2006-05-02 09:19:54 +02:00
unknown
a829565457 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/hf/work/mysql-5.0.clean
2006-05-02 09:01:13 +05:00
unknown
521d6b3dab Win build fix 2006-05-02 08:59:49 +05:00
unknown
4d1cd02ef6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.(none):/home/cmiller/work/mysql/mysql-5.0__bug17667


mysys/Makefile.am:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-05-01 22:50:36 -04:00
unknown
3010890e58 SECURITY FIX
Bug#17667: An attacker has the opportunity to bypass query logging.

This adds a new, local-only printf format specifier to our *printf functions
that allows us to print known-size buffers that must not be interpreted as 
NUL-terminated "strings."

It uses this format-specifier to print to the log, thus fixing this 
problem.


include/my_sys.h:
  Add prototype for my_memmem() .
mysys/Makefile.am:
  Add reference to new file, my_memmem.c
mysys/mf_iocache2.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
  
  Also, simplify the code a bit.
  
  TODO:  This code should be unified with the strings/my_vnsprintf.c code in 
  the future.
sql/sql_parse.cc:
  The query is not a C-string, but is a sized buffer, containing any character 
  at all, which may include NUL characters.
strings/my_vsnprintf.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
tests/Makefile.am:
  We may need some of our local functions.
tests/mysql_client_test.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
mysql-test/t/mysql_client_test.opt:
  New BitKeeper file ``mysql-test/t/mysql_client_test.opt''
  
  Add '--log' server parameter.
mysys/my_memmem.c:
  New BitKeeper file ``mysys/my_memmem.c''
  
  Implement memmem, a black-box work-alike of the GNU memmem(), which functions
  like strstr() but for arbitrary blocks of memory.
2006-05-01 22:10:50 -04:00
unknown
71c4827b81 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-new
2006-05-01 20:23:36 +02:00
unknown
d74b3684cd Merge
include/config-win.h:
  Auto merged
2006-05-01 20:16:19 +02:00
unknown
71b3a5aa35 Merge bk-internal:/home/bk/mysql-5.0
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2006-05-01 10:59:14 -07:00
unknown
38b1f7c7c3 mysql.spec.sh:
Use "./libtool --mode=execute" to find real path to executables


support-files/mysql.spec.sh:
  Use "./libtool --mode=execute" to find real path to executables
2006-05-01 19:48:31 +02:00
unknown
d91a45af4d Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/hf/work/mysql-5.0.clean
2006-05-01 22:21:28 +05:00
unknown
57b21b5bdb Fix for Win build
BitKeeper/etc/ignore:
  Added client/mysql_upgrade to the ignore list
client/mysql_upgrade.c:
  fixed for Win build
include/config-win.h:
  fixed for Win build
2006-05-01 22:16:08 +05:00
unknown
3dd4fcb31f Merge mysql.com:/home/jimw/my/mysql-5.0-18607
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2006-05-01 09:12:36 -07:00
unknown
64a3368017 Merge mysql.com:/home/jimw/my/mysql-5.0-18312
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2006-05-01 09:11:57 -07:00
unknown
a223550fa1 Merge zippy.(none):/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.0


mysql-test/r/null.result:
  Auto merged
mysql-test/t/null.test:
  Auto merged
sql/sql_table.cc:
  Merge.
2006-05-01 09:46:00 -04:00
unknown
180cecdc1c Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-29 22:48:22 +02:00
unknown
59a73f178b config-win.h:
Fix strange "double" define for popen.
  Avoid warnings about sprintf() etc. being unsafe.
  Corrected typo "#endfif"


include/config-win.h:
  Fix strange "double" define for popen.
  Avoid warnings about sprintf() etc. being unsafe.
  Corrected typo "#endfif"
2006-04-29 15:58:02 +02:00
unknown
4fadc75108 configure.in:
Changed version to 4.1.20


configure.in:
  Changed version to 4.1.20
2006-04-29 07:32:12 +02:00
unknown
9cffcab4e6 mysql.spec.sh:
Backport of changes in 5.0 (bug#18294)


support-files/mysql.spec.sh:
  Backport of changes in 5.0 (bug#18294)
2006-04-29 01:28:04 +02:00
unknown
fb7a614383 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-29 00:52:30 +02:00
unknown
dd68976a24 BUG#19145: mysqld crashes if you set the default value of an enum field to NULL
Now test for NULLness the pointers returned from objects created from the
default value. Pushing patch on behalf of cmiller.


mysql-test/r/null.result:
  Add test case
mysql-test/t/null.test:
  Add test case
sql/sql_table.cc:
  No longer blindly dereference pointer of the string representation of the
  values, where "NULL" is NUL. Raise INVALID DEFAULT error messages where
  appropriate.
  
  Note that the -O1 optimization flag made debugging this extremely tricky, with
  misleading results, and that removing it from the Makefile during debugging can
  be invaluable.
2006-04-28 12:15:29 -04:00
unknown
53a4e3ee50 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
2006-04-28 17:48:50 +02:00
unknown
e196351d8d Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-new
2006-04-28 17:23:14 +02:00
unknown
5fd32db8a1 mysql.spec.sh:
Include and run mysql_upgrade if needed (bug#19353)


support-files/mysql.spec.sh:
  Include and run mysql_upgrade if needed (bug#19353)
2006-04-28 17:03:11 +02:00
unknown
a59807d8cf Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-28 16:27:39 +02:00
unknown
74566d84b0 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
2006-04-28 16:05:05 +02:00
unknown
e92e1dace7 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1
into  devsrv-b.mysql.com:/users/msvensson/mysql-4.1
2006-04-28 15:15:13 +02:00
unknown
9b69052c61 Bug#18818 configure: No longer finds OpenSSL on Mac OS X
- Eval shrext_cmds variable before using it
 - Moved from acinclude.m4 to openssl.m4 and zlib.m4 when merging 4.1 -> 5.0


config/ac-macros/openssl.m4:
  Move from acinclude.m4
config/ac-macros/zlib.m4:
  Move from acinclude.m4
2006-04-28 13:55:40 +02:00
unknown
728ad6ddb9 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Changes to acinclude.m4 will go into openssl.m4 and zlib.m4
2006-04-28 13:53:32 +02:00
unknown
62e09b3e38 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1
into  devsrv-b.mysql.com:/users/msvensson/mysql-4.1
2006-04-28 13:43:26 +02:00
unknown
ef7ec424e6 Merge lsmy3.wdf.sap.corp:/data/users/gkodinov/mysql-4.1-B18492
into  lsmy3.wdf.sap.corp:/data/users/gkodinov/mysql-5.0-B18492


mysql-test/r/subselect.result:
  merged
sql/item.cc:
  merged
sql/item.h:
  merged
sql/item_subselect.cc:
  merged
2006-04-28 12:06:54 +02:00
unknown
3a0d0b4ce5 BUG#18492: mysqld reports ER_ILLEGAL_REFERENCE in --ps-protocol
In the code that converts IN predicates to EXISTS predicates it is changing
the select list elements to constant 1. Example :
SELECT ... FROM ...  WHERE a IN (SELECT c FROM ...)
is transformed to :
SELECT ... FROM ... WHERE EXISTS (SELECT 1 FROM ...  HAVING a = c)
However there can be no FROM clause in the IN subquery and it may not be
a simple select : SELECT ... FROM ... WHERE a IN (SELECT f(..) AS
c UNION SELECT ...) This query is transformed to : SELECT ... FROM ...
WHERE EXISTS (SELECT 1 FROM (SELECT f(..) AS c UNION SELECT ...)
x HAVING a = c) In the above query c in the HAVING clause is made to be
an Item_null_helper (a subclass of Item_ref) pointing to the real
Item_field (which is not referenced anywhere else in the query anymore).
This is done because Item_ref_null_helper collects information whether
there are NULL values in the result.  This is OK for directly executed
statements, because the Item_field pointed by the Item_null_helper is
already fixed when the transformation is done.  But when executed as
a prepared statement all the Item instances are "un-fixed" before the
recompilation of the prepared statement. So when the Item_null_helper
gets fixed it discovers that the Item_field it points to is not fixed
and issues an error.  The remedy is to keep the original select list
references when there are no tables in the FROM clause. So the above
becomes : SELECT ... FROM ...  WHERE EXISTS (SELECT c FROM (SELECT f(..)
AS c UNION SELECT ...) x HAVING a = c) In this way c is referenced
directly in the select list as well as by reference in the HAVING
clause. So it gets correctly fixed even with prepared statements.  And
since the Item_null_helper subclass of Item_ref_null_helper is not used
anywhere else it's taken out.


mysql-test/r/ps_11bugs.result:
  Test case for the bug
mysql-test/r/subselect.result:
  Explain updated because of the tranformation
mysql-test/t/ps_11bugs.test:
  Testcase for the bug
sql/item.cc:
  Taking out Item_null_helper as it's no longer needed
sql/item.h:
  Taking out Item_null_helper as it's no longer needed
sql/item_subselect.cc:
  The described change to the IN->EXISTS transformation
2006-04-28 11:23:31 +02:00
unknown
e4b9795cc6 Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-04-28 08:30:49 +02:00
unknown
1a2579756f Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/hf/work/mysql-5.0.upgd
2006-04-28 09:19:53 +05:00
unknown
82c45de638 bug #18115 (mysql_upgrade on Windows)
pushed in 5.0


VC++Files/mysql.dsw:
  mysql_upgrade tool added
VC++Files/mysql.sln:
  mysql_upgrade tool added
VC++Files/mysql_ia64.dsw:
  mysql_upgrade tool added
client/Makefile.am:
  mysql_upgrade tool added
2006-04-28 09:07:25 +05:00
unknown
dc101c2cd0 Merge jwinstead@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/nfstmp1/jwinstead/mysql-5.0-clean


mysql-test/mysql-test-run.pl:
  Auto merged
2006-04-28 00:33:47 +02:00
unknown
c357525e42 Disable udf.test 2006-04-27 22:30:14 +02:00
unknown
83a7198493 Merge shellback.(none):/home/msvensson/mysql/mysql-5.0-maint
into  shellback.(none):/home/msvensson/mysql/mysql-5.0
2006-04-27 22:24:32 +02:00
unknown
7bddd524d7 Fix merge error
extra/yassl/src/yassl_int.cpp:
  Fix merge error, missing {
extra/yassl/taocrypt/src/integer.cpp:
  Fix merge error, duplicate function definition
2006-04-27 22:21:23 +02:00
unknown
185c89c419 Return empty string if file does not exist
Set LD_LIBRARY_PATH and UDF_EXAMPLE_LIB from $lib_udf_example


mysql-test/lib/mtr_misc.pl:
  Return empty string if file does not exist
mysql-test/mysql-test-run.pl:
  Set LD_LIBRARY_PATH and UDF_EXAMPLE_LIB from $lib_udf_example variable
2006-04-27 21:26:24 +02:00
unknown
9681b731d1 Merge mysql.com:/home/jimw/my/mysql-5.0-19393
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2006-04-27 10:56:44 -07:00
unknown
d985ed4ca9 Bug #19393: Federated tests fail on Windows under pushbuild
Supplying --skip-rpl to mysql-test-run.pl would always disable the
  slaves, but those slaves may still be needed for the federated tests.
  Now we only disable the slaves when they are not used by any of the
  tests.


mysql-test/mysql-test-run.pl:
  Decide whether to set up and start slave databases based entirely on
  which tests are used, and don't allow --skip-rpl to ruin the party,
  since other tests than replication rely on the slaves (namely federated).
2006-04-27 10:53:19 -07:00
unknown
8d1230c6ad Merge shellback.(none):/home/msvensson/mysql/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint


client/mysql.cc:
  Auto merged
configure.in:
  Auto merged
extra/yassl/include/openssl/rsa.h:
  Auto merged
extra/yassl/include/yassl_int.hpp:
  Auto merged
extra/yassl/include/yassl_types.hpp:
  Auto merged
extra/yassl/src/template_instnt.cpp:
  Auto merged
extra/yassl/taocrypt/include/integer.hpp:
  Auto merged
extra/yassl/taocrypt/include/misc.hpp:
  Auto merged
extra/yassl/taocrypt/src/algebra.cpp:
  Auto merged
extra/yassl/taocrypt/src/template_instnt.cpp:
  Auto merged
mysql-test/t/disabled.def:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
extra/yassl/include/openssl/ssl.h:
  Manual merge
extra/yassl/src/handshake.cpp:
  Manual merge
extra/yassl/src/yassl_int.cpp:
  Manual merge
extra/yassl/taocrypt/include/runtime.hpp:
  Manual merge
extra/yassl/taocrypt/src/integer.cpp:
  Manual merge
mysql-test/mysql-test-run.pl:
  Manual merge
mysql-test/r/trigger.result:
  Manual merge
mysql-test/t/trigger.test:
  Manual merge
2006-04-27 17:35:29 +02:00
unknown
36261a96fb Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


mysql-test/mysql-test-run.pl:
  Auto merged
sql/sql_parse.cc:
  Auto merged
mysql-test/r/trigger.result:
  Manual merge
mysql-test/t/trigger.test:
  Manual merge
2006-04-27 17:30:56 +02:00
unknown
1bdc15e100 Add test to mysql-test-run.pl to see if the udf_example.so is availble. Set envioronment variable UDF_EXAMPLE_LIB if it is.
Then check in have_udf if that variable is set. Finally use tahe variable when loading the shared library. 


mysql-test/include/have_udf.inc:
  Add check if udf_example.so(or similar) is available
mysql-test/lib/mtr_misc.pl:
  Add funcion "mtr_file_exist" to search for files
mysql-test/mysql-test-run.pl:
  Add checks to find the udf_example.so library
mysql-test/r/udf.result:
  Update result
mysql-test/t/disabled.def:
  Remove udf.test from disabled tests
mysql-test/t/udf.test:
  Use variable UDF_EXAMPLE_LIB when looking for shared library to load
mysql-test/r/have_udf_example.require:
  New BitKeeper file ``mysql-test/r/have_udf_example.require''
2006-04-27 16:32:40 +02:00
unknown
66b56724ff Merge polar.kitebird.com:/src/extern/MySQL/bk/mysql-4.1
into  polar.kitebird.com:/src/extern/MySQL/bk/mysql-5.0


sql/set_var.cc:
  Auto merged
2006-04-27 07:53:15 -05:00
unknown
f0e7abfcc1 set_var.cc:
System variable was added out of lexical order.


sql/set_var.cc:
  System variable was added out of lexical order.
2006-04-27 07:51:56 -05:00
unknown
e187468d24 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-new


configure.in:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-04-27 11:38:48 +02:00
unknown
c8e2e3fd96 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-27 11:28:15 +02:00
unknown
18a140b3e7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1
2006-04-27 08:42:36 +02:00
unknown
96f58e1b26 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
2006-04-27 08:37:45 +02:00