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
3251e54f0f
Don't use NULL pointer, always check before use
2010-05-27 12:39:12 +00:00
Andrey Hristov
0e8b380941
Don't use conn->net without checking if it is NULL, because
...
it can be NULL in OOM conditions. This would cause a crash.
2010-05-26 13:47:43 +00:00
Andrey Hristov
433cb868d6
Handle the situation when MYSQLND_PROTOCOL's methods return NULL.
...
mysqlnd should not crash but gracefully return with an error.
2010-05-25 23:18:13 +00:00
Andrey Hristov
6d434e70a4
Init should return status value because initialization can fail.
...
In this case mysqlnd_init() should return NULL to the end-user.
2010-05-25 22:40:47 +00:00
Andrey Hristov
8691786ebd
- Give possibility to overload mysqlnd_result_init().
...
- Always use conn->m->stmt_init instead of mysqlnd_stmt_init()
2010-05-14 13:18:39 +00:00
Andrey Hristov
7de2607c12
Handle gracefully OOM in mysqlnd_mempool_create and up the stack
2010-05-03 17:07:18 +00:00
Andrey Hristov
333581fcb4
Better handing of OOM in mysqlnd::set_client_option
2010-05-03 13:45:58 +00:00
Andrey Hristov
3010485d44
Handle OOM cases, in case of persistent connections this is real
...
and the Zend MM won't help.
2010-04-29 15:49:51 +00:00
Andrey Hristov
aec94a464b
Fix valgrind warning, usage of nirvana memory
2010-04-29 15:17:44 +00:00
Andrey Hristov
ac172db01f
Fix possible crashes in case of OOM, as well as a leak.
2010-04-29 13:13:41 +00:00
Andrey Hristov
4b658e3ded
Move the macro to mysqlnd_enum_n_def.h, because it can be reused
...
in other places. Also, premultiply the values by 4 and add some
reserve for future releases of the server.
2010-04-27 10:53:27 +00:00
Andrey Hristov
207a72ca0e
Fixed buffer overflow in mysqlnd_change_user
2010-04-27 08:26:24 +00:00
Andrey Hristov
6f6909e582
Fixed possible buffer overflow in mysqlnd_conn__list_fields.
2010-04-27 08:02:08 +00:00
Andrey Hristov
eda9959e36
It is possible that change user tries an user who has old password.
...
Instead of error message that doesn't say much there is more information now.
2010-04-20 18:04:24 +00:00
Felipe Pena
6d951e2ded
- Fix copyrights
2010-04-20 13:50:34 +00:00
Andrey Hristov
f40779091c
Fix some int/uint comparison warnings
2010-04-15 15:28:00 +00:00
Andrey Hristov
6f0adc06fa
more WS
2010-04-15 15:16:29 +00:00
Andrey Hristov
a9880e78c6
CS + WS changes
2010-04-15 12:55:04 +00:00
Andrey Hristov
c04f752625
Fix for bug#49234 method not found ssl_set
...
Patch was tested and compiles on Windows. (Thanks Kalle)
2010-04-15 11:01:30 +00:00
Andrey Hristov
d339672e45
Fix inconsistencies
...
- memory allocated with spprintf, or likes, outside of mysqlnd's
allocator functions should not be freed by the mysqlnd's allocator
(a wrapper around emalloc/malloc).
- memory allocated by the mysqlnd's allocator should only be freed
by it.
- add a mode to track memory usage (malloc/free)
2010-04-01 13:26:41 +00:00
Andrey Hristov
4870cac70e
Make it coupled - what is allocated with mnd_ should be freed
...
with mnd_ and vice versa.
Added mnd_pestrndup and mnd_pestrdup, which wrap the normal
calls to be able to track this calls.
Fixed some failing tests.
2010-03-29 17:04:16 +00:00
Andrey Hristov
7868bca437
Fix tests that fail when the MySQL's socket file is not /tmp/mysql.sock
...
as it is in when compiled from source and the default for mysqlnd.
SuSE for example uses /var/run/mysql/mysql.sock . Also, sql.safe_mode
(ext/mysql and ingres) needs the socket.
Fix possible crashes in mysqlnd. When packets are shorter, functions should
return error.
2010-03-26 16:58:25 +00:00
Andrey Hristov
564a1d07f8
allow persistency of PS
2010-03-12 13:03:46 +00:00
Adam Harvey
df80a01b4f
Fixed bug #51242 (Empty mysql.default_port does not default to 3306 anymore, but 0).
2010-03-09 05:08:31 +00:00
Andrey Hristov
11566524a3
Fix the text. Correct english and a bit shorter.
2010-02-24 21:16:04 +00:00
Andrey Hristov
dd57bddd53
add better description to the problem
2010-02-24 18:00:01 +00:00
Andrey Hristov
5dff8f9045
make send_close a hook, too
2010-02-09 19:05:40 +00:00
Andrey Hristov
055f558554
Pass tsrmls to all functions, which might need it in the future.
...
We are anyway breaking the internal ABI in 5.3.2 so this won't hurt
and make us prepared for the future.
2010-02-03 17:31:29 +00:00
Andrey Hristov
c42541a253
more PHPAPI for phpize-d builds
2010-01-13 18:07:02 +00:00
Andrey Hristov
a449a371a8
cosmetics. typedef-ed types should be in capital case
2010-01-11 20:10:10 +00:00
Andrey Hristov
1ea390938b
and another change to make the stats API re-usable
2010-01-11 18:27:31 +00:00
Andrey Hristov
41ead37c04
Rework the statistics macros to be reusable by external entities.
...
Rename handlers to triggers. Dynamically allocate space for the
statistics thus allow reusability.
2010-01-11 14:27:35 +00:00
Andrey Hristov
a98a67940a
improve the stats subsystem. Reduce the number of macro definitions
...
in half by smartly introducing 2 new macros. Make MYSQLND::stats a pointer
from being aggregated and add triggers.
2010-01-08 17:35:20 +00:00
Andrey Hristov
fcef58951b
add restart_psession and end_psession hooks
2010-01-08 13:47:03 +00:00
Andrey Hristov
81b0630f5a
Change of way the packet objects are created/initialised
...
If the protocol gets changed, ever, we can decide at runtime
easily which protocol to use by instantiating the right protocol
object. But this is restricted to the structure of the packets, not
the flow.
2010-01-07 19:44:59 +00:00
Andrey Hristov
d3619df322
move network creation to the init hook
2009-12-28 11:17:10 +00:00
Andrey Hristov
707e86274b
Fix double calls to free_contents if the connection cannot be
...
opened. mysqlnd have no probs, external code should not have too.
In any case, double call is not needed.
2009-12-22 17:44:42 +00:00
Andrey Hristov
e695a83c66
move state setting to the right place, in mysqlnd_init, no more
...
in mysqlnd::connect
2009-12-22 17:31:31 +00:00
Andrey Hristov
857e83a249
remove duplicated code
2009-12-15 17:39:30 +00:00
Andrey Hristov
1fc65ed8bb
Move code out of mysqlnd_conn::connect to mysqlnd_net::connect.
...
Thus mysqlnd_conn::connect() does less of what it should not do - think
about the transport level.
2009-12-15 17:33:06 +00:00
Andrey Hristov
a5640ede09
export this function
2009-12-15 14:26:24 +00:00
Andrey Hristov
e6e40722d9
refactor: move code that belongs to MYSQLND_NET out of MYSQLND
2009-12-15 13:13:51 +00:00
Andrey Hristov
b1d4cea57e
Make MYSQLND_NET dynamically allocated structure with allocator
...
and deallocator. More member functions will come.
2009-12-11 11:58:57 +00:00
Andrey Hristov
fd0d9822d8
remove stale comment
2009-12-11 10:21:34 +00:00
Andrey Hristov
2cc95115f3
Move two functions which are used in the extension as methods of
...
the connection. Two functions less in the global namespace.
2009-12-11 10:18:00 +00:00
Andrey Hristov
3a7f8ea575
Remove stub code which never actually was used for anything.
...
Things like this can be built on top of the core.
2009-12-09 20:38:11 +00:00
Andrey Hristov
fd44827701
Remove the zval caching from mysqlnd. It was disabled versions ago
...
due to problems on windows, which were not debugged. Better have
code that is disabled not in the core.
2009-12-09 20:21:05 +00:00