Andrey Hristov
4fed8a28d0
mysqlnd refactoring :
...
- move the command buffer out of the networking code to the protocol frame
codec.
2015-11-16 15:37:11 +01:00
Andrey Hristov
c24d452f60
MNDR:
...
- less dereferencing in mysqlnd_ps . Dereference stmt->conn only once and
use a stack variable. Also make the source cleaner.
2015-11-12 16:19:16 +01:00
Andrey Hristov
94ce013bff
MNDR:
...
- remove unused macros
2015-11-12 16:19:16 +01:00
Andrey Hristov
2e3fc57c5c
MNDR:
...
- move things out of mysqlnd_priv.h
2015-11-12 16:19:16 +01:00
Andrey Hristov
e8ace2d4db
MNDR:
...
- remove inclusion of uneeded headers
2015-11-12 16:19:16 +01:00
Andrey Hristov
4248240648
MNDR:
...
- move the command factory to own file - mysqlnd_commands.c
2015-11-12 16:19:16 +01:00
Andrey Hristov
2cea04165c
MNDR:
...
- move all data members from MYSQLND_PFC to MYSQLND_PFC_DATA
2015-11-12 16:19:16 +01:00
Andrey Hristov
a530ecff97
MNDR:
...
- better name for MYSQLND_PPEC - MYSQLND_PFC (protocol frame codec)
2015-11-12 16:19:16 +01:00
Andrey Hristov
654d1a7caf
MNDR:
...
- rename MYSQLND_NET to MYSQLND_PPEC (protocol packet envelope codec).
PPEC does only the encoding and decoding to the protocol frame.
2015-11-12 16:19:16 +01:00
Andrey Hristov
80d59a3a36
MNDR:
...
- intermediate step to move MYSQLND_NET from mysqlnd_vio.c to mysqlnd_wireprotocol.c
In following commits MYSQLND_NET's methods and data will be moved to MYSQLND_PROTOCOL
2015-11-12 16:19:16 +01:00
Andrey Hristov
e9f3139f43
MNDR:
...
- split MYSQLND_NET into MYSQLND_NET and MYSQLND_VIO
MYSQLND_NET is above MYSQLND_VIO. _NET takes care of protocol packet
counting (even with compressed), while VIO is just about the network
(or in case of windows, non-network, but PIPE) transport.
2015-11-12 16:19:16 +01:00
Andrey Hristov
a990573752
MNDR:
...
- some small renaming of methods
2015-11-12 16:19:16 +01:00
Andrey Hristov
0d3329fc93
MNDR:
...
- send_command and send_command_handle_response_* moved to a structure
2015-11-12 16:19:16 +01:00
Andrey Hristov
b8b1d45c3c
MNDR:
...
- move connection establishment code to own command - COM_HANDSHAKE
2015-11-12 16:19:16 +01:00
Andrey Hristov
baab519ae5
MNDR:
...
- decouple the commands from the connection. CONN ist passed now only in 1 case
2015-11-12 16:19:16 +01:00
Andrey Hristov
5abee1948e
MNDR:
...
- remove dead code
2015-11-12 16:19:16 +01:00
Andrey Hristov
71e703761f
MNDR:
...
- clean up some things
2015-11-12 16:19:16 +01:00
Andrey Hristov
e30e884e53
MNDR:
...
- move COM_INIT_DE result handling to the command
2015-11-12 16:19:16 +01:00
Andrey Hristov
fefc3045a3
MNDR:
...
- remove COM_FIELD_LIST
2015-11-12 16:19:16 +01:00
Andrey Hristov
75a1fcc724
MNDR:
...
- move handling of commands to the command itself
2015-11-12 16:19:16 +01:00
Andrey Hristov
7e6f9a84cb
MNDR:
...
- split handle_response() into handle_OK and handle_EOF
2015-11-12 16:19:16 +01:00
Andrey Hristov
aa4966d4e3
MNDR:
...
- now send_command_handle_response() also doesn't depend directly on
MYSQLND_CONN_DATA
2015-11-12 16:19:16 +01:00
Andrey Hristov
f7a445856d
MNDR:
...
- pass connection closer and its context
- remove unused parameter
2015-11-12 16:19:16 +01:00
Andrey Hristov
280c834c49
MNDR:
...
- rename the macro for updating the connection state
2015-11-12 16:19:16 +01:00
Andrey Hristov
4bb784cd0d
MNDR:
...
- make MYSQLND_ERROR_INFO a class
2015-11-12 16:19:16 +01:00
Andrey Hristov
5609eabc6f
MDNR:
...
- make MYSQLND_UPSERT_STATUS more like an object that a simple structure
Still use macros to make updates simple
2015-11-12 16:19:16 +01:00
Andrey Hristov
092afe7212
MNDR:
...
- abstract SSL enabling into COM_ENABLE_SSL
2015-11-12 16:19:16 +01:00
Andrey Hristov
10d4fb8a94
MDNR:
...
- Refactor the command factory. Let the factory be exchangeable.
2015-11-12 16:19:16 +01:00
Andrey Hristov
7d7ff67b82
MDNR:
...
- send_command() is no more, thus we need commands for all COM_STMT_*
+ CHANGE_USER
2015-11-12 16:19:16 +01:00
Andrey Hristov
cfd868651a
MDNR:
...
- removed init() method from mysqlnd_conn_data and moved the initialization
to the object factory->get_connection(). Now it is unified as with the prepared
statement which doesn't have any init() method
- the protocol decoder factory now takes connection as parameter at creation and
thus there is no need to pass the connection as parameter when calling the read
or the write method of a packet.
- saved the protocol payload decoder factory as pointer in every packet (read/write)
so the connection doesn't need to be passed on every call of read/write (dependency
has been already injected at creation). This will alow to move protocol specific
code from MYSQLND_NET (send_ex()) to make MYSQLND_NET leaner and free from protocol
stuff.
2015-11-12 16:19:16 +01:00
Andrey Hristov
75dc67c6ae
MNDR:
...
- move macro to a function
2015-11-12 16:19:16 +01:00
Andrey Hristov
34a33928d6
MNDR:
...
- Rename MYSQLND_PROTOCOL to MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY
- Rename other symbols related to MYSQLND_PROTOCOL accordingly
2015-11-12 16:19:16 +01:00
Andrey Hristov
6051a47776
MNDR
...
- Rename simple_command* to send_command
2015-11-12 16:19:16 +01:00
Andrey Hristov
003b764a49
Fix for Bug #70384 mysqli_real_query(): Unknown type 245 sent by the server
2015-09-23 18:38:29 +02:00
Andrey Hristov
f79cd18789
Fix for Bug #70384 mysqli_real_query(): Unknown type 245 sent by the server
2015-09-23 18:25:12 +02:00
Andrey Hristov
e07e4f4bb3
Fix for Bug #70384 mysqli_real_query(): Unknown type 245 sent by the server
2015-09-23 18:23:45 +02:00
Nikita Popov
8a9eee8f7e
Fix mysqlnd warnings
2015-07-17 17:48:02 +02:00
Dmitry Stogov
4a2e40bb86
Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes).
2015-06-30 04:05:24 +03:00
Dmitry Stogov
4bd22cf1c1
Improved zend_string API (Francois Laupretre)
...
Squashed commit of the following:
commit d96eab8d79
Author: Francois Laupretre <francois@tekwire.net>
Date: Fri Jun 26 01:23:31 2015 +0200
Use the new 'ZSTR' macros in the rest of the code.
Does not change anything to the generated code (thanks to compat macros) but cleaner.
commit b352643910
Author: Francois Laupretre <francois@tekwire.net>
Date: Thu Jun 25 13:45:06 2015 +0200
Improve zend_string API
Add missing methods
2015-06-29 16:44:54 +03:00
Xinchen Hui
fc33f52d8c
bump year
2015-01-15 23:27:30 +08:00
Xinchen Hui
0579e8278d
bump year
2015-01-15 23:26:37 +08:00
Stanislav Malyshev
b7a7b1a624
trailing whitespace removal
2015-01-10 15:07:38 -08:00
Nikita Popov
2d212b426a
Drop duplicate arg from hash_get_current_key_ex
2014-12-26 21:06:18 +01:00
Anatol Belski
bdeb220f48
first shot remove TSRMLS_* things
2014-12-13 23:06:14 +01:00
Johannes Schlüter
d0cb715373
s/PHP 5/PHP 7/
2014-09-19 18:33:14 +02:00
Anatol Belski
ea4ab02446
fix conditions
...
substraction from an unsigned
2014-09-14 10:24:10 +02:00
Anatol Belski
28b7a03318
master renamings phase 5
2014-08-25 21:20:44 +02:00
Anatol Belski
4d997f63d9
master renames phase 3
2014-08-25 20:22:49 +02:00
Anatol Belski
c3e3c98ec6
master renames phase 1
2014-08-25 19:24:55 +02:00
Anatol Belski
eb1871b3fb
yet trivial fixes to mysql exts
2014-08-21 09:54:40 +02:00