summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd_structs.h
diff options
context:
space:
mode:
authorAndrey Hristov <andrey@php.net>2008-04-16 12:53:18 +0000
committerAndrey Hristov <andrey@php.net>2008-04-16 12:53:18 +0000
commitc931468b8818afb0f2b5b8a8b98ab9dfb4c1fecb (patch)
tree57370b64c66dbdf2c7f34c09550001deec34fa6a /ext/mysqlnd/mysqlnd_structs.h
parent372be75ef5a13fd8665d1af438582954d150d5cf (diff)
downloadphp-git-c931468b8818afb0f2b5b8a8b98ab9dfb4c1fecb.tar.gz
Update ext/mysql, ext/mysqli and ext/mysqlnd from development tree
Diffstat (limited to 'ext/mysqlnd/mysqlnd_structs.h')
-rw-r--r--ext/mysqlnd/mysqlnd_structs.h80
1 files changed, 44 insertions, 36 deletions
diff --git a/ext/mysqlnd/mysqlnd_structs.h b/ext/mysqlnd/mysqlnd_structs.h
index 334eef8061..d9cc7351f1 100644
--- a/ext/mysqlnd/mysqlnd_structs.h
+++ b/ext/mysqlnd/mysqlnd_structs.h
@@ -92,10 +92,10 @@ typedef struct st_mysqlnd_field
typedef struct st_mysqlnd_upsert_result
{
- unsigned int warning_count;
- unsigned int server_status;
- uint64 affected_rows;
- uint64 last_insert_id;
+ unsigned int warning_count;
+ unsigned int server_status;
+ uint64 affected_rows;
+ uint64 last_insert_id;
} mysqlnd_upsert_status;
@@ -212,7 +212,7 @@ typedef struct st_mysqlnd_stats
{
uint64 values[STAT_LAST];
#ifdef ZTS
- MUTEX_T LOCK_access;
+ MUTEX_T LOCK_access;
#endif
} MYSQLND_STATS;
@@ -257,7 +257,7 @@ struct st_mysqlnd_conn_methods
unsigned int (*get_error_no)(const MYSQLND * const conn);
const char * (*get_error_str)(const MYSQLND * const conn);
const char * (*get_sqlstate)(const MYSQLND * const conn);
- uint64 (*get_thread_id)(const MYSQLND * const conn);
+ uint64 (*get_thread_id)(const MYSQLND * const conn);
void (*get_statistics)(const MYSQLND * const conn, zval *return_value TSRMLS_DC ZEND_FILE_LINE_DC);
unsigned long (*get_server_version)(const MYSQLND * const conn);
@@ -270,8 +270,8 @@ struct st_mysqlnd_conn_methods
MYSQLND_RES * (*list_fields)(MYSQLND *conn, const char *table, const char *achtung_wild TSRMLS_DC);
MYSQLND_RES * (*list_method)(MYSQLND *conn, const char *query, const char *achtung_wild, char *par1 TSRMLS_DC);
- uint64 (*get_last_insert_id)(const MYSQLND * const conn);
- uint64 (*get_affected_rows)(const MYSQLND * const conn);
+ uint64 (*get_last_insert_id)(const MYSQLND * const conn);
+ uint64 (*get_affected_rows)(const MYSQLND * const conn);
unsigned int (*get_warning_count)(const MYSQLND * const conn);
unsigned int (*get_field_count)(const MYSQLND * const conn);
@@ -302,14 +302,15 @@ struct st_mysqlnd_res_methods
MYSQLND_ROW_C (*fetch_row_c)(MYSQLND_RES *result TSRMLS_DC);
void (*fetch_all)(MYSQLND_RES *result, unsigned int flags, zval *return_value TSRMLS_DC ZEND_FILE_LINE_DC);
void (*fetch_field_data)(MYSQLND_RES *result, unsigned int offset, zval *return_value TSRMLS_DC);
- uint64 (*num_rows)(const MYSQLND_RES * const result);
+ uint64 (*num_rows)(const MYSQLND_RES * const result);
unsigned int (*num_fields)(const MYSQLND_RES * const result);
enum_func_status (*skip_result)(MYSQLND_RES * const result TSRMLS_DC);
enum_func_status (*seek_data)(MYSQLND_RES * result, uint64 row TSRMLS_DC);
MYSQLND_FIELD_OFFSET (*seek_field)(MYSQLND_RES * const result, MYSQLND_FIELD_OFFSET field_offset);
MYSQLND_FIELD_OFFSET (*field_tell)(const MYSQLND_RES * const result);
- MYSQLND_FIELD * (*fetch_field)(MYSQLND_RES * const result TSRMLS_DC);
- MYSQLND_FIELD * (*fetch_field_direct)(MYSQLND_RES * const result, MYSQLND_FIELD_OFFSET fieldnr TSRMLS_DC);
+ const MYSQLND_FIELD *(*fetch_field)(MYSQLND_RES * const result TSRMLS_DC);
+ const MYSQLND_FIELD *(*fetch_field_direct)(MYSQLND_RES * const result, MYSQLND_FIELD_OFFSET fieldnr TSRMLS_DC);
+ const MYSQLND_FIELD *(*fetch_fields)(MYSQLND_RES * const result TSRMLS_DC);
enum_func_status (*read_result_metadata)(MYSQLND_RES *result, MYSQLND *conn TSRMLS_DC);
unsigned long * (*fetch_lengths)(MYSQLND_RES * const result);
@@ -325,8 +326,9 @@ struct st_mysqlnd_res_methods
struct st_mysqlnd_res_meta_methods
{
- MYSQLND_FIELD * (*fetch_field)(MYSQLND_RES_METADATA * const meta TSRMLS_DC);
- MYSQLND_FIELD * (*fetch_field_direct)(const MYSQLND_RES_METADATA * const meta, MYSQLND_FIELD_OFFSET fieldnr TSRMLS_DC);
+ const MYSQLND_FIELD * (*fetch_field)(MYSQLND_RES_METADATA * const meta TSRMLS_DC);
+ const MYSQLND_FIELD * (*fetch_field_direct)(const MYSQLND_RES_METADATA * const meta, MYSQLND_FIELD_OFFSET fieldnr TSRMLS_DC);
+ const MYSQLND_FIELD * (*fetch_fields)(MYSQLND_RES_METADATA * const meta TSRMLS_DC);
MYSQLND_FIELD_OFFSET (*field_tell)(const MYSQLND_RES_METADATA * const meta);
enum_func_status (*read_metadata)(MYSQLND_RES_METADATA * const meta, MYSQLND *conn TSRMLS_DC);
MYSQLND_RES_METADATA * (*clone_metadata)(const MYSQLND_RES_METADATA * const meta, zend_bool persistent TSRMLS_DC);
@@ -350,17 +352,20 @@ struct st_mysqlnd_stmt_methods
enum_func_status (*fetch)(MYSQLND_STMT * const stmt, zend_bool * const fetched_anything TSRMLS_DC);
- enum_func_status (*bind_param)(MYSQLND_STMT * const stmt, MYSQLND_PARAM_BIND * const param_bind TSRMLS_DC);
+ enum_func_status (*bind_parameters)(MYSQLND_STMT * const stmt, MYSQLND_PARAM_BIND * const param_bind TSRMLS_DC);
+ enum_func_status (*bind_one_parameter)(MYSQLND_STMT * const stmt, unsigned int param_no, zval * const zv, zend_uchar type TSRMLS_DC);
enum_func_status (*refresh_bind_param)(MYSQLND_STMT * const stmt TSRMLS_DC);
+ void (*set_param_bind_dtor)(MYSQLND_STMT * const stmt, void (*param_bind_dtor)(MYSQLND_PARAM_BIND *) TSRMLS_DC);
enum_func_status (*bind_result)(MYSQLND_STMT * const stmt, MYSQLND_RESULT_BIND * const result_bind TSRMLS_DC);
+ void (*set_result_bind_dtor)(MYSQLND_STMT * const stmt, void (*result_bind_dtor)(MYSQLND_RESULT_BIND *) TSRMLS_DC);
enum_func_status (*send_long_data)(MYSQLND_STMT * const stmt, unsigned int param_num,
const char * const data, unsigned long length TSRMLS_DC);
- MYSQLND_RES * (*get_parameter_metadata)(MYSQLND_STMT * const stmt);
- MYSQLND_RES * (*get_result_metadata)(MYSQLND_STMT * const stmt TSRMLS_DC);
+ MYSQLND_RES * (*get_parameter_metadata)(MYSQLND_STMT * const stmt);
+ MYSQLND_RES * (*get_result_metadata)(MYSQLND_STMT * const stmt TSRMLS_DC);
- uint64 (*get_last_insert_id)(const MYSQLND_STMT * const stmt);
- uint64 (*get_affected_rows)(const MYSQLND_STMT * const stmt);
- uint64 (*get_num_rows)(const MYSQLND_STMT * const stmt);
+ uint64 (*get_last_insert_id)(const MYSQLND_STMT * const stmt);
+ uint64 (*get_affected_rows)(const MYSQLND_STMT * const stmt);
+ uint64 (*get_num_rows)(const MYSQLND_STMT * const stmt);
unsigned int (*get_param_count)(const MYSQLND_STMT * const stmt);
unsigned int (*get_field_count)(const MYSQLND_STMT * const stmt);
@@ -387,7 +392,7 @@ struct st_mysqlnd_connection
char *passwd;
unsigned int *passwd_len;
char *scheme;
- uint64 thread_id;
+ uint64 thread_id;
char *server_version;
char *host_info;
unsigned char *scramble;
@@ -493,22 +498,22 @@ struct st_mysqlnd_result_metadata
struct st_mysqlnd_background_buffered_result
{
- zval ***data;
- uint64 data_size;
- zval ***data_cursor;
+ zval ***data;
+ uint64 data_size;
+ zval ***data_cursor;
MYSQLND_MEMORY_POOL_CHUNK **row_buffers;
- uint64 row_count;
- uint64 initialized_rows;
- zend_bool persistent;
+ uint64 row_count;
+ uint64 initialized_rows;
+ zend_bool persistent;
- MYSQLND_QCACHE *qcache;
- unsigned int references;
+ MYSQLND_QCACHE *qcache;
+ unsigned int references;
- zend_bool decode_in_foreground;
+ zend_bool decode_in_foreground;
#ifdef ZTS
- zend_bool bg_fetch_finished;
- MUTEX_T LOCK;
+ zend_bool bg_fetch_finished;
+ MUTEX_T LOCK;
#endif
mysqlnd_error_info error_info;
@@ -521,8 +526,8 @@ struct st_mysqlnd_buffered_result
zval **data;
zval **data_cursor;
MYSQLND_MEMORY_POOL_CHUNK **row_buffers;
- uint64 row_count;
- uint64 initialized_rows;
+ uint64 row_count;
+ uint64 initialized_rows;
zend_bool persistent;
MYSQLND_QCACHE *qcache;
@@ -538,7 +543,7 @@ struct st_mysqlnd_unbuffered_result
zval **last_row_data;
MYSQLND_MEMORY_POOL_CHUNK *last_row_buffer;
- uint64 row_count;
+ uint64 row_count;
zend_bool eof_reached;
};
@@ -565,10 +570,10 @@ struct st_mysqlnd_res
*/
unsigned long *lengths;
- php_mysql_packet_row *row_packet; /* Unused for PS */
+ php_mysql_packet_row *row_packet;
/* zval cache */
- MYSQLND_THD_ZVAL_PCACHE *zval_cache;
+ MYSQLND_THD_ZVAL_PCACHE *zval_cache;
};
@@ -615,6 +620,9 @@ struct st_mysqlnd_stmt
MYSQLND_CMD_BUFFER cmd_buffer;
unsigned int execute_count;/* count how many times the stmt was executed */
+ void (*param_bind_dtor)(MYSQLND_PARAM_BIND *);
+ void (*result_bind_dtor)(MYSQLND_RESULT_BIND *);
+
struct st_mysqlnd_stmt_methods *m;
};