From 34a33928d649c69859c6b368f5fa35a8d37d7b2c Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Fri, 2 Oct 2015 15:30:53 +0200 Subject: MNDR: - Rename MYSQLND_PROTOCOL to MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY - Rename other symbols related to MYSQLND_PROTOCOL accordingly --- ext/mysqlnd/mysqlnd_ext_plugin.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index ec88c29ced..44ded51cf7 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -110,14 +110,14 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_result_buffered_data_c(const MYSQLND_R /* {{{ _mysqlnd_plugin_get_plugin_protocol_data */ PHPAPI void ** -_mysqlnd_plugin_get_plugin_protocol_data(const MYSQLND_PROTOCOL * protocol, unsigned int plugin_id) +_mysqlnd_plugin_get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * factory, unsigned int plugin_id) { DBG_ENTER("_mysqlnd_plugin_get_plugin_protocol_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); - if (!protocol || plugin_id >= mysqlnd_plugin_count()) { + if (!factory || plugin_id >= mysqlnd_plugin_count()) { return NULL; } - DBG_RETURN((void *)((char *)protocol + sizeof(MYSQLND_PROTOCOL) + plugin_id * sizeof(void *))); + DBG_RETURN((void *)((char *)factory + sizeof(MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY) + plugin_id * sizeof(void *))); } /* }}} */ @@ -253,20 +253,20 @@ mysqlnd_stmt_set_methods(struct st_mysqlnd_stmt_methods *methods) /* }}} */ -/* {{{ mysqlnd_protocol_get_methods */ -PHPAPI struct st_mysqlnd_protocol_methods * -mysqlnd_protocol_get_methods() +/* {{{ mysqlnd_protocol_payload_decoder_factory_get_methods */ +PHPAPI struct st_mysqlnd_protocol_payload_decoder_factory_methods * +mysqlnd_protocol_payload_decoder_factory_get_methods() { - return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol); + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory); } /* }}} */ -/* {{{ mysqlnd_protocol_set_methods */ +/* {{{ mysqlnd_protocol_payload_decoder_factory_set_methods */ PHPAPI void -mysqlnd_protocol_set_methods(struct st_mysqlnd_protocol_methods * methods) +mysqlnd_protocol_payload_decoder_factory_set_methods(struct st_mysqlnd_protocol_payload_decoder_factory_methods * methods) { - MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol) = *methods; + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory) = *methods; } /* }}} */ -- cgit v1.2.1 From cfd868651a321fbfd84ed98e33669c5f94a7098a Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Mon, 12 Oct 2015 14:57:48 +0200 Subject: 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. --- ext/mysqlnd/mysqlnd_ext_plugin.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 44ded51cf7..1ba0b85f48 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -148,6 +148,21 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_net_data(const MYSQLND_NET * net, unsi /* }}} */ +/* {{{ mysqlnd_conn_get_methods */ +PHPAPI struct st_mysqlnd_object_factory_methods * +mysqlnd_object_factory_get_methods() +{ + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory); +} +/* }}} */ + +/* {{{ mysqlnd_conn_set_methods */ +PHPAPI void mysqlnd_object_factory_set_methods(struct st_mysqlnd_object_factory_methods *methods) +{ + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory) = *methods; +} +/* }}} */ + /* {{{ mysqlnd_conn_get_methods */ PHPAPI struct st_mysqlnd_conn_methods * -- cgit v1.2.1 From ab961ca3476515ac5d9c56f58f315afef16335b2 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Mon, 12 Oct 2015 20:11:10 +0200 Subject: MNDR: - remove export of functions and have things exported thru an interface with default implementation --- ext/mysqlnd/mysqlnd_ext_plugin.c | 226 +++++++++++++++++++++++++-------------- 1 file changed, 145 insertions(+), 81 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 1ba0b85f48..a4d4c09474 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -24,16 +24,17 @@ #include "mysqlnd_priv.h" #include "mysqlnd_result.h" #include "mysqlnd_debug.h" +#include "mysqlnd_ext_plugin.h" static struct st_mysqlnd_conn_methods * mysqlnd_conn_methods; static struct st_mysqlnd_conn_data_methods * mysqlnd_conn_data_methods; static struct st_mysqlnd_stmt_methods * mysqlnd_stmt_methods; -/* {{{ _mysqlnd_plugin_get_plugin_connection_data */ -PHPAPI void ** -_mysqlnd_plugin_get_plugin_connection_data(const MYSQLND * conn, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_connection_data */ +static void ** +mysqlnd_plugin__get_plugin_connection_data(const MYSQLND * conn, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_connection_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_connection_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!conn || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -43,11 +44,11 @@ _mysqlnd_plugin_get_plugin_connection_data(const MYSQLND * conn, unsigned int pl /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_connection_data_data */ -PHPAPI void ** -_mysqlnd_plugin_get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_connection_data_data */ +static void ** +mysqlnd_plugin__get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_connection_data_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_connection_data_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!conn || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -57,10 +58,11 @@ _mysqlnd_plugin_get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_result_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_result_data(const MYSQLND_RES * result, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_result_data */ +static void ** +mysqlnd_plugin__get_plugin_result_data(const MYSQLND_RES * result, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_result_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!result || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -70,10 +72,11 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_result_data(const MYSQLND_RES * result /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_result_unbuffered_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_result_unbuffered_data(const MYSQLND_RES_UNBUFFERED * result, unsigned int plugin_id) +/* {{{ _mysqlnd_plugin__get_plugin_result_unbuffered_data */ +static void ** +mysqlnd_plugin__get_plugin_result_unbuffered_data(const MYSQLND_RES_UNBUFFERED * result, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_result_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!result || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -83,10 +86,11 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_result_unbuffered_data(const MYSQLND_R /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_result_buffered_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_result_buffered_data_zval(const MYSQLND_RES_BUFFERED_ZVAL * result, unsigned int plugin_id) +/* {{{ _mysqlnd_plugin__get_plugin_result_buffered_data */ +static void ** +mysqlnd_plugin__get_plugin_result_buffered_data_zval(const MYSQLND_RES_BUFFERED_ZVAL * result, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_result_data"); + DBG_ENTER("_mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!result || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -95,10 +99,11 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_result_buffered_data_zval(const MYSQLN } /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_result_buffered_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_result_buffered_data_c(const MYSQLND_RES_BUFFERED_C * result, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_result_buffered_data */ +static void ** +mysqlnd_plugin__get_plugin_result_buffered_data_c(const MYSQLND_RES_BUFFERED_C * result, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_result_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!result || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -108,11 +113,11 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_result_buffered_data_c(const MYSQLND_R /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_protocol_data */ -PHPAPI void ** -_mysqlnd_plugin_get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * factory, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_protocol_data */ +static void ** +mysqlnd_plugin__get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * factory, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_protocol_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_protocol_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!factory || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -122,10 +127,11 @@ _mysqlnd_plugin_get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_ /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_stmt_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_stmt_data */ +static void ** +mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_stmt_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_stmt_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!stmt || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -135,10 +141,11 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_stmt_data(const MYSQLND_STMT * stmt, u /* }}} */ -/* {{{ _mysqlnd_plugin_get_plugin_net_data */ -PHPAPI void ** _mysqlnd_plugin_get_plugin_net_data(const MYSQLND_NET * net, unsigned int plugin_id) +/* {{{ mysqlnd_plugin__get_plugin_net_data */ +static void ** +mysqlnd_plugin__get_plugin_net_data(const MYSQLND_NET * net, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin_get_plugin_net_data"); + DBG_ENTER("_mysqlnd_plugin__get_plugin_net_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!net || plugin_id >= mysqlnd_plugin_count()) { return NULL; @@ -147,163 +154,220 @@ PHPAPI void ** _mysqlnd_plugin_get_plugin_net_data(const MYSQLND_NET * net, unsi } /* }}} */ - -/* {{{ mysqlnd_conn_get_methods */ -PHPAPI struct st_mysqlnd_object_factory_methods * -mysqlnd_object_factory_get_methods() +struct st_mysqlnd_plugin__plugin_area_getters mysqlnd_plugin_area_getters = +{ + mysqlnd_plugin__get_plugin_connection_data, + mysqlnd_plugin__get_plugin_connection_data_data, + mysqlnd_plugin__get_plugin_result_data, + mysqlnd_plugin__get_plugin_result_unbuffered_data, + mysqlnd_plugin__get_plugin_result_buffered_data_zval, + mysqlnd_plugin__get_plugin_result_buffered_data_c, + mysqlnd_plugin__get_plugin_stmt_data, + mysqlnd_plugin__get_plugin_protocol_data, + mysqlnd_plugin__get_plugin_net_data, +}; + + + +/* {{{ _mysqlnd_object_factory_get_methods */ +static struct st_mysqlnd_object_factory_methods * +_mysqlnd_object_factory_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory); } /* }}} */ /* {{{ mysqlnd_conn_set_methods */ -PHPAPI void mysqlnd_object_factory_set_methods(struct st_mysqlnd_object_factory_methods *methods) +static void +_mysqlnd_object_factory_set_methods(struct st_mysqlnd_object_factory_methods *methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory) = *methods; } /* }}} */ -/* {{{ mysqlnd_conn_get_methods */ -PHPAPI struct st_mysqlnd_conn_methods * -mysqlnd_conn_get_methods() +/* {{{ _mysqlnd_conn_get_methods */ +static struct st_mysqlnd_conn_methods * +_mysqlnd_conn_get_methods() { return mysqlnd_conn_methods; } /* }}} */ -/* {{{ mysqlnd_conn_set_methods */ -PHPAPI void mysqlnd_conn_set_methods(struct st_mysqlnd_conn_methods *methods) +/* {{{ _mysqlnd_conn_set_methods */ +static void +_mysqlnd_conn_set_methods(struct st_mysqlnd_conn_methods *methods) { mysqlnd_conn_methods = methods; } /* }}} */ -/* {{{ mysqlnd_conn_get_methods */ -PHPAPI struct st_mysqlnd_conn_data_methods * -mysqlnd_conn_data_get_methods() +/* {{{ _mysqlnd_conn_data_get_methods */ +static struct st_mysqlnd_conn_data_methods * +_mysqlnd_conn_data_get_methods() { return mysqlnd_conn_data_methods; } /* }}} */ -/* {{{ mysqlnd_conn_set_methods */ -PHPAPI void mysqlnd_conn_data_set_methods(struct st_mysqlnd_conn_data_methods * methods) +/* {{{ _mysqlnd_conn_data_set_methods */ +static void +_mysqlnd_conn_data_set_methods(struct st_mysqlnd_conn_data_methods * methods) { mysqlnd_conn_data_methods = methods; } /* }}} */ -/* {{{ mysqlnd_result_get_methods */ -PHPAPI struct st_mysqlnd_res_methods * -mysqlnd_result_get_methods() +/* {{{ _mysqlnd_result_get_methods */ +static struct st_mysqlnd_res_methods * +_mysqlnd_result_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_res); } /* }}} */ -/* {{{ mysqlnd_result_set_methods */ -PHPAPI void -mysqlnd_result_set_methods(struct st_mysqlnd_res_methods * methods) +/* {{{ _mysqlnd_result_set_methods */ +static void +_mysqlnd_result_set_methods(struct st_mysqlnd_res_methods * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_res) = *methods; } /* }}} */ -/* {{{ mysqlnd_result_unbuffered_get_methods */ -PHPAPI struct st_mysqlnd_result_unbuffered_methods * -mysqlnd_result_unbuffered_get_methods() +/* {{{ _mysqlnd_result_unbuffered_get_methods */ +static struct st_mysqlnd_result_unbuffered_methods * +_mysqlnd_result_unbuffered_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_unbuffered); } /* }}} */ -/* {{{ mysqlnd_result_unbuffered_set_methods */ -PHPAPI void -mysqlnd_result_unbuffered_set_methods(struct st_mysqlnd_result_unbuffered_methods * methods) +/* {{{ _mysqlnd_result_unbuffered_set_methods */ +static void +_mysqlnd_result_unbuffered_set_methods(struct st_mysqlnd_result_unbuffered_methods * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_unbuffered) = *methods; } /* }}} */ -/* {{{ mysqlnd_result_buffered_get_methods */ -PHPAPI struct st_mysqlnd_result_buffered_methods * -mysqlnd_result_buffered_get_methods() +/* {{{ _mysqlnd_result_buffered_get_methods */ +static struct st_mysqlnd_result_buffered_methods * +_mysqlnd_result_buffered_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_buffered); } /* }}} */ -/* {{{ mysqlnd_result_buffered_set_methods */ -PHPAPI void -mysqlnd_result_buffered_set_methods(struct st_mysqlnd_result_buffered_methods * methods) +/* {{{ _mysqlnd_result_buffered_set_methods */ +static void +_mysqlnd_result_buffered_set_methods(struct st_mysqlnd_result_buffered_methods * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_buffered) = *methods; } /* }}} */ -/* {{{ mysqlnd_stmt_get_methods */ -PHPAPI struct st_mysqlnd_stmt_methods * -mysqlnd_stmt_get_methods() +/* {{{ _mysqlnd_stmt_get_methods */ +static struct st_mysqlnd_stmt_methods * +_mysqlnd_stmt_get_methods() { return mysqlnd_stmt_methods; } /* }}} */ -/* {{{ mysqlnd_stmt_set_methods */ -PHPAPI void -mysqlnd_stmt_set_methods(struct st_mysqlnd_stmt_methods *methods) +/* {{{ _mysqlnd_stmt_set_methods */ +static void +_mysqlnd_stmt_set_methods(struct st_mysqlnd_stmt_methods *methods) { mysqlnd_stmt_methods = methods; } /* }}} */ -/* {{{ mysqlnd_protocol_payload_decoder_factory_get_methods */ -PHPAPI struct st_mysqlnd_protocol_payload_decoder_factory_methods * -mysqlnd_protocol_payload_decoder_factory_get_methods() +/* {{{ _mysqlnd_protocol_payload_decoder_factory_get_methods */ +static struct st_mysqlnd_protocol_payload_decoder_factory_methods * +_mysqlnd_protocol_payload_decoder_factory_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory); } /* }}} */ -/* {{{ mysqlnd_protocol_payload_decoder_factory_set_methods */ -PHPAPI void -mysqlnd_protocol_payload_decoder_factory_set_methods(struct st_mysqlnd_protocol_payload_decoder_factory_methods * methods) +/* {{{ _mysqlnd_protocol_payload_decoder_factory_set_methods */ +static void +_mysqlnd_protocol_payload_decoder_factory_set_methods(struct st_mysqlnd_protocol_payload_decoder_factory_methods * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory) = *methods; } /* }}} */ -/* {{{ mysqlnd_net_get_methods */ -PHPAPI struct st_mysqlnd_net_methods * -mysqlnd_net_get_methods() +/* {{{ _mysqlnd_net_get_methods */ +static struct st_mysqlnd_net_methods * +_mysqlnd_net_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net); } /* }}} */ -/* {{{ mysqlnd_net_set_methods */ -PHPAPI void -mysqlnd_net_set_methods(struct st_mysqlnd_net_methods * methods) +/* {{{ _mysqlnd_net_set_methods */ +static void +_mysqlnd_net_set_methods(struct st_mysqlnd_net_methods * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net) = *methods; } /* }}} */ +struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = +{ + { + _mysqlnd_object_factory_get_methods, + _mysqlnd_object_factory_set_methods + }, + { + _mysqlnd_conn_get_methods, + _mysqlnd_conn_set_methods, + }, + { + _mysqlnd_conn_data_get_methods, + _mysqlnd_conn_data_set_methods, + }, + { + _mysqlnd_result_get_methods, + _mysqlnd_result_set_methods, + }, + { + _mysqlnd_result_unbuffered_get_methods, + _mysqlnd_result_unbuffered_set_methods, + }, + { + _mysqlnd_result_buffered_get_methods, + _mysqlnd_result_buffered_set_methods, + }, + { + _mysqlnd_stmt_get_methods, + _mysqlnd_stmt_set_methods, + }, + { + _mysqlnd_protocol_payload_decoder_factory_get_methods, + _mysqlnd_protocol_payload_decoder_factory_set_methods, + }, + { + _mysqlnd_net_get_methods, + _mysqlnd_net_set_methods + }, +}; + /* * Local variables: * tab-width: 4 -- cgit v1.2.1 From c33d3b6e5b3a6f91c740b4677528d1848fd8e574 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 13 Oct 2015 12:46:48 +0200 Subject: MDNR: - remove dead code --- ext/mysqlnd/mysqlnd_ext_plugin.c | 1 - 1 file changed, 1 deletion(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index a4d4c09474..b8909d4126 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -14,7 +14,6 @@ +----------------------------------------------------------------------+ | Authors: Andrey Hristov | | Ulf Wendel | - | Georg Richter | +----------------------------------------------------------------------+ */ -- cgit v1.2.1 From 10d4fb8a9428d2b84ac6093bb3987ef667916fd4 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Mon, 19 Oct 2015 18:20:28 +0200 Subject: MDNR: - Refactor the command factory. Let the factory be exchangeable. --- ext/mysqlnd/mysqlnd_ext_plugin.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index b8909d4126..52ca9055b8 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -327,6 +327,25 @@ _mysqlnd_net_set_methods(struct st_mysqlnd_net_methods * methods) /* }}} */ +/* {{{ mysqlnd_command_factory_get */ +static func_mysqlnd__command_factory +_mysqlnd_command_factory_get() +{ + return mysqlnd_command_factory; +} +/* }}} */ + + +/* {{{ mysqlnd_command_factory_set */ +static void +_mysqlnd_command_factory_set(func_mysqlnd__command_factory factory) +{ + mysqlnd_command_factory = factory; +} +/* }}} */ + + + struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = { { @@ -363,7 +382,11 @@ struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = }, { _mysqlnd_net_get_methods, - _mysqlnd_net_set_methods + _mysqlnd_net_set_methods, + }, + { + _mysqlnd_command_factory_get, + _mysqlnd_command_factory_set, }, }; -- cgit v1.2.1 From e9bccffe295794a40af111eae98d589f9e218598 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Fri, 30 Oct 2015 13:20:53 +0100 Subject: MNDR: - switch to macro generation of structure names for the methods --- ext/mysqlnd/mysqlnd_ext_plugin.c | 57 +++++++++++++++++++++++++++------------- 1 file changed, 39 insertions(+), 18 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 52ca9055b8..8048a2a67e 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -169,7 +169,7 @@ struct st_mysqlnd_plugin__plugin_area_getters mysqlnd_plugin_area_getters = /* {{{ _mysqlnd_object_factory_get_methods */ -static struct st_mysqlnd_object_factory_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) * _mysqlnd_object_factory_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory); @@ -178,7 +178,7 @@ _mysqlnd_object_factory_get_methods() /* {{{ mysqlnd_conn_set_methods */ static void -_mysqlnd_object_factory_set_methods(struct st_mysqlnd_object_factory_methods *methods) +_mysqlnd_object_factory_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) *methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_object_factory) = *methods; } @@ -186,7 +186,7 @@ _mysqlnd_object_factory_set_methods(struct st_mysqlnd_object_factory_methods *me /* {{{ _mysqlnd_conn_get_methods */ -static struct st_mysqlnd_conn_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn) * _mysqlnd_conn_get_methods() { return mysqlnd_conn_methods; @@ -195,7 +195,7 @@ _mysqlnd_conn_get_methods() /* {{{ _mysqlnd_conn_set_methods */ static void -_mysqlnd_conn_set_methods(struct st_mysqlnd_conn_methods *methods) +_mysqlnd_conn_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn) *methods) { mysqlnd_conn_methods = methods; } @@ -203,7 +203,7 @@ _mysqlnd_conn_set_methods(struct st_mysqlnd_conn_methods *methods) /* {{{ _mysqlnd_conn_data_get_methods */ -static struct st_mysqlnd_conn_data_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn_data) * _mysqlnd_conn_data_get_methods() { return mysqlnd_conn_data_methods; @@ -212,7 +212,7 @@ _mysqlnd_conn_data_get_methods() /* {{{ _mysqlnd_conn_data_set_methods */ static void -_mysqlnd_conn_data_set_methods(struct st_mysqlnd_conn_data_methods * methods) +_mysqlnd_conn_data_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn_data) * methods) { mysqlnd_conn_data_methods = methods; } @@ -220,7 +220,7 @@ _mysqlnd_conn_data_set_methods(struct st_mysqlnd_conn_data_methods * methods) /* {{{ _mysqlnd_result_get_methods */ -static struct st_mysqlnd_res_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_res) * _mysqlnd_result_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_res); @@ -230,7 +230,7 @@ _mysqlnd_result_get_methods() /* {{{ _mysqlnd_result_set_methods */ static void -_mysqlnd_result_set_methods(struct st_mysqlnd_res_methods * methods) +_mysqlnd_result_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_res) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_res) = *methods; } @@ -238,7 +238,7 @@ _mysqlnd_result_set_methods(struct st_mysqlnd_res_methods * methods) /* {{{ _mysqlnd_result_unbuffered_get_methods */ -static struct st_mysqlnd_result_unbuffered_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_unbuffered) * _mysqlnd_result_unbuffered_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_unbuffered); @@ -248,7 +248,7 @@ _mysqlnd_result_unbuffered_get_methods() /* {{{ _mysqlnd_result_unbuffered_set_methods */ static void -_mysqlnd_result_unbuffered_set_methods(struct st_mysqlnd_result_unbuffered_methods * methods) +_mysqlnd_result_unbuffered_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_unbuffered) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_unbuffered) = *methods; } @@ -256,7 +256,7 @@ _mysqlnd_result_unbuffered_set_methods(struct st_mysqlnd_result_unbuffered_metho /* {{{ _mysqlnd_result_buffered_get_methods */ -static struct st_mysqlnd_result_buffered_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_buffered) * _mysqlnd_result_buffered_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_buffered); @@ -266,7 +266,7 @@ _mysqlnd_result_buffered_get_methods() /* {{{ _mysqlnd_result_buffered_set_methods */ static void -_mysqlnd_result_buffered_set_methods(struct st_mysqlnd_result_buffered_methods * methods) +_mysqlnd_result_buffered_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_buffered) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_result_buffered) = *methods; } @@ -274,7 +274,7 @@ _mysqlnd_result_buffered_set_methods(struct st_mysqlnd_result_buffered_methods * /* {{{ _mysqlnd_stmt_get_methods */ -static struct st_mysqlnd_stmt_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_stmt) * _mysqlnd_stmt_get_methods() { return mysqlnd_stmt_methods; @@ -284,7 +284,7 @@ _mysqlnd_stmt_get_methods() /* {{{ _mysqlnd_stmt_set_methods */ static void -_mysqlnd_stmt_set_methods(struct st_mysqlnd_stmt_methods *methods) +_mysqlnd_stmt_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_stmt) *methods) { mysqlnd_stmt_methods = methods; } @@ -292,7 +292,7 @@ _mysqlnd_stmt_set_methods(struct st_mysqlnd_stmt_methods *methods) /* {{{ _mysqlnd_protocol_payload_decoder_factory_get_methods */ -static struct st_mysqlnd_protocol_payload_decoder_factory_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_payload_decoder_factory) * _mysqlnd_protocol_payload_decoder_factory_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory); @@ -302,7 +302,7 @@ _mysqlnd_protocol_payload_decoder_factory_get_methods() /* {{{ _mysqlnd_protocol_payload_decoder_factory_set_methods */ static void -_mysqlnd_protocol_payload_decoder_factory_set_methods(struct st_mysqlnd_protocol_payload_decoder_factory_methods * methods) +_mysqlnd_protocol_payload_decoder_factory_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_payload_decoder_factory) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_payload_decoder_factory) = *methods; } @@ -310,7 +310,7 @@ _mysqlnd_protocol_payload_decoder_factory_set_methods(struct st_mysqlnd_protocol /* {{{ _mysqlnd_net_get_methods */ -static struct st_mysqlnd_net_methods * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_net) * _mysqlnd_net_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net); @@ -320,7 +320,7 @@ _mysqlnd_net_get_methods() /* {{{ _mysqlnd_net_set_methods */ static void -_mysqlnd_net_set_methods(struct st_mysqlnd_net_methods * methods) +_mysqlnd_net_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_net) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net) = *methods; } @@ -345,6 +345,23 @@ _mysqlnd_command_factory_set(func_mysqlnd__command_factory factory) /* }}} */ +/* {{{ _mysqlnd_error_info_get_methods */ +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_error_info) * +_mysqlnd_error_info_get_methods() +{ + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_error_info); +} +/* }}} */ + + +/* {{{ _mysqlnd_error_info_set_methods */ +static void +_mysqlnd_error_info_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_error_info) *methods) +{ + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_error_info) = *methods; +} +/* }}} */ + struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = { @@ -384,6 +401,10 @@ struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = _mysqlnd_net_get_methods, _mysqlnd_net_set_methods, }, + { + _mysqlnd_error_info_get_methods, + _mysqlnd_error_info_set_methods, + }, { _mysqlnd_command_factory_get, _mysqlnd_command_factory_set, -- cgit v1.2.1 From e9f3139f438ef712d82b69984a65da4230fdfeb2 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Mon, 9 Nov 2015 14:56:16 +0100 Subject: 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. --- ext/mysqlnd/mysqlnd_ext_plugin.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 8048a2a67e..76d51bcc18 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -327,6 +327,24 @@ _mysqlnd_net_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_net) * methods) /* }}} */ +/* {{{ _mysqlnd_vio_get_methods */ +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_vio) * +_mysqlnd_vio_get_methods() +{ + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_vio); +} +/* }}} */ + + +/* {{{ _mysqlnd_vio_set_methods */ +static void +_mysqlnd_vio_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_vio) * methods) +{ + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_vio) = *methods; +} +/* }}} */ + + /* {{{ mysqlnd_command_factory_get */ static func_mysqlnd__command_factory _mysqlnd_command_factory_get() @@ -401,6 +419,10 @@ struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = _mysqlnd_net_get_methods, _mysqlnd_net_set_methods, }, + { + _mysqlnd_vio_get_methods, + _mysqlnd_vio_set_methods, + }, { _mysqlnd_error_info_get_methods, _mysqlnd_error_info_set_methods, -- cgit v1.2.1 From 654d1a7caf068c67560fd49c86cf6f6354322d6f Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 10 Nov 2015 11:02:33 +0100 Subject: MNDR: - rename MYSQLND_NET to MYSQLND_PPEC (protocol packet envelope codec). PPEC does only the encoding and decoding to the protocol frame. --- ext/mysqlnd/mysqlnd_ext_plugin.c | 45 ++++++++++++++++++++++++++-------------- 1 file changed, 30 insertions(+), 15 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 76d51bcc18..fe08c1d2c1 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -140,16 +140,30 @@ mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plu /* }}} */ -/* {{{ mysqlnd_plugin__get_plugin_net_data */ +/* {{{ mysqlnd_plugin__get_plugin_ppec_data */ static void ** -mysqlnd_plugin__get_plugin_net_data(const MYSQLND_NET * net, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_ppec_data(const MYSQLND_PPEC * ppec, unsigned int plugin_id) { - DBG_ENTER("_mysqlnd_plugin__get_plugin_net_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_ppec_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); - if (!net || plugin_id >= mysqlnd_plugin_count()) { + if (!ppec || plugin_id >= mysqlnd_plugin_count()) { return NULL; } - DBG_RETURN((void *)((char *)net + sizeof(MYSQLND_NET) + plugin_id * sizeof(void *))); + DBG_RETURN((void *)((char *)ppec + sizeof(MYSQLND_PPEC) + plugin_id * sizeof(void *))); +} +/* }}} */ + + +/* {{{ _mysqlnd_plugin__get_plugin_vio_data */ +static void ** +mysqlnd_plugin__get_plugin_vio_data(const MYSQLND_VIO * vio, unsigned int plugin_id) +{ + DBG_ENTER("_mysqlnd_plugin__get_plugin_vio_data"); + DBG_INF_FMT("plugin_id=%u", plugin_id); + if (!vio || plugin_id >= mysqlnd_plugin_count()) { + return NULL; + } + DBG_RETURN((void *)((char *)vio + sizeof(MYSQLND_VIO) + plugin_id * sizeof(void *))); } /* }}} */ @@ -163,7 +177,8 @@ struct st_mysqlnd_plugin__plugin_area_getters mysqlnd_plugin_area_getters = mysqlnd_plugin__get_plugin_result_buffered_data_c, mysqlnd_plugin__get_plugin_stmt_data, mysqlnd_plugin__get_plugin_protocol_data, - mysqlnd_plugin__get_plugin_net_data, + mysqlnd_plugin__get_plugin_ppec_data, + mysqlnd_plugin__get_plugin_vio_data, }; @@ -309,20 +324,20 @@ _mysqlnd_protocol_payload_decoder_factory_set_methods(MYSQLND_CLASS_METHODS_TYPE /* }}} */ -/* {{{ _mysqlnd_net_get_methods */ -static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_net) * -_mysqlnd_net_get_methods() +/* {{{ _mysqlnd_ppec_get_methods */ +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * +_mysqlnd_ppec_get_methods() { - return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net); + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec); } /* }}} */ -/* {{{ _mysqlnd_net_set_methods */ +/* {{{ _mysqlnd_ppec_set_methods */ static void -_mysqlnd_net_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_net) * methods) +_mysqlnd_ppec_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * methods) { - MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_net) = *methods; + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec) = *methods; } /* }}} */ @@ -416,8 +431,8 @@ struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = _mysqlnd_protocol_payload_decoder_factory_set_methods, }, { - _mysqlnd_net_get_methods, - _mysqlnd_net_set_methods, + _mysqlnd_ppec_get_methods, + _mysqlnd_ppec_set_methods, }, { _mysqlnd_vio_get_methods, -- cgit v1.2.1 From a530ecff978cbf2e67a774cae40899d3934c163a Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 10 Nov 2015 11:53:19 +0100 Subject: MNDR: - better name for MYSQLND_PPEC - MYSQLND_PFC (protocol frame codec) --- ext/mysqlnd/mysqlnd_ext_plugin.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index fe08c1d2c1..6a6627bc47 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -16,8 +16,6 @@ | Ulf Wendel | +----------------------------------------------------------------------+ */ - -/* $Id: mysqlnd.c 318221 2011-10-19 15:04:12Z andrey $ */ #include "php.h" #include "mysqlnd.h" #include "mysqlnd_priv.h" @@ -142,14 +140,14 @@ mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plu /* {{{ mysqlnd_plugin__get_plugin_ppec_data */ static void ** -mysqlnd_plugin__get_plugin_ppec_data(const MYSQLND_PPEC * ppec, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_ppec_data(const MYSQLND_PFC * ppec, unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_ppec_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); if (!ppec || plugin_id >= mysqlnd_plugin_count()) { return NULL; } - DBG_RETURN((void *)((char *)ppec + sizeof(MYSQLND_PPEC) + plugin_id * sizeof(void *))); + DBG_RETURN((void *)((char *)ppec + sizeof(MYSQLND_PFC) + plugin_id * sizeof(void *))); } /* }}} */ @@ -324,18 +322,18 @@ _mysqlnd_protocol_payload_decoder_factory_set_methods(MYSQLND_CLASS_METHODS_TYPE /* }}} */ -/* {{{ _mysqlnd_ppec_get_methods */ +/* {{{ _mysqlnd_pfc_get_methods */ static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * -_mysqlnd_ppec_get_methods() +_mysqlnd_pfc_get_methods() { return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec); } /* }}} */ -/* {{{ _mysqlnd_ppec_set_methods */ +/* {{{ _mysqlnd_pfc_set_methods */ static void -_mysqlnd_ppec_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * methods) +_mysqlnd_pfc_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * methods) { MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec) = *methods; } @@ -431,8 +429,8 @@ struct st_mysqlnd_plugin_methods_xetters mysqlnd_plugin_methods_xetters = _mysqlnd_protocol_payload_decoder_factory_set_methods, }, { - _mysqlnd_ppec_get_methods, - _mysqlnd_ppec_set_methods, + _mysqlnd_pfc_get_methods, + _mysqlnd_pfc_set_methods, }, { _mysqlnd_vio_get_methods, -- cgit v1.2.1 From 4248240648810fedf5d421f28a4f35936104657c Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 10 Nov 2015 13:14:39 +0100 Subject: MNDR: - move the command factory to own file - mysqlnd_commands.c --- ext/mysqlnd/mysqlnd_ext_plugin.c | 1 + 1 file changed, 1 insertion(+) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 6a6627bc47..d375dafcd8 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -21,6 +21,7 @@ #include "mysqlnd_priv.h" #include "mysqlnd_result.h" #include "mysqlnd_debug.h" +#include "mysqlnd_commands.h" #include "mysqlnd_ext_plugin.h" static struct st_mysqlnd_conn_methods * mysqlnd_conn_methods; -- cgit v1.2.1 From fae994fed9d7e74f3688f4860839a2ce0b2f71e3 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 17 Nov 2015 13:28:47 +0100 Subject: Bring consistency to the class by renaming the methods too (from the old temporary name) --- ext/mysqlnd/mysqlnd_ext_plugin.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index d375dafcd8..78719486f9 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -324,19 +324,19 @@ _mysqlnd_protocol_payload_decoder_factory_set_methods(MYSQLND_CLASS_METHODS_TYPE /* {{{ _mysqlnd_pfc_get_methods */ -static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * +static MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_frame_codec) * _mysqlnd_pfc_get_methods() { - return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec); + return &MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_frame_codec); } /* }}} */ /* {{{ _mysqlnd_pfc_set_methods */ static void -_mysqlnd_pfc_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_envelope_codec) * methods) +_mysqlnd_pfc_set_methods(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_frame_codec) * methods) { - MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_envelope_codec) = *methods; + MYSQLND_CLASS_METHOD_TABLE_NAME(mysqlnd_protocol_packet_frame_codec) = *methods; } /* }}} */ -- cgit v1.2.1 From 43bfbd86d9ff726acddcee2aa3f4a54acc0a6a45 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 17 Nov 2015 14:40:03 +0100 Subject: Rename from previous acronym (ppec became pfc) --- ext/mysqlnd/mysqlnd_ext_plugin.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index 78719486f9..d739e5ed37 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -139,16 +139,16 @@ mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plu /* }}} */ -/* {{{ mysqlnd_plugin__get_plugin_ppec_data */ +/* {{{ mysqlnd_plugin__get_plugin_pfc_data */ static void ** -mysqlnd_plugin__get_plugin_ppec_data(const MYSQLND_PFC * ppec, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_pfc_data(const MYSQLND_PFC * pfc, unsigned int plugin_id) { - DBG_ENTER("mysqlnd_plugin__get_plugin_ppec_data"); + DBG_ENTER("mysqlnd_plugin__get_plugin_pfc_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); - if (!ppec || plugin_id >= mysqlnd_plugin_count()) { + if (!pfc || plugin_id >= mysqlnd_plugin_count()) { return NULL; } - DBG_RETURN((void *)((char *)ppec + sizeof(MYSQLND_PFC) + plugin_id * sizeof(void *))); + DBG_RETURN((void *)((char *)pfc + sizeof(MYSQLND_PFC) + plugin_id * sizeof(void *))); } /* }}} */ @@ -176,7 +176,7 @@ struct st_mysqlnd_plugin__plugin_area_getters mysqlnd_plugin_area_getters = mysqlnd_plugin__get_plugin_result_buffered_data_c, mysqlnd_plugin__get_plugin_stmt_data, mysqlnd_plugin__get_plugin_protocol_data, - mysqlnd_plugin__get_plugin_ppec_data, + mysqlnd_plugin__get_plugin_pfc_data, mysqlnd_plugin__get_plugin_vio_data, }; -- cgit v1.2.1 From 4ee4a4bb52b6c6d59a72df9a9379c1ac80a8ab64 Mon Sep 17 00:00:00 2001 From: Andrey Hristov Date: Tue, 17 Nov 2015 14:49:18 +0100 Subject: constify parameters --- ext/mysqlnd/mysqlnd_ext_plugin.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'ext/mysqlnd/mysqlnd_ext_plugin.c') diff --git a/ext/mysqlnd/mysqlnd_ext_plugin.c b/ext/mysqlnd/mysqlnd_ext_plugin.c index d739e5ed37..b48cf033e3 100644 --- a/ext/mysqlnd/mysqlnd_ext_plugin.c +++ b/ext/mysqlnd/mysqlnd_ext_plugin.c @@ -30,7 +30,7 @@ static struct st_mysqlnd_stmt_methods * mysqlnd_stmt_methods; /* {{{ mysqlnd_plugin__get_plugin_connection_data */ static void ** -mysqlnd_plugin__get_plugin_connection_data(const MYSQLND * conn, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_connection_data(const MYSQLND * conn, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_connection_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -44,7 +44,7 @@ mysqlnd_plugin__get_plugin_connection_data(const MYSQLND * conn, unsigned int pl /* {{{ mysqlnd_plugin__get_plugin_connection_data_data */ static void ** -mysqlnd_plugin__get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_connection_data_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -58,7 +58,7 @@ mysqlnd_plugin__get_plugin_connection_data_data(const MYSQLND_CONN_DATA * conn, /* {{{ mysqlnd_plugin__get_plugin_result_data */ static void ** -mysqlnd_plugin__get_plugin_result_data(const MYSQLND_RES * result, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_result_data(const MYSQLND_RES * result, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -72,7 +72,7 @@ mysqlnd_plugin__get_plugin_result_data(const MYSQLND_RES * result, unsigned int /* {{{ _mysqlnd_plugin__get_plugin_result_unbuffered_data */ static void ** -mysqlnd_plugin__get_plugin_result_unbuffered_data(const MYSQLND_RES_UNBUFFERED * result, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_result_unbuffered_data(const MYSQLND_RES_UNBUFFERED * result, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -86,7 +86,7 @@ mysqlnd_plugin__get_plugin_result_unbuffered_data(const MYSQLND_RES_UNBUFFERED * /* {{{ _mysqlnd_plugin__get_plugin_result_buffered_data */ static void ** -mysqlnd_plugin__get_plugin_result_buffered_data_zval(const MYSQLND_RES_BUFFERED_ZVAL * result, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_result_buffered_data_zval(const MYSQLND_RES_BUFFERED_ZVAL * result, const unsigned int plugin_id) { DBG_ENTER("_mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -99,7 +99,7 @@ mysqlnd_plugin__get_plugin_result_buffered_data_zval(const MYSQLND_RES_BUFFERED_ /* {{{ mysqlnd_plugin__get_plugin_result_buffered_data */ static void ** -mysqlnd_plugin__get_plugin_result_buffered_data_c(const MYSQLND_RES_BUFFERED_C * result, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_result_buffered_data_c(const MYSQLND_RES_BUFFERED_C * result, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_result_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -113,7 +113,7 @@ mysqlnd_plugin__get_plugin_result_buffered_data_c(const MYSQLND_RES_BUFFERED_C * /* {{{ mysqlnd_plugin__get_plugin_protocol_data */ static void ** -mysqlnd_plugin__get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * factory, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * factory, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_protocol_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -127,7 +127,7 @@ mysqlnd_plugin__get_plugin_protocol_data(const MYSQLND_PROTOCOL_PAYLOAD_DECODER_ /* {{{ mysqlnd_plugin__get_plugin_stmt_data */ static void ** -mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_stmt_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -141,7 +141,7 @@ mysqlnd_plugin__get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plu /* {{{ mysqlnd_plugin__get_plugin_pfc_data */ static void ** -mysqlnd_plugin__get_plugin_pfc_data(const MYSQLND_PFC * pfc, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_pfc_data(const MYSQLND_PFC * pfc, const unsigned int plugin_id) { DBG_ENTER("mysqlnd_plugin__get_plugin_pfc_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); @@ -155,7 +155,7 @@ mysqlnd_plugin__get_plugin_pfc_data(const MYSQLND_PFC * pfc, unsigned int plugin /* {{{ _mysqlnd_plugin__get_plugin_vio_data */ static void ** -mysqlnd_plugin__get_plugin_vio_data(const MYSQLND_VIO * vio, unsigned int plugin_id) +mysqlnd_plugin__get_plugin_vio_data(const MYSQLND_VIO * vio, const unsigned int plugin_id) { DBG_ENTER("_mysqlnd_plugin__get_plugin_vio_data"); DBG_INF_FMT("plugin_id=%u", plugin_id); -- cgit v1.2.1