diff options
Diffstat (limited to 'ext/mysql/php_mysql.c')
-rw-r--r-- | ext/mysql/php_mysql.c | 114 |
1 files changed, 57 insertions, 57 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index f4124d306b..e3535bc769 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -80,7 +80,7 @@ static int le_result, le_link, le_plink; #define SAFE_STRING(s) ((s)?(s):"") #if MYSQL_VERSION_ID > 32199 || defined(MYSQL_USE_MYSQLND) -# define mysql_row_length_type unsigned long +# define mysql_row_length_type zend_ulong # define HAVE_MYSQL_ERRNO #else # define mysql_row_length_type unsigned int @@ -485,7 +485,7 @@ static void _close_mysql_plink(zend_resource *rsrc TSRMLS_DC) static PHP_INI_MH(OnMySQLPort) { if (new_value != NULL) { /* default port */ - MySG(default_port) = atoi(new_value); + MySG(default_port) = atoi(new_value->val); } else { MySG(default_port) = -1; } @@ -662,7 +662,7 @@ PHP_RSHUTDOWN_FUNCTION(mysql) if (MySG(trace_mode)) { if (MySG(result_allocated)){ - php_error_docref("function.mysql-free-result" TSRMLS_CC, E_WARNING, "%lu result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query()", MySG(result_allocated)); + php_error_docref("function.mysql-free-result" TSRMLS_CC, E_WARNING, "%pu result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query()", MySG(result_allocated)); } } @@ -686,9 +686,9 @@ PHP_MINFO_FUNCTION(mysql) php_info_print_table_start(); php_info_print_table_header(2, "MySQL Support", "enabled"); - snprintf(buf, sizeof(buf), "%ld", MySG(num_persistent)); + snprintf(buf, sizeof(buf), ZEND_LONG_FMT, MySG(num_persistent)); php_info_print_table_row(2, "Active Persistent Links", buf); - snprintf(buf, sizeof(buf), "%ld", MySG(num_links)); + snprintf(buf, sizeof(buf), ZEND_LONG_FMT, MySG(num_links)); php_info_print_table_row(2, "Active Links", buf); php_info_print_table_row(2, "Client API version", mysql_get_client_info()); #if !defined (PHP_WIN32) && !defined (NETWARE) && !defined(MYSQL_USE_MYSQLND) @@ -725,14 +725,14 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) char *user = NULL, *passwd = NULL; char *host_and_port = NULL, *socket = NULL; char *tmp = NULL, *host = NULL; - int user_len = 0, passwd_len = 0, host_len = 0; + size_t user_len = 0, passwd_len = 0, host_len = 0; int port = MYSQL_PORT; - long client_flags = 0; + zend_long client_flags = 0; php_mysql_conn *mysql = NULL; #if MYSQL_VERSION_ID <= 32230 void (*handler) (int); #endif - long connect_timeout; + zend_long connect_timeout; zend_string *hashed_details = NULL; zend_bool free_host = 0, new_link = 0; @@ -774,7 +774,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) php_error_docref(NULL TSRMLS_CC, E_NOTICE, "SQL safe mode in effect - ignoring host/user/password information"); } user = php_get_current_user(TSRMLS_C); - hashed_details = STR_ALLOC(sizeof("mysql___") + strlen(user) - 1, 0); + hashed_details = zend_string_alloc(sizeof("mysql___") + strlen(user) - 1, 0); snprintf(hashed_details->val, hashed_details->len + 1, "mysql__%s_", user); client_flags = CLIENT_INTERACTIVE; } else { @@ -819,9 +819,9 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) #ifdef CLIENT_MULTI_STATEMENTS client_flags &= ~CLIENT_MULTI_STATEMENTS; /* don't allow multi_queries via connect parameter */ #endif - hashed_details = STR_ALLOC(sizeof("mysql____") + (host_and_port? strlen(host_and_port) : 0) + hashed_details = zend_string_alloc(sizeof("mysql____") + (host_and_port? strlen(host_and_port) : 0) + (user? strlen(user) : 0) + (passwd? strlen(passwd) : 0) + MAX_LENGTH_OF_LONG - 1, 0); - hashed_details->len = snprintf(hashed_details->val, hashed_details->len + 1, "mysql_%s_%s_%s_%ld", SAFE_STRING(host_and_port), SAFE_STRING(user), SAFE_STRING(passwd), client_flags); + hashed_details->len = snprintf(hashed_details->val, hashed_details->len + 1, "mysql_%s_%s_%s_" ZEND_LONG_FMT, SAFE_STRING(host_and_port), SAFE_STRING(user), SAFE_STRING(passwd), client_flags); } /* We cannot use mysql_port anymore in windows, need to use @@ -862,14 +862,14 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) zval new_le; if (MySG(max_links) != -1 && MySG(num_links) >= MySG(max_links)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open links (%ld)", MySG(num_links)); - STR_RELEASE(hashed_details); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open links (%pd)", MySG(num_links)); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } if (MySG(max_persistent) != -1 && MySG(num_persistent) >= MySG(max_persistent)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open persistent links (%ld)", MySG(num_persistent)); - STR_RELEASE(hashed_details); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open persistent links (%pd)", MySG(num_persistent)); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } /* create the link */ @@ -911,7 +911,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) MySG(connect_errno) = mysql_errno(mysql->conn); #endif free(mysql); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } mysql_options(mysql->conn, MYSQL_OPT_LOCAL_INFILE, (char *)&MySG(allow_local_infile)); @@ -920,14 +920,14 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) ZVAL_NEW_PERSISTENT_RES(&new_le, -1, mysql, le_plink); /* avoid bogus memleak report */ - phashed = STR_INIT(hashed_details->val, hashed_details->len, 1); + phashed = zend_string_init(hashed_details->val, hashed_details->len, 1); if (zend_hash_update(&EG(persistent_list), phashed, &new_le) == NULL) { - STR_RELEASE(phashed); + zend_string_release(phashed); free(mysql); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } - STR_RELEASE(phashed); + zend_string_release(phashed); MySG(num_persistent)++; MySG(num_links)++; } else { /* The link is in our list of persistent connections */ @@ -955,7 +955,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Link to server lost, unable to reconnect"); zend_hash_del(&EG(persistent_list), hashed_details); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } mysql_options(mysql->conn, MYSQL_OPT_LOCAL_INFILE, (char *)&MySG(allow_local_infile)); @@ -988,7 +988,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) GC_REFCOUNT(link)++; ZVAL_RES(return_value, link); php_mysql_set_default_link(link TSRMLS_CC); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_CLEANUP(); return; } else { @@ -997,8 +997,8 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) } if (MySG(max_links) != -1 && MySG(num_links) >= MySG(max_links)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open links (%ld)", MySG(num_links)); - STR_RELEASE(hashed_details); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Too many open links (%pd)", MySG(num_links)); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } @@ -1016,7 +1016,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) if (!mysql->conn) { MySG(connect_error) = estrdup("OOM"); php_error_docref(NULL TSRMLS_CC, E_WARNING, "OOM"); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); efree(mysql); MYSQL_DO_CONNECT_RETURN_FALSE(); } @@ -1044,7 +1044,7 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) #ifdef MYSQL_USE_MYSQLND mysqlnd_close(mysql->conn, MYSQLND_CLOSE_DISCONNECTED); #endif - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); efree(mysql); MYSQL_DO_CONNECT_RETURN_FALSE(); } @@ -1057,14 +1057,14 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) ZVAL_NEW_RES(&new_index_ptr, -1, Z_RES_P(return_value), le_index_ptr); if (zend_hash_update(&EG(regular_list), hashed_details, &new_index_ptr) == NULL) { zval_ptr_dtor(return_value); - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); MYSQL_DO_CONNECT_RETURN_FALSE(); } Z_ADDREF_P(return_value); MySG(num_links)++; } - STR_RELEASE(hashed_details); + zend_string_release(hashed_details); php_mysql_set_default_link(Z_RES_P(return_value) TSRMLS_CC); MYSQL_DO_CONNECT_CLEANUP(); } @@ -1145,7 +1145,7 @@ PHP_FUNCTION(mysql_close) PHP_FUNCTION(mysql_select_db) { char *db; - int db_len; + size_t db_len; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1299,7 +1299,7 @@ PHP_FUNCTION(mysql_thread_id) ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, mysql_link, -1, "MySQL-Link", le_link, le_plink); } - RETURN_LONG((long) mysql_thread_id(mysql->conn)); + RETURN_LONG((zend_long) mysql_thread_id(mysql->conn)); } /* }}} */ @@ -1372,7 +1372,7 @@ PHP_FUNCTION(mysql_client_encoding) PHP_FUNCTION(mysql_set_charset) { char *csname; - int csname_len; + size_t csname_len; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1404,7 +1404,7 @@ PHP_FUNCTION(mysql_set_charset) PHP_FUNCTION(mysql_create_db) { char *db; - int db_len; + size_t db_len; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1435,7 +1435,7 @@ PHP_FUNCTION(mysql_create_db) PHP_FUNCTION(mysql_drop_db) { char *db; - int db_len; + size_t db_len; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1555,7 +1555,7 @@ static void php_mysql_do_query_general(php_mysql_conn *mysql, char *query, int q static void php_mysql_do_query(INTERNAL_FUNCTION_PARAMETERS, int use_store) { char *query; - int query_len; + size_t query_len; zval *mysql_link = NULL; php_mysql_conn *mysql; @@ -1596,7 +1596,7 @@ PHP_FUNCTION(mysql_unbuffered_query) PHP_FUNCTION(mysql_db_query) { char *db, *query; - int db_len, query_len; + size_t db_len, query_len; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1657,7 +1657,7 @@ PHP_FUNCTION(mysql_list_dbs) PHP_FUNCTION(mysql_list_tables) { char *db; - int db_len; + size_t db_len; php_mysql_conn *mysql; zval *mysql_link = NULL; MYSQL_RES *mysql_result; @@ -1694,7 +1694,7 @@ PHP_FUNCTION(mysql_list_tables) PHP_FUNCTION(mysql_list_fields) { char *db, *table; - int db_len, table_len; + size_t db_len, table_len; zval *mysql_link = NULL; php_mysql_conn *mysql; MYSQL_RES *mysql_result; @@ -1837,7 +1837,7 @@ PHP_FUNCTION(mysql_affected_rows) } /* conversion from int64 to long happing here */ - RETURN_LONG((long)mysql_affected_rows(mysql->conn)); + RETURN_LONG((zend_long)mysql_affected_rows(mysql->conn)); } /* }}} */ @@ -1846,7 +1846,7 @@ PHP_FUNCTION(mysql_affected_rows) PHP_FUNCTION(mysql_escape_string) { char *str; - int str_len; + size_t str_len; zend_string *escaped_str; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len) == FAILURE) { @@ -1857,7 +1857,7 @@ PHP_FUNCTION(mysql_escape_string) * we don't realloc() down to the real size since it'd most probably not * be worth it */ - escaped_str = STR_ALLOC(str_len * 2, 0); + escaped_str = zend_string_alloc(str_len * 2, 0); escaped_str->len = mysql_escape_string(escaped_str->val, str, str_len); php_error_docref("function.mysql-real-escape-string" TSRMLS_CC, E_DEPRECATED, "This function is deprecated; use mysql_real_escape_string() instead."); @@ -1870,7 +1870,7 @@ PHP_FUNCTION(mysql_escape_string) PHP_FUNCTION(mysql_real_escape_string) { char *str; - int str_len; + size_t str_len; zend_string *new_str; php_mysql_conn *mysql; zval *mysql_link = NULL; @@ -1891,7 +1891,7 @@ PHP_FUNCTION(mysql_real_escape_string) * we don't realloc() down to the real size since it'd most probably not * be worth it */ - new_str = STR_ALLOC(str_len * 2, 0); + new_str = zend_string_alloc(str_len * 2, 0); new_str->len = mysql_real_escape_string(mysql->conn, new_str->val, str, str_len); RETURN_NEW_STR(new_str); @@ -1918,7 +1918,7 @@ PHP_FUNCTION(mysql_insert_id) } /* conversion from int64 to long happing here */ - RETURN_LONG((long)mysql_insert_id(mysql->conn)); + RETURN_LONG((zend_long)mysql_insert_id(mysql->conn)); } /* }}} */ @@ -1927,7 +1927,7 @@ PHP_FUNCTION(mysql_insert_id) PHP_FUNCTION(mysql_result) { zval *result, *field=NULL; - long row; + zend_long row; MYSQL_RES *mysql_result; #ifndef MYSQL_USE_MYSQLND MYSQL_ROW sql_row; @@ -1947,7 +1947,7 @@ Q: String or long first? ZEND_FETCH_RESOURCE(mysql_result, MYSQL_RES *, result, -1, "MySQL result", le_result); if (row < 0 || row >= (int)mysql_num_rows(mysql_result)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to jump to row %ld on MySQL result index %ld", row, Z_RES_P(result)->handle); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to jump to row %pd on MySQL result index %pd", row, Z_RES_P(result)->handle); RETURN_FALSE; } mysql_data_seek(mysql_result, row); @@ -1977,7 +1977,7 @@ Q: String or long first? i++; } if (!tmp_field) { /* no match found */ - php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s%s%s not found in MySQL result index %ld", + php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s%s%s not found in MySQL result index %pd", (table_name?table_name:""), (table_name?".":""), field_name, Z_RES_P(result)->handle); efree(field_name); if (table_name) { @@ -2040,7 +2040,7 @@ PHP_FUNCTION(mysql_num_rows) ZEND_FETCH_RESOURCE(mysql_result, MYSQL_RES *, result, -1, "MySQL result", le_result); /* conversion from int64 to long happing here */ - RETURN_LONG((long) mysql_num_rows(mysql_result)); + RETURN_LONG((zend_long) mysql_num_rows(mysql_result)); } /* }}} */ @@ -2063,7 +2063,7 @@ PHP_FUNCTION(mysql_num_fields) /* {{{ php_mysql_fetch_hash */ -static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, long result_type, int expected_args, int into_object) +static void php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, zend_long result_type, int expected_args, int into_object) { MYSQL_RES *mysql_result; zval *res, *ctor_params = NULL; @@ -2271,7 +2271,7 @@ PHP_FUNCTION(mysql_fetch_assoc) PHP_FUNCTION(mysql_data_seek) { zval *result; - long offset; + zend_long offset; MYSQL_RES *mysql_result; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result, &offset)) { @@ -2281,7 +2281,7 @@ PHP_FUNCTION(mysql_data_seek) ZEND_FETCH_RESOURCE(mysql_result, MYSQL_RES *, result, -1, "MySQL result", le_result); if (offset < 0 || offset >= (int)mysql_num_rows(mysql_result)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Offset %ld is invalid for MySQL result index %ld (or the query data is unbuffered)", offset, Z_RES_P(result)->handle); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Offset %pd is invalid for MySQL result index %pd (or the query data is unbuffered)", offset, Z_RES_P(result)->handle); RETURN_FALSE; } mysql_data_seek(mysql_result, offset); @@ -2398,7 +2398,7 @@ static char *php_mysql_get_field_name(int field_type) PHP_FUNCTION(mysql_fetch_field) { zval *result; - long field=0; + zend_long field=0; MYSQL_RES *mysql_result; const MYSQL_FIELD *mysql_field; @@ -2421,7 +2421,7 @@ PHP_FUNCTION(mysql_fetch_field) object_init(return_value); #if MYSQL_USE_MYSQLND - add_property_str(return_value, "name", STR_COPY(mysql_field->sname)); + add_property_str(return_value, "name", zend_string_copy(mysql_field->sname)); #else add_property_stringl(return_value, "name", (mysql_field->name?mysql_field->name:""), mysql_field->name_length); #endif @@ -2445,7 +2445,7 @@ PHP_FUNCTION(mysql_fetch_field) PHP_FUNCTION(mysql_field_seek) { zval *result; - long offset; + zend_long offset; MYSQL_RES *mysql_result; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result, &offset) == FAILURE) { @@ -2454,7 +2454,7 @@ PHP_FUNCTION(mysql_field_seek) ZEND_FETCH_RESOURCE(mysql_result, MYSQL_RES *, result, -1, "MySQL result", le_result); if (offset < 0 || offset >= (int)mysql_num_fields(mysql_result)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Field %ld is invalid for MySQL result index %ld", offset, Z_RES_P(result)->handle); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Field %pd is invalid for MySQL result index %pd", offset, Z_RES_P(result)->handle); RETURN_FALSE; } mysql_field_seek(mysql_result, offset); @@ -2473,7 +2473,7 @@ PHP_FUNCTION(mysql_field_seek) static void php_mysql_field_info(INTERNAL_FUNCTION_PARAMETERS, int entry_type) { zval *result; - long field; + zend_long field; MYSQL_RES *mysql_result; const MYSQL_FIELD *mysql_field = {0}; char buf[512]; @@ -2486,7 +2486,7 @@ static void php_mysql_field_info(INTERNAL_FUNCTION_PARAMETERS, int entry_type) ZEND_FETCH_RESOURCE(mysql_result, MYSQL_RES *, result, -1, "MySQL result", le_result); if (field < 0 || field >= (int)mysql_num_fields(mysql_result)) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Field %ld is invalid for MySQL result index %ld", field, Z_RES_P(result)->handle); + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Field %pd is invalid for MySQL result index %pd", field, Z_RES_P(result)->handle); RETURN_FALSE; } mysql_field_seek(mysql_result, field); @@ -2497,7 +2497,7 @@ static void php_mysql_field_info(INTERNAL_FUNCTION_PARAMETERS, int entry_type) switch (entry_type) { case PHP_MYSQL_FIELD_NAME: #ifdef MYSQL_USE_MYSQLND - RETVAL_STR(STR_COPY(mysql_field->sname)); + RETVAL_STR(zend_string_copy(mysql_field->sname)); #else RETVAL_STRING(mysql_field->name); #endif |