diff options
Diffstat (limited to 'ext/mysqlnd/mysqlnd_structs.h')
-rw-r--r-- | ext/mysqlnd/mysqlnd_structs.h | 196 |
1 files changed, 80 insertions, 116 deletions
diff --git a/ext/mysqlnd/mysqlnd_structs.h b/ext/mysqlnd/mysqlnd_structs.h index ee3dba0e87..7929cc1153 100644 --- a/ext/mysqlnd/mysqlnd_structs.h +++ b/ext/mysqlnd/mysqlnd_structs.h @@ -51,12 +51,9 @@ typedef struct st_mysqlnd_memory_pool MYSQLND_MEMORY_POOL; struct st_mysqlnd_memory_pool { zend_arena *arena; - void *last; void *checkpoint; void* (*get_chunk)(MYSQLND_MEMORY_POOL * pool, size_t size); - void* (*resize_chunk)(MYSQLND_MEMORY_POOL * pool, void * ptr, size_t old_size, size_t size); - void (*free_chunk)(MYSQLND_MEMORY_POOL * pool, void * ptr); }; @@ -79,7 +76,7 @@ typedef struct st_mysqlnd_cmd_buffer typedef struct st_mysqlnd_field { zend_string *sname; /* Name of column */ - zend_bool is_numeric; + bool is_numeric; zend_ulong num_key; const char *name; /* Name of column in C string */ const char *org_name; /* Original column name, if an alias */ @@ -89,7 +86,6 @@ typedef struct st_mysqlnd_field const char *catalog; /* Catalog for table */ char *def; /* Default value */ zend_ulong length; /* Width of column (create length) */ - zend_ulong max_length; /* Max width for selected set */ unsigned int name_length; unsigned int org_name_length; unsigned int table_length; @@ -150,7 +146,7 @@ struct st_mysqlnd_error_info unsigned int error_no; zend_llist error_list; - zend_bool persistent; + bool persistent; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_error_info) *m; }; @@ -231,9 +227,9 @@ typedef struct st_mysqlnd_session_options /* maximum allowed packet size for communication */ unsigned int max_allowed_packet; -#ifdef MYSQLND_STRING_TO_INT_CONVERSION - zend_bool int_and_float_native; -#endif + bool int_and_float_native; + + char *local_infile_directory; } MYSQLND_SESSION_OPTIONS; @@ -282,9 +278,7 @@ typedef struct st_mysqlnd_param_bind MYSQLND_PARAM_BIND; typedef struct st_mysqlnd_result_bind MYSQLND_RESULT_BIND; typedef struct st_mysqlnd_result_metadata MYSQLND_RES_METADATA; -typedef struct st_mysqlnd_buffered_result_parent MYSQLND_RES_BUFFERED; -typedef struct st_mysqlnd_buffered_result_zval MYSQLND_RES_BUFFERED_ZVAL; -typedef struct st_mysqlnd_buffered_result_c MYSQLND_RES_BUFFERED_C; +typedef struct st_mysqlnd_buffered_result MYSQLND_RES_BUFFERED; typedef struct st_mysqlnd_unbuffered_result MYSQLND_RES_UNBUFFERED; typedef struct st_mysqlnd_debug MYSQLND_DEBUG; @@ -292,9 +286,9 @@ typedef struct st_mysqlnd_debug MYSQLND_DEBUG; typedef MYSQLND_RES* (*mysqlnd_stmt_use_or_store_func)(MYSQLND_STMT * const); typedef enum_func_status (*mysqlnd_fetch_row_func)(MYSQLND_RES *result, - void * param, + zval **row, const unsigned int flags, - zend_bool * fetched_anything + bool * fetched_anything ); @@ -307,7 +301,7 @@ struct st_mysqlnd_stats uint64_t *values; mysqlnd_stat_trigger *triggers; size_t count; - zend_bool in_trigger; + bool in_trigger; #ifdef ZTS MUTEX_T LOCK_access; #endif @@ -319,12 +313,12 @@ typedef enum_func_status (*func_mysqlnd_execute_com_debug)(MYSQLND_CONN_DATA * c typedef enum_func_status (*func_mysqlnd_execute_com_init_db)(MYSQLND_CONN_DATA * const conn, const MYSQLND_CSTRING db); typedef enum_func_status (*func_mysqlnd_execute_com_ping)(MYSQLND_CONN_DATA * const conn); typedef enum_func_status (*func_mysqlnd_execute_com_statistics)(MYSQLND_CONN_DATA * const conn, zend_string ** message); -typedef enum_func_status (*func_mysqlnd_execute_com_process_kill)(MYSQLND_CONN_DATA * const conn, const unsigned int process_id, const zend_bool read_response); +typedef enum_func_status (*func_mysqlnd_execute_com_process_kill)(MYSQLND_CONN_DATA * const conn, const unsigned int process_id, const bool read_response); typedef enum_func_status (*func_mysqlnd_execute_com_refresh)(MYSQLND_CONN_DATA * const conn, const uint8_t options); typedef enum_func_status (*func_mysqlnd_execute_com_shutdown)(MYSQLND_CONN_DATA * const conn, const uint8_t level); typedef enum_func_status (*func_mysqlnd_execute_com_quit)(MYSQLND_CONN_DATA * const conn); typedef enum_func_status (*func_mysqlnd_execute_com_query)(MYSQLND_CONN_DATA * const conn, MYSQLND_CSTRING query); -typedef enum_func_status (*func_mysqlnd_execute_com_change_user)(MYSQLND_CONN_DATA * const conn, const MYSQLND_CSTRING payload, const zend_bool silent); +typedef enum_func_status (*func_mysqlnd_execute_com_change_user)(MYSQLND_CONN_DATA * const conn, const MYSQLND_CSTRING payload, const bool silent); typedef enum_func_status (*func_mysqlnd_execute_com_reap_result)(MYSQLND_CONN_DATA * const conn); typedef enum_func_status (*func_mysqlnd_execute_com_stmt_prepare)(MYSQLND_CONN_DATA * const conn, const MYSQLND_CSTRING query); typedef enum_func_status (*func_mysqlnd_execute_com_stmt_execute)(MYSQLND_CONN_DATA * conn, const MYSQLND_CSTRING payload); @@ -365,13 +359,13 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_command) typedef enum_func_status (*func_mysqlnd_vio__init)(MYSQLND_VIO * const vio, MYSQLND_STATS * const stats, MYSQLND_ERROR_INFO * const error_info); typedef void (*func_mysqlnd_vio__dtor)(MYSQLND_VIO * const vio, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); -typedef enum_func_status (*func_mysqlnd_vio__connect)(MYSQLND_VIO * const vio, const MYSQLND_CSTRING scheme, const zend_bool persistent, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); +typedef enum_func_status (*func_mysqlnd_vio__connect)(MYSQLND_VIO * const vio, const MYSQLND_CSTRING scheme, const bool persistent, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); typedef void (*func_mysqlnd_vio__close_stream)(MYSQLND_VIO * const vio, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); -typedef php_stream * (*func_mysqlnd_vio__open_stream)(MYSQLND_VIO * const vio, const MYSQLND_CSTRING scheme, const zend_bool persistent, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); +typedef php_stream * (*func_mysqlnd_vio__open_stream)(MYSQLND_VIO * const vio, const MYSQLND_CSTRING scheme, const bool persistent, MYSQLND_STATS * const conn_stats, MYSQLND_ERROR_INFO * const error_info); typedef php_stream * (*func_mysqlnd_vio__get_stream)(const MYSQLND_VIO * const vio); typedef enum_func_status (*func_mysqlnd_vio__set_stream)(MYSQLND_VIO * const vio, php_stream * vio_stream); -typedef zend_bool (*func_mysqlnd_vio__has_valid_stream)(const MYSQLND_VIO * const vio); +typedef bool (*func_mysqlnd_vio__has_valid_stream)(const MYSQLND_VIO * const vio); typedef func_mysqlnd_vio__open_stream (*func_mysqlnd_vio__get_open_stream)(MYSQLND_VIO * const vio, const MYSQLND_CSTRING scheme, MYSQLND_ERROR_INFO * const error_info); typedef enum_func_status (*func_mysqlnd_vio__set_client_option)(MYSQLND_VIO * const vio, enum_mysqlnd_client_option option, const char * const value); @@ -419,12 +413,12 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_vio) MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory); -typedef MYSQLND * (*func_mysqlnd_object_factory__get_connection)(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) * factory, const zend_bool persistent); +typedef MYSQLND * (*func_mysqlnd_object_factory__get_connection)(MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) * factory, const bool persistent); typedef MYSQLND * (*func_mysqlnd_object_factory__clone_connection_object)(MYSQLND * conn); typedef MYSQLND_STMT * (*func_mysqlnd_object_factory__get_prepared_statement)(MYSQLND_CONN_DATA * conn); -typedef MYSQLND_PFC * (*func_mysqlnd_object_factory__get_pfc)(const zend_bool persistent, MYSQLND_STATS * stats, MYSQLND_ERROR_INFO * error_info); -typedef MYSQLND_VIO * (*func_mysqlnd_object_factory__get_vio)(const zend_bool persistent, MYSQLND_STATS * stats, MYSQLND_ERROR_INFO * error_info); -typedef MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * (*func_mysqlnd_object_factory__get_protocol_payload_decoder_factory)(MYSQLND_CONN_DATA * conn, const zend_bool persistent); +typedef MYSQLND_PFC * (*func_mysqlnd_object_factory__get_pfc)(const bool persistent, MYSQLND_STATS * stats, MYSQLND_ERROR_INFO * error_info); +typedef MYSQLND_VIO * (*func_mysqlnd_object_factory__get_vio)(const bool persistent, MYSQLND_STATS * stats, MYSQLND_ERROR_INFO * error_info); +typedef MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * (*func_mysqlnd_object_factory__get_protocol_payload_decoder_factory)(MYSQLND_CONN_DATA * conn, const bool persistent); MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) @@ -444,10 +438,10 @@ typedef enum_func_status (*func_mysqlnd_conn_data__set_charset)(MYSQLND_CONN_DAT typedef enum_func_status (*func_mysqlnd_conn_data__query)(MYSQLND_CONN_DATA * conn, const char * const query, const size_t query_len); typedef enum_func_status (*func_mysqlnd_conn_data__send_query)(MYSQLND_CONN_DATA * conn, const char * const query, const size_t query_len, enum_mysqlnd_send_query_type type, zval *read_cb, zval *err_cb); typedef enum_func_status (*func_mysqlnd_conn_data__reap_query)(MYSQLND_CONN_DATA * conn, enum_mysqlnd_reap_result_type type); -typedef MYSQLND_RES * (*func_mysqlnd_conn_data__use_result)(MYSQLND_CONN_DATA * const conn, const unsigned int flags); -typedef MYSQLND_RES * (*func_mysqlnd_conn_data__store_result)(MYSQLND_CONN_DATA * const conn, const unsigned int flags); +typedef MYSQLND_RES * (*func_mysqlnd_conn_data__use_result)(MYSQLND_CONN_DATA * const conn); +typedef MYSQLND_RES * (*func_mysqlnd_conn_data__store_result)(MYSQLND_CONN_DATA * const conn); typedef enum_func_status (*func_mysqlnd_conn_data__next_result)(MYSQLND_CONN_DATA * const conn); -typedef zend_bool (*func_mysqlnd_conn_data__more_results)(const MYSQLND_CONN_DATA * const conn); +typedef bool (*func_mysqlnd_conn_data__more_results)(const MYSQLND_CONN_DATA * const conn); typedef MYSQLND_STMT * (*func_mysqlnd_conn_data__stmt_init)(MYSQLND_CONN_DATA * const conn); @@ -458,7 +452,7 @@ typedef enum_func_status (*func_mysqlnd_conn_data__ping)(MYSQLND_CONN_DATA * con typedef enum_func_status (*func_mysqlnd_conn_data__kill_connection)(MYSQLND_CONN_DATA * conn, unsigned int pid); typedef enum_func_status (*func_mysqlnd_conn_data__select_db)(MYSQLND_CONN_DATA * const conn, const char * const db, const size_t db_len); typedef enum_func_status (*func_mysqlnd_conn_data__server_dump_debug_information)(MYSQLND_CONN_DATA * const conn); -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); +typedef enum_func_status (*func_mysqlnd_conn_data__change_user)(MYSQLND_CONN_DATA * const conn, const char * user, const char * passwd, const char * db, bool silent, size_t passwd_len); typedef unsigned int (*func_mysqlnd_conn_data__get_error_no)(const MYSQLND_CONN_DATA * const conn); typedef const char * (*func_mysqlnd_conn_data__get_error_str)(const MYSQLND_CONN_DATA * const conn); @@ -493,8 +487,8 @@ typedef enum_func_status (*func_mysqlnd_conn_data__query_read_result_set_header) typedef MYSQLND_CONN_DATA * (*func_mysqlnd_conn_data__get_reference)(MYSQLND_CONN_DATA * const conn); typedef enum_func_status (*func_mysqlnd_conn_data__free_reference)(MYSQLND_CONN_DATA * const conn); -typedef enum_func_status (*func_mysqlnd_conn_data__send_command_do_request)(MYSQLND_CONN_DATA * const conn, const enum php_mysqlnd_server_command command, const zend_uchar * const arg, const size_t arg_len, const zend_bool silent, const zend_bool ignore_upsert_status); -typedef enum_func_status (*func_mysqlnd_conn_data__send_command_handle_response)(MYSQLND_CONN_DATA * const conn, const enum mysqlnd_packet_type ok_packet, const zend_bool silent, const enum php_mysqlnd_server_command command, const zend_bool ignore_upsert_status); +typedef enum_func_status (*func_mysqlnd_conn_data__send_command_do_request)(MYSQLND_CONN_DATA * const conn, const enum php_mysqlnd_server_command command, const zend_uchar * const arg, const size_t arg_len, const bool silent, const bool ignore_upsert_status); +typedef enum_func_status (*func_mysqlnd_conn_data__send_command_handle_response)(MYSQLND_CONN_DATA * const conn, const enum mysqlnd_packet_type ok_packet, const bool silent, const enum php_mysqlnd_server_command command, const bool ignore_upsert_status); typedef enum_func_status (*func_mysqlnd_conn_data__restart_psession)(MYSQLND_CONN_DATA * conn); typedef enum_func_status (*func_mysqlnd_conn_data__end_psession)(MYSQLND_CONN_DATA * conn); @@ -508,7 +502,7 @@ typedef enum_func_status (*func_mysqlnd_conn_data__set_autocommit)(MYSQLND_CONN_ typedef enum_func_status (*func_mysqlnd_conn_data__tx_commit)(MYSQLND_CONN_DATA * conn); typedef enum_func_status (*func_mysqlnd_conn_data__tx_rollback)(MYSQLND_CONN_DATA * conn); typedef enum_func_status (*func_mysqlnd_conn_data__tx_begin)(MYSQLND_CONN_DATA * conn, const unsigned int mode, const char * const name); -typedef enum_func_status (*func_mysqlnd_conn_data__tx_commit_or_rollback)(MYSQLND_CONN_DATA * conn, const zend_bool commit, const unsigned int flags, const char * const name); +typedef enum_func_status (*func_mysqlnd_conn_data__tx_commit_or_rollback)(MYSQLND_CONN_DATA * conn, const bool commit, const unsigned int flags, const char * const name); typedef void (*func_mysqlnd_conn_data__tx_cor_options_to_string)(const MYSQLND_CONN_DATA * const conn, smart_str * tmp_str, const unsigned int mode); typedef enum_func_status (*func_mysqlnd_conn_data__tx_savepoint)(MYSQLND_CONN_DATA * conn, const char * const name); typedef enum_func_status (*func_mysqlnd_conn_data__tx_savepoint_release)(MYSQLND_CONN_DATA * conn, const char * const name); @@ -526,7 +520,7 @@ typedef enum_func_status (*func_mysqlnd_conn_data__set_client_option_2d)(MYSQLND typedef size_t (*func_mysqlnd_conn_data__negotiate_client_api_capabilities)(MYSQLND_CONN_DATA * const conn, const size_t flags); typedef size_t (*func_mysqlnd_conn_data__get_client_api_capabilities)(const MYSQLND_CONN_DATA * const conn); -typedef MYSQLND_STRING (*func_mysqlnd_conn_data__get_scheme)(MYSQLND_CONN_DATA * conn, MYSQLND_CSTRING hostname, MYSQLND_CSTRING *socket_or_pipe, unsigned int port, zend_bool * unix_socket, zend_bool * named_pipe); +typedef MYSQLND_STRING (*func_mysqlnd_conn_data__get_scheme)(MYSQLND_CONN_DATA * conn, MYSQLND_CSTRING hostname, MYSQLND_CSTRING *socket_or_pipe, unsigned int port, bool * unix_socket, bool * named_pipe); @@ -638,15 +632,13 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn) /* for decoding - binary or text protocol */ typedef enum_func_status (*func_mysqlnd_res__row_decoder)(MYSQLND_ROW_BUFFER * row_buffer, zval * fields, const unsigned int field_count, const MYSQLND_FIELD * const fields_metadata, - const zend_bool as_int_or_float, MYSQLND_STATS * const stats); + const bool as_int_or_float, MYSQLND_STATS * const stats); -typedef MYSQLND_RES * (*func_mysqlnd_res__use_result)(MYSQLND_RES * const result, const zend_bool ps_protocol); -typedef MYSQLND_RES * (*func_mysqlnd_res__store_result)(MYSQLND_RES * result, MYSQLND_CONN_DATA * const conn, const unsigned int flags); -typedef void (*func_mysqlnd_res__fetch_into)(MYSQLND_RES *result, const unsigned int flags, zval *return_value, enum_mysqlnd_extension ext ZEND_FILE_LINE_DC); +typedef MYSQLND_RES * (*func_mysqlnd_res__use_result)(MYSQLND_RES * const result, MYSQLND_STMT_DATA *stmt); +typedef MYSQLND_RES * (*func_mysqlnd_res__store_result)(MYSQLND_RES * result, MYSQLND_CONN_DATA * const conn, MYSQLND_STMT_DATA *stmt); +typedef void (*func_mysqlnd_res__fetch_into)(MYSQLND_RES *result, const unsigned int flags, zval *return_value ZEND_FILE_LINE_DC); typedef MYSQLND_ROW_C (*func_mysqlnd_res__fetch_row_c)(MYSQLND_RES *result); -typedef void (*func_mysqlnd_res__fetch_all)(MYSQLND_RES *result, const unsigned int flags, zval *return_value ZEND_FILE_LINE_DC); -typedef void (*func_mysqlnd_res__fetch_field_data)(MYSQLND_RES *result, const unsigned int offset, zval *return_value); typedef uint64_t (*func_mysqlnd_res__num_rows)(const MYSQLND_RES * const result); typedef unsigned int (*func_mysqlnd_res__num_fields)(const MYSQLND_RES * const result); typedef enum_func_status (*func_mysqlnd_res__skip_result)(MYSQLND_RES * const result); @@ -659,14 +651,12 @@ typedef const MYSQLND_FIELD *(*func_mysqlnd_res__fetch_fields)(MYSQLND_RES * con typedef enum_func_status (*func_mysqlnd_res__read_result_metadata)(MYSQLND_RES * result, MYSQLND_CONN_DATA * conn); typedef const size_t * (*func_mysqlnd_res__fetch_lengths)(const MYSQLND_RES * const result); -typedef enum_func_status (*func_mysqlnd_res__store_result_fetch_data)(MYSQLND_CONN_DATA * const conn, MYSQLND_RES * result, MYSQLND_RES_METADATA * meta, MYSQLND_ROW_BUFFER ** row_buffers, zend_bool binary_protocol); +typedef enum_func_status (*func_mysqlnd_res__store_result_fetch_data)(MYSQLND_CONN_DATA * const conn, MYSQLND_RES * result, MYSQLND_RES_METADATA * meta, MYSQLND_ROW_BUFFER ** row_buffers, bool binary_protocol); typedef void (*func_mysqlnd_res__free_result_buffers)(MYSQLND_RES * result); /* private */ -typedef enum_func_status (*func_mysqlnd_res__free_result)(MYSQLND_RES * result, const zend_bool implicit); -typedef void (*func_mysqlnd_res__free_result_internal)(MYSQLND_RES *result); +typedef enum_func_status (*func_mysqlnd_res__free_result)(MYSQLND_RES * result, const bool implicit); typedef void (*func_mysqlnd_res__free_result_contents)(MYSQLND_RES *result); typedef void (*func_mysqlnd_res__free_buffered_data)(MYSQLND_RES *result); -typedef void (*func_mysqlnd_res__unbuffered_free_last_data)(MYSQLND_RES *result); typedef MYSQLND_RES_METADATA * (*func_mysqlnd_res__result_meta_init)(MYSQLND_RES *result, unsigned int field_count); @@ -679,8 +669,6 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_res) func_mysqlnd_res__store_result store_result; func_mysqlnd_res__fetch_into fetch_into; func_mysqlnd_res__fetch_row_c fetch_row_c; - func_mysqlnd_res__fetch_all fetch_all; - func_mysqlnd_res__fetch_field_data fetch_field_data; func_mysqlnd_res__num_rows num_rows; func_mysqlnd_res__num_fields num_fields; func_mysqlnd_res__skip_result skip_result; @@ -695,7 +683,6 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_res) func_mysqlnd_res__store_result_fetch_data store_result_fetch_data; func_mysqlnd_res__free_result_buffers free_result_buffers; func_mysqlnd_res__free_result free_result; - func_mysqlnd_res__free_result_internal free_result_internal; func_mysqlnd_res__free_result_contents free_result_contents; func_mysqlnd_res__result_meta_init result_meta_init; @@ -710,7 +697,6 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_res) typedef uint64_t (*func_mysqlnd_result_unbuffered__num_rows)(const MYSQLND_RES_UNBUFFERED * const result); typedef const size_t * (*func_mysqlnd_result_unbuffered__fetch_lengths)(const MYSQLND_RES_UNBUFFERED * const result); -typedef void (*func_mysqlnd_result_unbuffered__free_last_data)(MYSQLND_RES_UNBUFFERED * result, MYSQLND_STATS * const global_stats); typedef void (*func_mysqlnd_result_unbuffered__free_result)(MYSQLND_RES_UNBUFFERED * const result, MYSQLND_STATS * const global_stats); MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_unbuffered) @@ -719,13 +705,10 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_unbuffered) func_mysqlnd_res__row_decoder row_decoder; func_mysqlnd_result_unbuffered__num_rows num_rows; func_mysqlnd_result_unbuffered__fetch_lengths fetch_lengths; - func_mysqlnd_result_unbuffered__free_last_data free_last_data; func_mysqlnd_result_unbuffered__free_result free_result; }; typedef uint64_t (*func_mysqlnd_result_buffered__num_rows)(const MYSQLND_RES_BUFFERED * const result); -typedef enum_func_status (*func_mysqlnd_result_buffered__initialize_result_set_rest)(MYSQLND_RES_BUFFERED * const result, MYSQLND_RES_METADATA * const meta, - MYSQLND_STATS * stats, const zend_bool int_and_float_native); typedef const size_t * (*func_mysqlnd_result_buffered__fetch_lengths)(const MYSQLND_RES_BUFFERED * const result); typedef enum_func_status (*func_mysqlnd_result_buffered__data_seek)(MYSQLND_RES_BUFFERED * const result, const uint64_t row); typedef void (*func_mysqlnd_result_buffered__free_result)(MYSQLND_RES_BUFFERED * const result); @@ -737,7 +720,6 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_buffered) func_mysqlnd_result_buffered__num_rows num_rows; func_mysqlnd_result_buffered__fetch_lengths fetch_lengths; func_mysqlnd_result_buffered__data_seek data_seek; - func_mysqlnd_result_buffered__initialize_result_set_rest initialize_result_set_rest; func_mysqlnd_result_buffered__free_result free_result; }; @@ -770,14 +752,14 @@ typedef enum_func_status (*func_mysqlnd_stmt__execute)(MYSQLND_STMT * const stmt typedef MYSQLND_RES * (*func_mysqlnd_stmt__use_result)(MYSQLND_STMT * const stmt); typedef MYSQLND_RES * (*func_mysqlnd_stmt__store_result)(MYSQLND_STMT * const stmt); typedef MYSQLND_RES * (*func_mysqlnd_stmt__get_result)(MYSQLND_STMT * const stmt); -typedef zend_bool (*func_mysqlnd_stmt__more_results)(const MYSQLND_STMT * const stmt); +typedef bool (*func_mysqlnd_stmt__more_results)(const MYSQLND_STMT * const stmt); typedef enum_func_status (*func_mysqlnd_stmt__next_result)(MYSQLND_STMT * const stmt); typedef enum_func_status (*func_mysqlnd_stmt__free_result)(MYSQLND_STMT * const stmt); typedef enum_func_status (*func_mysqlnd_stmt__seek_data)(const MYSQLND_STMT * const stmt, uint64_t row); typedef enum_func_status (*func_mysqlnd_stmt__reset)(MYSQLND_STMT * const stmt); -typedef enum_func_status (*func_mysqlnd_stmt__close_on_server)(MYSQLND_STMT * const stmt, zend_bool implicit); /* private */ -typedef enum_func_status (*func_mysqlnd_stmt__dtor)(MYSQLND_STMT * const stmt, zend_bool implicit); /* use this for mysqlnd_stmt_close */ -typedef enum_func_status (*func_mysqlnd_stmt__fetch)(MYSQLND_STMT * const stmt, zend_bool * const fetched_anything); +typedef enum_func_status (*func_mysqlnd_stmt__close_on_server)(MYSQLND_STMT * const stmt, bool implicit); /* private */ +typedef enum_func_status (*func_mysqlnd_stmt__dtor)(MYSQLND_STMT * const stmt, bool implicit); /* use this for mysqlnd_stmt_close */ +typedef enum_func_status (*func_mysqlnd_stmt__fetch)(MYSQLND_STMT * const stmt, bool * const fetched_anything); typedef enum_func_status (*func_mysqlnd_stmt__bind_parameters)(MYSQLND_STMT * const stmt, MYSQLND_PARAM_BIND * const param_bind); typedef enum_func_status (*func_mysqlnd_stmt__bind_one_parameter)(MYSQLND_STMT * const stmt, unsigned int param_no, zval * const zv, zend_uchar type); typedef enum_func_status (*func_mysqlnd_stmt__refresh_bind_param)(MYSQLND_STMT * const stmt); @@ -802,7 +784,7 @@ typedef MYSQLND_RESULT_BIND*(*func_mysqlnd_stmt__alloc_result_bind)(MYSQLND_STMT typedef void (*func_mysqlnd_stmt__free_parameter_bind)(MYSQLND_STMT * const stmt, MYSQLND_PARAM_BIND *); typedef void (*func_mysqlnd_stmt__free_result_bind)(MYSQLND_STMT * const stmt, MYSQLND_RESULT_BIND *); typedef unsigned int (*func_mysqlnd_stmt__server_status)(const MYSQLND_STMT * const stmt); -typedef enum_func_status (*func_mysqlnd_stmt__generate_execute_request)(MYSQLND_STMT * const s, zend_uchar ** request, size_t *request_len, zend_bool * free_buffer); +typedef enum_func_status (*func_mysqlnd_stmt__generate_execute_request)(MYSQLND_STMT * const s, zend_uchar ** request, size_t *request_len, bool * free_buffer); typedef enum_func_status (*func_mysqlnd_stmt__parse_execute_response)(MYSQLND_STMT * const s, enum_mysqlnd_parse_exec_response_type type); typedef void (*func_mysqlnd_stmt__free_stmt_content)(MYSQLND_STMT * const s); typedef enum_func_status (*func_mysqlnd_stmt__flush)(MYSQLND_STMT * const stmt); @@ -871,7 +853,7 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_stmt) struct st_mysqlnd_vio_data { php_stream *stream; - zend_bool ssl; + bool ssl; MYSQLND_VIO_OPTIONS options; #ifdef MYSQLND_DO_WIRE_CHECK_BEFORE_COMMAND zend_uchar last_command; @@ -879,7 +861,7 @@ struct st_mysqlnd_vio_data zend_uchar unused_pad1; #endif - zend_bool persistent; + bool persistent; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_vio) m; }; @@ -889,7 +871,7 @@ struct st_mysqlnd_vio { struct st_mysqlnd_vio_data * data; - zend_bool persistent; + bool persistent; }; @@ -974,22 +956,22 @@ struct st_mysqlnd_connection_data zval async_read_cb; zval async_err_cb; - zend_bool in_async_read_cb; - zend_bool in_async_err_cb; + bool in_async_read_cb; + bool in_async_err_cb; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_object_factory) object_factory; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_command) * command; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn_data) * m; /* persistent connection */ - zend_bool persistent; + bool persistent; }; struct st_mysqlnd_connection { MYSQLND_CONN_DATA * data; - zend_bool persistent; + bool persistent; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_conn) * m; }; @@ -1034,7 +1016,7 @@ typedef enum_func_status (*func_mysqlnd_protocol_payload_decoder_factory__send_c MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * payload_decoder_factory, const enum php_mysqlnd_server_command command, const zend_uchar * const arg, const size_t arg_len, - const zend_bool silent, + const bool silent, MYSQLND_CONNECTION_STATE * connection_state, MYSQLND_ERROR_INFO * error_info, @@ -1047,7 +1029,7 @@ typedef enum_func_status (*func_mysqlnd_protocol_payload_decoder_factory__send_c MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * const payload_decoder_factory, MYSQLND_ERROR_INFO * const error_info, MYSQLND_UPSERT_STATUS * const upsert_status, - const zend_bool ignore_upsert_status, /* actually used only by LOAD DATA. COM_QUERY and COM_EXECUTE handle the responses themselves */ + const bool ignore_upsert_status, /* actually used only by LOAD DATA. COM_QUERY and COM_EXECUTE handle the responses themselves */ MYSQLND_STRING * const last_message); typedef enum_func_status (*func_mysqlnd_protocol_payload_decoder_factory__send_command_handle_EOF)( @@ -1058,9 +1040,9 @@ typedef enum_func_status (*func_mysqlnd_protocol_payload_decoder_factory__send_c typedef enum_func_status (*func_mysqlnd_protocol_payload_decoder_factory__send_command_handle_response)( MYSQLND_PROTOCOL_PAYLOAD_DECODER_FACTORY * payload_decoder_factory, const enum mysqlnd_packet_type ok_packet, - const zend_bool silent, + const bool silent, const enum php_mysqlnd_server_command command, - const zend_bool ignore_upsert_status, /* actually used only by LOAD DATA. COM_QUERY and COM_EXECUTE handle the responses themselves */ + const bool ignore_upsert_status, /* actually used only by LOAD DATA. COM_QUERY and COM_EXECUTE handle the responses themselves */ MYSQLND_ERROR_INFO * error_info, MYSQLND_UPSERT_STATUS * upsert_status, @@ -1095,7 +1077,7 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_payload_decoder_factory) struct st_mysqlnd_protocol_payload_decoder_factory { MYSQLND_CONN_DATA * conn; - zend_bool persistent; + bool persistent; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_payload_decoder_factory) m; }; @@ -1105,7 +1087,7 @@ typedef struct st_mysqlnd_read_buffer { size_t offset; size_t size; size_t len; - zend_bool (*is_empty)(const struct st_mysqlnd_read_buffer *); + bool (*is_empty)(const struct st_mysqlnd_read_buffer *); void (*read)(struct st_mysqlnd_read_buffer *, size_t count, zend_uchar * dest); size_t (*bytes_left)(const struct st_mysqlnd_read_buffer *); void (*free_buffer)(struct st_mysqlnd_read_buffer **); @@ -1146,8 +1128,8 @@ MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_frame_codec) struct st_mysqlnd_protocol_frame_codec_data { php_stream *stream; - zend_bool compressed; - zend_bool ssl; + bool compressed; + bool ssl; uint64_t flags; char * sha256_server_public_key; @@ -1161,7 +1143,7 @@ struct st_mysqlnd_protocol_frame_codec_data zend_uchar packet_no; zend_uchar compressed_envelope_packet_no; - zend_bool persistent; + bool persistent; MYSQLND_CLASS_METHODS_TYPE(mysqlnd_protocol_packet_frame_codec) m; }; @@ -1173,7 +1155,7 @@ struct st_mysqlnd_protocol_frame_codec struct st_mysqlnd_protocol_frame_codec_data * data; - zend_bool persistent; + bool persistent; }; @@ -1188,50 +1170,30 @@ struct st_mysqlnd_result_metadata }; -#define def_mysqlnd_buffered_result_parent \ - MYSQLND_ROW_BUFFER *row_buffers; \ - uint64_t row_count; \ - uint64_t initialized_rows; \ - \ - /* Column lengths of current row - both buffered and unbuffered. For buffered results it duplicates the data found in **data */ \ - size_t *lengths; \ - \ - MYSQLND_MEMORY_POOL *result_set_memory_pool; \ - \ - unsigned int references; \ - \ - MYSQLND_ERROR_INFO error_info; \ - \ - unsigned int field_count; \ - zend_bool ps; \ - MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_buffered) m; \ - enum mysqlnd_buffered_type type; \ - void * unused1; \ - void * unused2; \ - void * unused3 - - -struct st_mysqlnd_buffered_result_parent +struct st_mysqlnd_buffered_result { - def_mysqlnd_buffered_result_parent; -}; + MYSQLND_CLASS_METHODS_TYPE(mysqlnd_result_buffered) m; + MYSQLND_ROW_BUFFER *row_buffers; + uint64_t row_count; -struct st_mysqlnd_buffered_result_zval -{ - def_mysqlnd_buffered_result_parent; + /* Column lengths of current row - both buffered and unbuffered. For buffered results it duplicates the data found in **data */ + size_t *lengths; - zval *data; - zval *data_cursor; -}; + MYSQLND_MEMORY_POOL *result_set_memory_pool; + unsigned int references; -struct st_mysqlnd_buffered_result_c -{ - def_mysqlnd_buffered_result_parent; + MYSQLND_ERROR_INFO error_info; + + unsigned int field_count; + MYSQLND_STMT_DATA *stmt; - zend_uchar *initialized; /* every row is a single bit */ uint64_t current_row; + + void * unused1; + void * unused2; + void * unused3; }; @@ -1241,7 +1203,6 @@ struct st_mysqlnd_unbuffered_result uint64_t row_count; /* For unbuffered (both normal and PS) */ - zval *last_row_data; MYSQLND_ROW_BUFFER last_row_buffer; /* @@ -1256,9 +1217,9 @@ struct st_mysqlnd_unbuffered_result unsigned int field_count; - zend_bool eof_reached; + bool eof_reached; - zend_bool ps; + MYSQLND_STMT_DATA *stmt; }; @@ -1268,6 +1229,9 @@ struct st_mysqlnd_res enum_mysqlnd_res_type type; unsigned int field_count; + zval *row_data; + bool free_row_data; + /* For metadata functions */ MYSQLND_RES_METADATA *meta; @@ -1291,7 +1255,7 @@ struct st_mysqlnd_param_bind struct st_mysqlnd_result_bind { zval zv; - zend_bool bound; + bool bound; }; @@ -1314,16 +1278,16 @@ struct st_mysqlnd_stmt_data MYSQLND_ERROR_INFO * error_info; MYSQLND_ERROR_INFO error_info_impl; - zend_bool update_max_length; + bool update_max_length; zend_ulong prefetch_rows; - zend_bool cursor_exists; + bool cursor_exists; mysqlnd_stmt_use_or_store_func default_rset_handler; zval execute_read_cb; zval execute_err_cb; - zend_bool in_execute_read_cb; - zend_bool in_execute_err_cb; + bool in_execute_read_cb; + bool in_execute_err_cb; MYSQLND_CMD_BUFFER execute_cmd_buffer; unsigned int execute_count;/* count how many times the stmt was executed */ |