Commit Graph

443 Commits

Author SHA1 Message Date
Andrey Hristov
ddbbcdce49 Use common code to handle initial authentication and
COM_CHANGE_USER
2011-01-11 13:02:57 +00:00
Andrey Hristov
00eaff1528 plug a leak 2011-01-10 15:28:52 +00:00
Andrey Hristov
61d49db1f3 new flag 2011-01-10 15:14:56 +00:00
Andrey Hristov
5549e066f2 Proper fix for
Bug #53503      mysqli::query returns false after successful LOAD DATA query
which fixes als #56349, same behavior but in ext/mysql. Both due to a bug
in mysqlnd. Never was a problem with libmysql.
Also fixed the 53503's test case as it always reported PASS, even when there
should have been a failure.
2011-01-07 14:22:30 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Andrey Hristov
d8774af125 C89 fix 2010-12-28 16:41:39 +00:00
Andrey Hristov
cfac5f5b67 extending the API interface - plugins can register
themselves with a structure and can be searched.
Every plugin can have statistics and they are shown
under the statistics of mysqlnd in MINFO.
2010-12-28 15:16:21 +00:00
Andrey Hristov
b51abfb35f fix a small bug about affected_rows in the text protocol 2010-12-16 12:56:19 +00:00
Andrey Hristov
47bb667a64 Fix sprintf modifier to be right, wrong data reported in the log 2010-12-16 12:18:54 +00:00
Andrey Hristov
69894eaf80 count preciser in case of error 2010-12-15 14:14:58 +00:00
Pierre Joye
a7ffa09e18 - add PHP_INSTALL_HEADERS to all parts (core&exts) exposing headers, generate the install-headers cmd 2010-12-11 22:18:10 +00:00
Andrey Hristov
27ecaa7901 Skip additional result sets sent by MySQL 5.5 servers
which break the Protocol API 
(see http://bugs.mysql.com/bug.php?id=58700)
2010-12-06 13:59:14 +00:00
Andrey Hristov
e183ea0495 don't crash if the API is used incorrectly 2010-12-06 13:50:51 +00:00
Andrey Hristov
ee15ed307e new server constant as of 5.5 2010-12-02 13:59:56 +00:00
Pierre Joye
87fd3737b4 -fix build 2010-11-15 23:53:13 +00:00
Andrey Hristov
bcb4c8427e two new stats 2010-11-05 20:07:34 +00:00
Andrey Hristov
769a3cf0c3 - More features for the profiling, create aggregates and dump them
on file close.
- Also add a trace modifier to switch on and off the profiling.
- With additional compiler switch the profiling can be completely omitted,
of course it makes sense only when --enable-debug. Because otherwise
there is no tracing, thus no profiling.
- Added a fix for Windows for handling trace files on different devices
 (special handing of ':' )
2010-10-29 15:02:39 +00:00
Andrey Hristov
da633ed52e gettimeofday for windows 2010-10-28 14:14:06 +00:00
Andrey Hristov
9920be1a81 show tracing 2010-10-28 14:07:36 +00:00
Andrey Hristov
099a505f89 fix windows debug build
better zlib detection
2010-10-28 13:46:54 +00:00
Andrey Hristov
e70b2fcda4 rename and remove usage of inttypes.h, not needed 2010-10-25 13:44:11 +00:00
Andrey Hristov
fe719c5e42 profiling in trace mode 2010-10-22 15:46:26 +00:00
Andrey Hristov
a25ce8c606 last piece to enable trace logging on windows 2010-10-22 14:34:33 +00:00
Andrey Hristov
76783dfeb5 enable debug logging on windows, in debug builds, of course 2010-10-22 14:12:45 +00:00
Andrey Hristov
74ec58a045 new collations 2010-10-08 09:15:31 +00:00
Andrey Hristov
0e519d247e fix some uninitialized variables. also fix shadowing of global symbols 2010-10-07 13:49:00 +00:00
Andrey Hristov
1f9cf93cac Fix for Bug #52686 mysql_stmt_attr_[gs]et arg. points to incorrect type 2010-10-06 11:11:02 +00:00
Andrey Hristov
63d6892b56 more variable hiding fixes 2010-10-06 07:09:37 +00:00
Andrey Hristov
b373ccd6fc fix shadowing of parameters 2010-10-06 06:08:55 +00:00
Andrey Hristov
223832c501 rename parameter name - should not shadow the global symbol alloca 2010-10-05 17:20:00 +00:00
Andrey Hristov
c7a09c682d two more compiler warnings fixed - size does matter 2010-10-05 17:10:47 +00:00
Andrey Hristov
396402fc97 Rename a method so it doesn't clash with a global symbol - a function
Fix compiler waring by extening the type of a variable
2010-10-05 17:03:50 +00:00
Andrey Hristov
de69927b8e Fix compiler warnings - on 32bit size_t is smaller than uint64_t, although
we will never hit this the compiler should be happy.
2010-10-05 16:54:14 +00:00
Andrey Hristov
60bfedb1e6 rename parameter, should not conflict with global symbol -
the socket function
2010-10-05 16:27:49 +00:00
Andrey Hristov
07c08c1c93 remove trailing commas in enums 2010-10-05 14:56:49 +00:00
Andrey Hristov
a9da84800e add some safe casts 2010-10-05 11:08:21 +00:00
Andrey Hristov
75ed0bbb3e fixing more types 2010-10-05 10:30:00 +00:00
Andrey Hristov
a3f2895e67 fix types 2010-10-05 08:56:21 +00:00
Ulf Wendel
b3dfb56949 Fix warnings
ext\mysqlnd\mysqlnd_result_meta.c(57) : warning C4090: 'initializing' : different 'const' qualifiers
ext\mysqlnd\mysqlnd_result_meta.c(64) : warning C4090: 'initializing' : different 'const' qualifiers
ext\mysqli\mysqli_report.c(50) : warning C4013: 'php_mysqli_throw_sql_exception' undefined; assuming extern returning int
2010-10-05 08:29:54 +00:00
Andrey Hristov
d4b1c1ec78 fix recent TSRM build break, with --enable-debug 2010-10-05 08:17:33 +00:00
Kalle Sommer Nielsen
304bc60e98 We do not need this TSRMLS_FETCH() call as we do not use any TSRM stuff in here, so we can get
a minor boost here in ZTS mode.
2010-10-04 21:04:25 +00:00
Andrey Hristov
026da7d4a0 fix two more warnings 2010-10-04 14:52:14 +00:00
Andrey Hristov
0a5c631488 add some safe casts - lower the number of warnings by 2 2010-10-04 14:12:31 +00:00
Andrey Hristov
bf3b607f7a Fix const-ness 2010-10-04 13:54:30 +00:00
Andrey Hristov
d7b26d2987 Even better patch 2010-10-04 12:59:29 +00:00
Andrey Hristov
5f06ac5caf don't define twice the macro on some platforms 2010-10-04 12:41:12 +00:00
Ulf Wendel
500cd35c21 Fixing compiler warning. 2010-10-04 10:58:05 +00:00
Ulf Wendel
5d6f3fb908 Fixing "ext/mysqlnd/mysqlnd.h", line 287: warning: syntax error: empty declaration" 2010-10-04 10:51:44 +00:00
Andrey Hristov
d55566c7b8 Fix a problem that leads to leaks in plugins that
use stmt local data - no free is called for statements
that are over-prepared
2010-09-29 13:18:07 +00:00
Andrey Hristov
1762d63406 add another hook, maybe the last one, for MYSQLND_STMT, which
was missed before
2010-09-28 14:36:18 +00:00
Andrey Hristov
c301c358ae Fix the value, it was bumped 2010-09-27 11:23:01 +00:00
Andrey Hristov
859a1404bf WS fixes 2010-09-23 16:03:22 +00:00
Kalle Sommer Nielsen
1ac15b2f8e Added TSRMLS macros into php_get_current_user() 2010-09-23 04:13:36 +00:00
Andrey Hristov
4c26112c88 Fix for
Request #48082 mysql_connect does not work with named pipes
2010-09-22 15:14:04 +00:00
Andrey Hristov
7346d8d590 small macro fix 2010-09-22 14:54:43 +00:00
Andrey Hristov
0b74eb2e96 fix for bug 52891 - optimize a bit 2010-09-22 14:26:43 +00:00
Andrey Hristov
fbaed5476c Fix for
Bug #52891 Wrong data inserted with mysqli/mysqlnd when using bind_param,value>LONG_MAX
2010-09-22 11:38:49 +00:00
Pierre Joye
ed58636f00 - use TSRMLS_D/C with php_stream_context_alloc 2010-09-16 09:33:42 +00:00
Andrey Hristov
f60bd23914 remove unneeded proxy function _mysqlnd_restart_psessoin 2010-09-15 12:23:45 +00:00
Andrey Hristov
d5f1517cd6 Remove unneeded proxy function _mysqlnd_end_psession 2010-09-15 12:11:33 +00:00
Andrey Hristov
383d7d005a fix build on windows, seems this macro is not defined 2010-09-01 16:54:20 +00:00
Andrey Hristov
b2bcf3ae48 OPT_COMPRESS support for mysqlnd_conn::set_client_option
To be used by mysqli_options
2010-09-01 14:47:36 +00:00
Andrey Hristov
2ab9513ff4 Fix for MySQL Bug #49406
Binding params doesn't work when selecting a date inside a CASE-WHEN
(http://bugs.mysql.com/bug.php?id=49406)
The MySQL server sends MYSQL_TYPE_NEWDATE values as clear text, even
when PS are used and thus the binary protocol are used. Changing the
handler for the type.
2010-08-30 18:10:23 +00:00
Andrey Hristov
9c0439e4bc Fix for Bug #52613 crash in mysqlnd 2010-08-17 18:08:25 +00:00
Andrey Hristov
277c7d4dea Added utf16 and utf32 support, as in MySQL 5.5, in mysqlnd.
Fixed tests, so they don't try to use SET NAMES utf16|utf32,
as character_set_client can't be set to those (the lexer can't
read ucs2, utf16 and utf32).
Added support for 4-byte utf8, as found in MySQL 5.5
2010-08-16 17:44:50 +00:00
Andrey Hristov
c803b0024a Make this function static, as it is used only in this file.
Add additional comment about how it works.
2010-08-12 14:17:31 +00:00
Andrey Hristov
9da177f8d5 Allocate memory in a burst mode, and later use it. Increases
locality of the data.
Also use MYSQLND_INC_CONN_STATISTIC in one place, instead of
two, thus removing code duplication from macro expansion - less
code to fit in the instruction cache.
2010-08-12 13:23:16 +00:00
Andrey Hristov
c974313aed Switch from using PHP_MAJOR_VERSION to separate define for
unicode. Unicode is no more, but these are "bookmarks" where
to change mysqlnd, if Unicode becomes trendy again.
2010-08-12 12:02:02 +00:00
Andrey Hristov
d27983e781 ws + cs 2010-08-12 11:38:08 +00:00
Andrey Hristov
da42d146ab Fix Request #52302 mysqli_fetch_all does not work with MYSQLI_USE_RESULT 2010-08-09 17:29:30 +00:00
Andrey Hristov
ebaee8a4d0 Lay foundations for named pipe support in mysqlnd 2010-08-09 17:01:57 +00:00
David Soria Parra
d9afaad77f make ssl_set return value in mysqlnd compatible with libmysqli return value 2010-08-06 19:47:03 +00:00
Andrey Hristov
7043949c89 Fix for Bug #51583 Bus error due to wrong alignment in mysqlnd 2010-07-15 16:57:14 +00:00
Andrey Hristov
12f8599b86 Give an error when USE_RESULT is used with fetch_all 2010-07-13 13:02:00 +00:00
Dmitry Stogov
df8bf2a2de Fixed checks for PHP_DEBUG macro 2010-07-08 07:38:59 +00:00
Andrey Hristov
ee4818a12a Two functions, which should be methods so one can catch
their output, for example
2010-06-24 19:52:13 +00:00
Andrey Hristov
baf72b7336 Fix sprintf modifiers all around the place. In most cases
%u should be used. Where size_t is used then MYSQLND_SZ_T_SPEC should be
the modifier
2010-06-21 15:32:26 +00:00
Andrey Hristov
523960892c fix valgrind warnings on 64bit, thread_is is strictly 32bit 2010-06-21 14:49:45 +00:00
Andrey Hristov
c7f10efabc Fix for bug #52115 mysqli_result::fetch_all returns null, not an empty array 2010-06-18 17:25:41 +00:00
Andrey Hristov
986e30048d missed this one in the last commit, the real type 2010-06-18 12:00:57 +00:00
Andrey Hristov
d3d7447803 fix type mismatch, this is fresh misunderstanding 2010-06-18 11:56:25 +00:00
Pierre Joye
aac1ef3815 - fix build 2010-06-17 17:09:48 +00:00
Andrey Hristov
59205a6655 split mysqlnd_connect() in two parts, one doing the authorization 2010-06-17 11:37:49 +00:00
Andrey Hristov
55f879015d no more needed because of the charset fix in the previous changeset 2010-06-16 19:01:13 +00:00
Andrey Hristov
65b1895759 Fixed bug #52082 (character_set_client & character_set_connection reset after
mysqli_change_user())

libmysql >= 5.1.23 will PASS, older library versions will fail
2010-06-14 17:16:20 +00:00
Andrey Hristov
3b2000f042 export mysqlnd_globals_id, per Johannes 2010-06-10 12:24:03 +00:00
Andrey Hristov
408d786aa2 void functions return nothing 2010-06-10 09:37:58 +00:00
Andrey Hristov
c7831cbe27 defensive programming, check before using a resource 2010-06-01 14:16:27 +00:00
Andrey Hristov
e6b4e01ce0 Perform later initialization 2010-06-01 09:47:46 +00:00
Andrey Hristov
3fe085d10b More check for valid MYSQLND_STMT before using it 2010-05-31 18:26:19 +00:00
Andrey Hristov
40e6685063 Don't reference row_packet before checking if dereferencing is possible 2010-05-31 18:18:37 +00:00
Andrey Hristov
c195dc21a2 Check if data is correct and initialize in a safe manner 2010-05-31 18:10:25 +00:00
Andrey Hristov
d02e785d68 Handle problems in the row_decoder, return type used to be void,
now it can return on problems.
2010-05-31 17:57:03 +00:00
Andrey Hristov
6ed619a351 Bail if allocation fails 2010-05-31 17:09:13 +00:00
Andrey Hristov
bdb2d71dc7 try to workaround problems with non-c99 on HPUX 2010-05-31 16:51:03 +00:00
Ulf Wendel
73a32c52d2 Updating test to reflect the latest and more verbose mysqlnd error messages, updating mysqlnd error message as well. 2010-05-31 13:56:42 +00:00
Andrey Hristov
3251e54f0f Don't use NULL pointer, always check before use 2010-05-27 12:39:12 +00:00
Andrey Hristov
ae9ac28ec2 Fix possible crashes, in case of OOM, due to half-baken
objects.
2010-05-27 12:05:02 +00:00
Andrey Hristov
95d4f2ac66 Fix crashes in the allocator in case of OOM. 2010-05-27 12:00:48 +00:00
Andrey Hristov
4de0da5a56 Fix deallocation which can crash if the object is half-baken.
Happens during OOM.
2010-05-27 08:51:46 +00:00