summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd_structs.h
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mysqlnd/mysqlnd_structs.h')
-rw-r--r--ext/mysqlnd/mysqlnd_structs.h293
1 files changed, 151 insertions, 142 deletions
diff --git a/ext/mysqlnd/mysqlnd_structs.h b/ext/mysqlnd/mysqlnd_structs.h
index cc0e46d5f4..642c12f71d 100644
--- a/ext/mysqlnd/mysqlnd_structs.h
+++ b/ext/mysqlnd/mysqlnd_structs.h
@@ -375,6 +375,7 @@ struct st_mysqlnd_protocol_methods
typedef MYSQLND * (*func_mysqlnd_object_factory__get_connection)(zend_bool persistent TSRMLS_DC);
+typedef MYSQLND * (*func_mysqlnd_object_factory__clone_connection_object)(MYSQLND * conn TSRMLS_DC);
typedef MYSQLND_STMT * (*func_mysqlnd_object_factory__get_prepared_statement)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
typedef MYSQLND_NET * (*func_mysqlnd_object_factory__get_io_channel)(zend_bool persistent, MYSQLND_STATS * stats, MYSQLND_ERROR_INFO * error_info TSRMLS_DC);
typedef MYSQLND_PROTOCOL * (*func_mysqlnd_object_factory__get_protocol_decoder)(zend_bool persistent TSRMLS_DC);
@@ -383,175 +384,182 @@ typedef MYSQLND_PROTOCOL * (*func_mysqlnd_object_factory__get_protocol_decoder)(
struct st_mysqlnd_object_factory_methods
{
func_mysqlnd_object_factory__get_connection get_connection;
+ func_mysqlnd_object_factory__clone_connection_object clone_connection_object;
func_mysqlnd_object_factory__get_prepared_statement get_prepared_statement;
func_mysqlnd_object_factory__get_io_channel get_io_channel;
func_mysqlnd_object_factory__get_protocol_decoder get_protocol_decoder;
};
-typedef enum_func_status (*func_mysqlnd_conn__init)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__connect)(MYSQLND_CONN_DATA * conn, const char * host, const char * user, const char * passwd, unsigned int passwd_len, const char * db, unsigned int db_len, unsigned int port, const char * socket_or_pipe, unsigned int mysql_flags TSRMLS_DC);
-typedef ulong (*func_mysqlnd_conn__escape_string)(MYSQLND * const conn, char *newstr, const char *escapestr, size_t escapestr_len TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__set_charset)(MYSQLND_CONN_DATA * const conn, const char * const charset TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__query)(MYSQLND_CONN_DATA * conn, const char * query, unsigned int query_len TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__send_query)(MYSQLND_CONN_DATA * conn, const char *query, unsigned int query_len TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__reap_query)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
-typedef MYSQLND_RES * (*func_mysqlnd_conn__use_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef MYSQLND_RES * (*func_mysqlnd_conn__store_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__next_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef zend_bool (*func_mysqlnd_conn__more_results)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-
-typedef MYSQLND_STMT * (*func_mysqlnd_conn__stmt_init)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-
-typedef enum_func_status (*func_mysqlnd_conn__shutdown_server)(MYSQLND_CONN_DATA * const conn, uint8_t level TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__refresh_server)(MYSQLND_CONN_DATA * const conn, uint8_t options TSRMLS_DC);
-
-typedef enum_func_status (*func_mysqlnd_conn__ping)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__kill_connection)(MYSQLND_CONN_DATA * conn, unsigned int pid TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__select_db)(MYSQLND_CONN_DATA * const conn, const char * const db, unsigned int db_len TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__server_dump_debug_information)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__change_user)(MYSQLND_CONN_DATA * const conn, const char * user, const char * passwd, const char * db, zend_bool silent, size_t passwd_len TSRMLS_DC);
-
-typedef unsigned int (*func_mysqlnd_conn__get_error_no)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__get_error_str)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__get_sqlstate)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef uint64_t (*func_mysqlnd_conn__get_thread_id)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef void (*func_mysqlnd_conn__get_statistics)(const MYSQLND_CONN_DATA * const conn, zval *return_value TSRMLS_DC ZEND_FILE_LINE_DC);
-
-typedef unsigned long (*func_mysqlnd_conn__get_server_version)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__get_server_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__get_server_statistics)(MYSQLND_CONN_DATA * conn, char **message, unsigned int * message_len TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__get_host_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef unsigned int (*func_mysqlnd_conn__get_protocol_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__get_last_message)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef const char * (*func_mysqlnd_conn__charset_name)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef MYSQLND_RES * (*func_mysqlnd_conn__list_fields)(MYSQLND_CONN_DATA * conn, const char * table, const char * achtung_wild TSRMLS_DC);
-typedef MYSQLND_RES * (*func_mysqlnd_conn__list_method)(MYSQLND_CONN_DATA * conn, const char * query, const char * achtung_wild, char *par1 TSRMLS_DC);
-
-typedef uint64_t (*func_mysqlnd_conn__get_last_insert_id)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef uint64_t (*func_mysqlnd_conn__get_affected_rows)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef unsigned int (*func_mysqlnd_conn__get_warning_count)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-
-typedef unsigned int (*func_mysqlnd_conn__get_field_count)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-
-typedef unsigned int (*func_mysqlnd_conn__get_server_status)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__set_server_option)(MYSQLND_CONN_DATA * const conn, enum_mysqlnd_server_option option TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__set_client_option)(MYSQLND_CONN_DATA * const conn, enum_mysqlnd_option option, const char * const value TSRMLS_DC);
-typedef void (*func_mysqlnd_conn__free_contents)(MYSQLND_CONN_DATA * conn TSRMLS_DC);/* private */
-typedef void (*func_mysqlnd_conn__free_options)(MYSQLND_CONN_DATA * conn TSRMLS_DC); /* private */
-typedef enum_func_status (*func_mysqlnd_conn__close)(MYSQLND * conn, enum_connection_close_type close_type TSRMLS_DC);
-typedef void (*func_mysqlnd_conn__dtor)(MYSQLND_CONN_DATA * conn TSRMLS_DC); /* private */
-typedef void (*func_mysqlnd_conn__outter_dtor)(MYSQLND * conn TSRMLS_DC); /* private */
+typedef enum_func_status (*func_mysqlnd_conn_data__init)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__connect)(MYSQLND_CONN_DATA * conn, const char * host, const char * user, const char * passwd, unsigned int passwd_len, const char * db, unsigned int db_len, unsigned int port, const char * socket_or_pipe, unsigned int mysql_flags TSRMLS_DC);
+typedef ulong (*func_mysqlnd_conn_data__escape_string)(MYSQLND_CONN_DATA * const conn, char *newstr, const char *escapestr, size_t escapestr_len TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__set_charset)(MYSQLND_CONN_DATA * const conn, const char * const charset TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__query)(MYSQLND_CONN_DATA * conn, const char * query, unsigned int query_len TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__send_query)(MYSQLND_CONN_DATA * conn, const char *query, unsigned int query_len TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__reap_query)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef MYSQLND_RES * (*func_mysqlnd_conn_data__use_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef MYSQLND_RES * (*func_mysqlnd_conn_data__store_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__next_result)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef zend_bool (*func_mysqlnd_conn_data__more_results)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__query_read_result_set_header)(MYSQLND_CONN_DATA * conn, MYSQLND_STMT * stmt TSRMLS_DC);
+typedef MYSQLND_STMT * (*func_mysqlnd_conn_data__stmt_init)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef MYSQLND_CONN_DATA * (*func_mysqlnd_conn__get_reference)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__free_reference)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum mysqlnd_connection_state (*func_mysqlnd_conn__get_state)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef void (*func_mysqlnd_conn__set_state)(MYSQLND_CONN_DATA * const conn, enum mysqlnd_connection_state new_state TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__shutdown_server)(MYSQLND_CONN_DATA * const conn, uint8_t level TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__refresh_server)(MYSQLND_CONN_DATA * const conn, uint8_t options TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__simple_command)(MYSQLND_CONN_DATA * conn, enum php_mysqlnd_server_command command, const zend_uchar * const arg, size_t arg_len, enum mysqlnd_packet_type ok_packet, zend_bool silent, zend_bool ignore_upsert_status TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__simple_command_handle_response)(MYSQLND_CONN_DATA * conn, enum mysqlnd_packet_type ok_packet, zend_bool silent, enum php_mysqlnd_server_command command, zend_bool ignore_upsert_status TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__ping)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__kill_connection)(MYSQLND_CONN_DATA * conn, unsigned int pid TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__select_db)(MYSQLND_CONN_DATA * const conn, const char * const db, unsigned int db_len TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__server_dump_debug_information)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__change_user)(MYSQLND_CONN_DATA * const conn, const char * user, const char * passwd, const char * db, zend_bool silent, size_t passwd_len TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__restart_psession)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__end_psession)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__send_close)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef unsigned int (*func_mysqlnd_conn_data__get_error_no)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__get_error_str)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__get_sqlstate)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef uint64_t (*func_mysqlnd_conn_data__get_thread_id)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef void (*func_mysqlnd_conn_data__get_statistics)(const MYSQLND_CONN_DATA * const conn, zval *return_value TSRMLS_DC ZEND_FILE_LINE_DC);
-typedef enum_func_status (*func_mysqlnd_conn__ssl_set)(MYSQLND_CONN_DATA * const conn, const char * key, const char * const cert, const char * const ca, const char * const capath, const char * const cipher TSRMLS_DC);
+typedef unsigned long (*func_mysqlnd_conn_data__get_server_version)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__get_server_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__get_server_statistics)(MYSQLND_CONN_DATA * conn, char **message, unsigned int * message_len TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__get_host_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef unsigned int (*func_mysqlnd_conn_data__get_protocol_information)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__get_last_message)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef const char * (*func_mysqlnd_conn_data__charset_name)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef MYSQLND_RES * (*func_mysqlnd_conn_data__list_fields)(MYSQLND_CONN_DATA * conn, const char * table, const char * achtung_wild TSRMLS_DC);
+typedef MYSQLND_RES * (*func_mysqlnd_conn_data__list_method)(MYSQLND_CONN_DATA * conn, const char * query, const char * achtung_wild, char *par1 TSRMLS_DC);
-typedef MYSQLND_RES * (*func_mysqlnd_conn__result_init)(unsigned int field_count, zend_bool persistent TSRMLS_DC);
+typedef uint64_t (*func_mysqlnd_conn_data__get_last_insert_id)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef uint64_t (*func_mysqlnd_conn_data__get_affected_rows)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef unsigned int (*func_mysqlnd_conn_data__get_warning_count)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__set_autocommit)(MYSQLND_CONN_DATA * conn, unsigned int mode TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__tx_commit)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__tx_rollback)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef unsigned int (*func_mysqlnd_conn_data__get_field_count)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__local_tx_start)(MYSQLND_CONN_DATA * conn, size_t this_func TSRMLS_DC);
-typedef enum_func_status (*func_mysqlnd_conn__local_tx_end)(MYSQLND_CONN_DATA * conn, size_t this_func, enum_func_status status TSRMLS_DC);
+typedef unsigned int (*func_mysqlnd_conn_data__get_server_status)(const MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__set_server_option)(MYSQLND_CONN_DATA * const conn, enum_mysqlnd_server_option option TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__set_client_option)(MYSQLND_CONN_DATA * const conn, enum_mysqlnd_option option, const char * const value TSRMLS_DC);
+typedef void (*func_mysqlnd_conn_data__free_contents)(MYSQLND_CONN_DATA * conn TSRMLS_DC);/* private */
+typedef void (*func_mysqlnd_conn_data__free_options)(MYSQLND_CONN_DATA * conn TSRMLS_DC); /* private */
+typedef void (*func_mysqlnd_conn_data__dtor)(MYSQLND_CONN_DATA * conn TSRMLS_DC); /* private */
+typedef enum_func_status (*func_mysqlnd_conn_data__query_read_result_set_header)(MYSQLND_CONN_DATA * conn, MYSQLND_STMT * stmt TSRMLS_DC);
-struct st_mysqlnd_conn_methods
+typedef MYSQLND_CONN_DATA * (*func_mysqlnd_conn_data__get_reference)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__free_reference)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef enum mysqlnd_connection_state (*func_mysqlnd_conn_data__get_state)(MYSQLND_CONN_DATA * const conn TSRMLS_DC);
+typedef void (*func_mysqlnd_conn_data__set_state)(MYSQLND_CONN_DATA * const conn, enum mysqlnd_connection_state new_state TSRMLS_DC);
+
+typedef enum_func_status (*func_mysqlnd_conn_data__simple_command)(MYSQLND_CONN_DATA * conn, enum php_mysqlnd_server_command command, const zend_uchar * const arg, size_t arg_len, enum mysqlnd_packet_type ok_packet, zend_bool silent, zend_bool ignore_upsert_status TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__simple_command_handle_response)(MYSQLND_CONN_DATA * conn, enum mysqlnd_packet_type ok_packet, zend_bool silent, enum php_mysqlnd_server_command command, zend_bool ignore_upsert_status TSRMLS_DC);
+
+typedef enum_func_status (*func_mysqlnd_conn_data__restart_psession)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__end_psession)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__send_close)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+
+typedef enum_func_status (*func_mysqlnd_conn_data__ssl_set)(MYSQLND_CONN_DATA * const conn, const char * key, const char * const cert, const char * const ca, const char * const capath, const char * const cipher TSRMLS_DC);
+
+typedef MYSQLND_RES * (*func_mysqlnd_conn_data__result_init)(unsigned int field_count, zend_bool persistent TSRMLS_DC);
+
+typedef enum_func_status (*func_mysqlnd_conn_data__set_autocommit)(MYSQLND_CONN_DATA * conn, unsigned int mode TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__tx_commit)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__tx_rollback)(MYSQLND_CONN_DATA * conn TSRMLS_DC);
+
+typedef enum_func_status (*func_mysqlnd_conn_data__local_tx_start)(MYSQLND_CONN_DATA * conn, size_t this_func TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn_data__local_tx_end)(MYSQLND_CONN_DATA * conn, size_t this_func, enum_func_status status TSRMLS_DC);
+
+
+struct st_mysqlnd_conn_data_methods
{
- func_mysqlnd_conn__init init;
- func_mysqlnd_conn__connect connect;
- func_mysqlnd_conn__escape_string escape_string;
- func_mysqlnd_conn__set_charset set_charset;
- func_mysqlnd_conn__query query;
- func_mysqlnd_conn__send_query send_query;
- func_mysqlnd_conn__reap_query reap_query;
- func_mysqlnd_conn__use_result use_result;
- func_mysqlnd_conn__store_result store_result;
- func_mysqlnd_conn__next_result next_result;
- func_mysqlnd_conn__more_results more_results;
-
- func_mysqlnd_conn__stmt_init stmt_init;
-
- func_mysqlnd_conn__shutdown_server shutdown_server;
- func_mysqlnd_conn__refresh_server refresh_server;
-
- func_mysqlnd_conn__ping ping;
- func_mysqlnd_conn__kill_connection kill_connection;
- func_mysqlnd_conn__select_db select_db;
- func_mysqlnd_conn__server_dump_debug_information server_dump_debug_information;
- func_mysqlnd_conn__change_user change_user;
-
- func_mysqlnd_conn__get_error_no get_error_no;
- func_mysqlnd_conn__get_error_str get_error_str;
- func_mysqlnd_conn__get_sqlstate get_sqlstate;
- func_mysqlnd_conn__get_thread_id get_thread_id;
- func_mysqlnd_conn__get_statistics get_statistics;
-
- func_mysqlnd_conn__get_server_version get_server_version;
- func_mysqlnd_conn__get_server_information get_server_information;
- func_mysqlnd_conn__get_server_statistics get_server_statistics;
- func_mysqlnd_conn__get_host_information get_host_information;
- func_mysqlnd_conn__get_protocol_information get_protocol_information;
- func_mysqlnd_conn__get_last_message get_last_message;
- func_mysqlnd_conn__charset_name charset_name;
- func_mysqlnd_conn__list_fields list_fields;
- func_mysqlnd_conn__list_method list_method;
-
- func_mysqlnd_conn__get_last_insert_id get_last_insert_id;
- func_mysqlnd_conn__get_affected_rows get_affected_rows;
- func_mysqlnd_conn__get_warning_count get_warning_count;
-
- func_mysqlnd_conn__get_field_count get_field_count;
-
- func_mysqlnd_conn__get_server_status get_server_status;
+ func_mysqlnd_conn_data__init init;
+ func_mysqlnd_conn_data__connect connect;
+ func_mysqlnd_conn_data__escape_string escape_string;
+ func_mysqlnd_conn_data__set_charset set_charset;
+ func_mysqlnd_conn_data__query query;
+ func_mysqlnd_conn_data__send_query send_query;
+ func_mysqlnd_conn_data__reap_query reap_query;
+ func_mysqlnd_conn_data__use_result use_result;
+ func_mysqlnd_conn_data__store_result store_result;
+ func_mysqlnd_conn_data__next_result next_result;
+ func_mysqlnd_conn_data__more_results more_results;
+
+ func_mysqlnd_conn_data__stmt_init stmt_init;
+
+ func_mysqlnd_conn_data__shutdown_server shutdown_server;
+ func_mysqlnd_conn_data__refresh_server refresh_server;
+
+ func_mysqlnd_conn_data__ping ping;
+ func_mysqlnd_conn_data__kill_connection kill_connection;
+ func_mysqlnd_conn_data__select_db select_db;
+ func_mysqlnd_conn_data__server_dump_debug_information server_dump_debug_information;
+ func_mysqlnd_conn_data__change_user change_user;
+
+ func_mysqlnd_conn_data__get_error_no get_error_no;
+ func_mysqlnd_conn_data__get_error_str get_error_str;
+ func_mysqlnd_conn_data__get_sqlstate get_sqlstate;
+ func_mysqlnd_conn_data__get_thread_id get_thread_id;
+ func_mysqlnd_conn_data__get_statistics get_statistics;
+
+ func_mysqlnd_conn_data__get_server_version get_server_version;
+ func_mysqlnd_conn_data__get_server_information get_server_information;
+ func_mysqlnd_conn_data__get_server_statistics get_server_statistics;
+ func_mysqlnd_conn_data__get_host_information get_host_information;
+ func_mysqlnd_conn_data__get_protocol_information get_protocol_information;
+ func_mysqlnd_conn_data__get_last_message get_last_message;
+ func_mysqlnd_conn_data__charset_name charset_name;
+ func_mysqlnd_conn_data__list_fields list_fields;
+ func_mysqlnd_conn_data__list_method list_method;
+
+ func_mysqlnd_conn_data__get_last_insert_id get_last_insert_id;
+ func_mysqlnd_conn_data__get_affected_rows get_affected_rows;
+ func_mysqlnd_conn_data__get_warning_count get_warning_count;
+
+ func_mysqlnd_conn_data__get_field_count get_field_count;
+
+ func_mysqlnd_conn_data__get_server_status get_server_status;
- func_mysqlnd_conn__set_server_option set_server_option;
- func_mysqlnd_conn__set_client_option set_client_option;
- func_mysqlnd_conn__free_contents free_contents;
- func_mysqlnd_conn__free_options free_options;
- func_mysqlnd_conn__close close;
- func_mysqlnd_conn__dtor dtor;
- func_mysqlnd_conn__outter_dtor outter_dtor;
+ func_mysqlnd_conn_data__set_server_option set_server_option;
+ func_mysqlnd_conn_data__set_client_option set_client_option;
+ func_mysqlnd_conn_data__free_contents free_contents;
+ func_mysqlnd_conn_data__free_options free_options;
+ func_mysqlnd_conn_data__dtor dtor;
- func_mysqlnd_conn__query_read_result_set_header query_read_result_set_header;
+ func_mysqlnd_conn_data__query_read_result_set_header query_read_result_set_header;
- func_mysqlnd_conn__get_reference get_reference;
- func_mysqlnd_conn__free_reference free_reference;
- func_mysqlnd_conn__get_state get_state;
- func_mysqlnd_conn__set_state set_state;
+ func_mysqlnd_conn_data__get_reference get_reference;
+ func_mysqlnd_conn_data__free_reference free_reference;
+ func_mysqlnd_conn_data__get_state get_state;
+ func_mysqlnd_conn_data__set_state set_state;
- func_mysqlnd_conn__simple_command simple_command;
- func_mysqlnd_conn__simple_command_handle_response simple_command_handle_response;
+ func_mysqlnd_conn_data__simple_command simple_command;
+ func_mysqlnd_conn_data__simple_command_handle_response simple_command_handle_response;
- func_mysqlnd_conn__restart_psession restart_psession;
- func_mysqlnd_conn__end_psession end_psession;
- func_mysqlnd_conn__send_close send_close;
+ func_mysqlnd_conn_data__restart_psession restart_psession;
+ func_mysqlnd_conn_data__end_psession end_psession;
+ func_mysqlnd_conn_data__send_close send_close;
- func_mysqlnd_conn__ssl_set ssl_set;
+ func_mysqlnd_conn_data__ssl_set ssl_set;
- func_mysqlnd_conn__result_init result_init;
- func_mysqlnd_conn__set_autocommit set_autocommit;
- func_mysqlnd_conn__tx_commit tx_commit;
- func_mysqlnd_conn__tx_rollback tx_rollback;
+ func_mysqlnd_conn_data__result_init result_init;
+ func_mysqlnd_conn_data__set_autocommit set_autocommit;
+ func_mysqlnd_conn_data__tx_commit tx_commit;
+ func_mysqlnd_conn_data__tx_rollback tx_rollback;
- func_mysqlnd_conn__local_tx_start local_tx_start;
- func_mysqlnd_conn__local_tx_end local_tx_end;
+ func_mysqlnd_conn_data__local_tx_start local_tx_start;
+ func_mysqlnd_conn_data__local_tx_end local_tx_end;
};
+typedef MYSQLND * (*func_mysqlnd_conn__clone_object)(MYSQLND * const conn TSRMLS_DC);
+typedef void (*func_mysqlnd_conn__dtor)(MYSQLND * conn TSRMLS_DC);
+typedef enum_func_status (*func_mysqlnd_conn__close)(MYSQLND * conn, enum_connection_close_type close_type TSRMLS_DC);
+
+struct st_mysqlnd_conn_methods
+{
+ func_mysqlnd_conn__clone_object clone_object;
+ func_mysqlnd_conn__dtor dtor;
+ func_mysqlnd_conn__close close;
+};
typedef mysqlnd_fetch_row_func fetch_row;
@@ -867,7 +875,7 @@ struct st_mysqlnd_connection_data
/* stats */
MYSQLND_STATS * stats;
- struct st_mysqlnd_conn_methods *m;
+ struct st_mysqlnd_conn_data_methods * m;
};
@@ -875,6 +883,7 @@ struct st_mysqlnd_connection
{
MYSQLND_CONN_DATA * data;
zend_bool persistent;
+ struct st_mysqlnd_conn_methods * m;
};