[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c
uw Tue, 25 Jan 2011 12:51:29 + Revision: http://svn.php.net/viewvc?view=revisionrevision=307730 Log: Always bail about deprecation, make warning visible. It is documented to be deprecated in the 5.3 manual but the deprecation warning was tied to trace_mode=1 (as of 2002 or the like). Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2011-01-25 12:39:39 UTC (rev 307729) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2011-01-25 12:51:29 UTC (rev 307730) @@ -1806,9 +1806,7 @@ Z_STRLEN_P(return_value) = mysql_escape_string(Z_STRVAL_P(return_value), str, str_len); Z_TYPE_P(return_value) = IS_STRING; - if (MySG(trace_mode)){ - php_error_docref(function.mysql-real-escape-string TSRMLS_CC, E_DEPRECATED, This function is deprecated; use mysql_real_escape_string() instead.); - } + php_error_docref(function.mysql-real-escape-string TSRMLS_CC, E_DEPRECATED, This function is deprecated; use mysql_real_escape_string() instead.); } /* }}} */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c
andrey Fri, 14 Jan 2011 20:02:49 + Revision: http://svn.php.net/viewvc?view=revisionrevision=307492 Log: merge from branch Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2011-01-14 19:34:55 UTC (rev 307491) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2011-01-14 20:02:49 UTC (rev 307492) @@ -762,6 +762,7 @@ } if (!passwd) { passwd = MySG(default_password); + passwd_len = passwd? strlen(passwd):0; } /* disable local infile option for open_basedir */ @@ -848,7 +849,7 @@ #ifndef MYSQL_USE_MYSQLND if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, client_flags)==NULL) #else - if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) + if (mysqlnd_connect(mysql-conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) #endif { /* Populate connect error globals so that the error functions can read them */ @@ -896,7 +897,7 @@ #ifndef MYSQL_USE_MYSQLND if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, client_flags)==NULL) #else - if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) + if (mysqlnd_connect(mysql-conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) #endif { php_error_docref(NULL TSRMLS_CC, E_WARNING, Link to server lost, unable to reconnect); @@ -975,7 +976,7 @@ #ifndef MYSQL_USE_MYSQLND if (mysql_real_connect(mysql-conn, host, user, passwd, NULL, port, socket, client_flags)==NULL) #else - if (mysqlnd_connect(mysql-conn, host, user, passwd, 0, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) + if (mysqlnd_connect(mysql-conn, host, user, passwd, passwd_len, NULL, 0, port, socket, client_flags TSRMLS_CC) == NULL) #endif { /* Populate connect error globals so that the error functions can read them */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c tests/mysql_db_name.phpt tests/mysql_list_dbs.phpt
andrey Tue, 17 Aug 2010 15:37:44 + Revision: http://svn.php.net/viewvc?view=revisionrevision=302392 Log: Deprecate mysql_list_dbs, as mysql_list_tables is already deprecated. As well as mysql_list Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c U php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt U php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2010-08-17 15:15:35 UTC (rev 302391) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-08-17 15:37:44 UTC (rev 302392) @@ -1575,11 +1575,13 @@ id = php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU); CHECK_LINK(id); } + php_error_docref(NULL TSRMLS_CC, E_DEPRECATED, This function is deprecated; use mysql_query() with SHOW DATABASES instead); ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, mysql_link, id, MySQL-Link, le_link, le_plink); PHPMY_UNBUFFERED_QUERY_CHECK(); + if ((mysql_result=mysql_list_dbs(mysql-conn, NULL))==NULL) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Unable to save MySQL query result); RETURN_FALSE; Modified: php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt === --- php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt2010-08-17 15:15:35 UTC (rev 302391) +++ php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt2010-08-17 15:37:44 UTC (rev 302392) @@ -58,6 +58,8 @@ print done!\n; ? --EXPECTF-- +Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d + Warning: mysql_db_name(): Unable to jump to row -1 on MySQL result index %d in %s on line %d Warning: mysql_db_name(): Unable to jump to row %d on MySQL result index %d in %s on line %d Modified: php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt === --- php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt 2010-08-17 15:15:35 UTC (rev 302391) +++ php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt 2010-08-17 15:37:44 UTC (rev 302392) @@ -51,4 +51,7 @@ require_once(clean_table.inc); ? --EXPECTF-- +Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d + +Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d done! -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c tests/mysql_db_name.phpt tests/mysql_list_dbs.phpt
andrey Tue, 17 Aug 2010 17:40:31 + Revision: http://svn.php.net/viewvc?view=revisionrevision=302395 Log: Use PHP_DEP_FE - good for reflection Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c U php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt U php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2010-08-17 17:14:33 UTC (rev 302394) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-08-17 17:40:31 UTC (rev 302395) @@ -251,8 +251,8 @@ #endif /* NETWARE */ PHP_FE(mysql_query, arginfo_mysql_query) PHP_FE(mysql_unbuffered_query, arginfo_mysql_query) - PHP_FE(mysql_db_query, arginfo_mysql_db_query) - PHP_FE(mysql_list_dbs, arginfo__optional_mysql_link) + PHP_DEP_FE(mysql_db_query, arginfo_mysql_db_query) + PHP_DEP_FE(mysql_list_dbs, arginfo__optional_mysql_link) PHP_DEP_FE(mysql_list_tables, arginfo_mysql_select_db) PHP_FE(mysql_list_fields, arginfo_mysql_list_fields) PHP_FE(mysql_list_processes, arginfo__optional_mysql_link) Modified: php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt === --- php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt2010-08-17 17:14:33 UTC (rev 302394) +++ php/php-src/trunk/ext/mysql/tests/mysql_db_name.phpt2010-08-17 17:40:31 UTC (rev 302395) @@ -58,6 +58,8 @@ print done!\n; ? --EXPECTF-- +Deprecated: Function mysql_list_dbs() is deprecated in %s on line %d + Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d Warning: mysql_db_name(): Unable to jump to row -1 on MySQL result index %d in %s on line %d Modified: php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt === --- php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt 2010-08-17 17:14:33 UTC (rev 302394) +++ php/php-src/trunk/ext/mysql/tests/mysql_list_dbs.phpt 2010-08-17 17:40:31 UTC (rev 302395) @@ -51,6 +51,8 @@ require_once(clean_table.inc); ? --EXPECTF-- +Deprecated: Function mysql_list_dbs() is deprecated in %s on line 15 + Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d Deprecated: mysql_list_dbs(): This function is deprecated; use mysql_query() with SHOW DATABASES instead in %s on line %d -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c
andrey Tue, 18 May 2010 16:35:17 + Revision: http://svn.php.net/viewvc?view=revisionrevision=299457 Log: And I thought I fixed that... Part of the previous changeset - remove duplicated code/ The ifdefs were for debug purposes. Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2010-05-18 15:18:32 UTC (rev 299456) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2010-05-18 16:35:17 UTC (rev 299457) @@ -2071,19 +2071,7 @@ Gets a result row as an enumerated array */ PHP_FUNCTION(mysql_fetch_row) { -#if 1 - MYSQL_RES *result; - zval*mysql_result; - - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r, mysql_result) == FAILURE) { - return; - } - ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result); - - mysqlnd_fetch_into(result, MYSQLND_FETCH_NUM, return_value, MYSQLND_MYSQL); -#else php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_NUM, 1, 0); -#endif } /* }}} */ @@ -2105,25 +2093,7 @@ Fetch a result row as an array (associative, numeric or both) */ PHP_FUNCTION(mysql_fetch_array) { -#if 1 php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, 0, 2, 0); -#else - MYSQL_RES *result; - zval*mysql_result; - longmode = MYSQLND_FETCH_BOTH; - - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r|l, mysql_result, mode) == FAILURE) { - return; - } - ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result); - - if (mode ~MYSQL_BOTH) { -php_error_docref(NULL TSRMLS_CC, E_WARNING, The result type should be either MYSQL_NUM, MYSQL_ASSOC or MYSQL_BOTH); -mode = MYSQL_BOTH; -} - - mysqlnd_fetch_into(result, mode, return_value, MYSQLND_MYSQL); -#endif } /* }}} */ @@ -2132,19 +2102,7 @@ Fetch a result row as an associative array */ PHP_FUNCTION(mysql_fetch_assoc) { -#if 1 php_mysql_fetch_hash(INTERNAL_FUNCTION_PARAM_PASSTHRU, MYSQL_ASSOC, 1, 0); -#else - MYSQL_RES *result; - zval*mysql_result; - - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r, mysql_result) == FAILURE) { - return; - } - ZEND_FETCH_RESOURCE(result, MYSQL_RES *, mysql_result, -1, MySQL result, le_result); - - mysqlnd_fetch_into(result, MYSQLND_FETCH_ASSOC, return_value, MYSQLND_MYSQL); -#endif } /* }}} */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c tests/bug48754.phpt
andrey Fri, 18 Sep 2009 10:46:51 + Revision: http://svn.php.net/viewvc?view=revisionrevision=288436 Log: Fix for bug#48754 mysql_close() crash php when no handle specified Bug: http://bugs.php.net/48754 (Verified) mysql_close() crash php when no handle specified Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c A php/php-src/trunk/ext/mysql/tests/bug48754.phpt Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2009-09-18 09:10:47 UTC (rev 288435) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2009-09-18 10:46:51 UTC (rev 288436) @@ -1001,6 +1001,7 @@ Close a MySQL connection */ PHP_FUNCTION(mysql_close) { + int resource_id; zval *mysql_link=NULL; php_mysql_conn *mysql; @@ -1014,16 +1015,25 @@ ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, NULL, MySG(default_link), MySQL-Link, le_link, le_plink); } - if (mysql_link) { /* explicit resource number */ - PHPMY_UNBUFFERED_QUERY_CHECK(); - zend_list_delete(Z_RESVAL_P(mysql_link)); + resource_id = mysql_link ? Z_RESVAL_P(mysql_link) : MySG(default_link); + PHPMY_UNBUFFERED_QUERY_CHECK(); +#ifdef MYSQL_USE_MYSQLND + { + int tmp; + if ((mysql = zend_list_find(resource_id, tmp)) tmp == le_plink) { + mysqlnd_end_psession(mysql-conn); + } } +#endif + zend_list_delete(resource_id); if (!mysql_link || (mysql_link Z_RESVAL_P(mysql_link)==MySG(default_link))) { - PHPMY_UNBUFFERED_QUERY_CHECK(); - zend_list_delete(MySG(default_link)); MySG(default_link) = -1; + if (mysql_link) { + /* on an explicit close of the default connection it had a refcount of 2 so we need one more call */ + zend_list_delete(resource_id); + } } RETURN_TRUE; Added: php/php-src/trunk/ext/mysql/tests/bug48754.phpt === --- php/php-src/trunk/ext/mysql/tests/bug48754.phpt (rev 0) +++ php/php-src/trunk/ext/mysql/tests/bug48754.phpt 2009-09-18 10:46:51 UTC (rev 288436) @@ -0,0 +1,92 @@ +--TEST-- +Bug #48754 (mysql_close() crash php when no handle specified) +--SKIPIF-- +?php +require_once('skipif.inc'); +require_once('skipifconnectfailure.inc'); +? +--FILE-- +?php +require_once('connect.inc'); + +function my_mysql_pconnect($host, $user, $passwd, $db, $port, $socket) { + if ($socket) + $host = sprintf(%s:%s, $host, $socket); + else if ($port) + $host = sprintf(%s:%s, $host, $port); + + if (!$link = mysql_pconnect($host, $user, $passwd, true)) { + printf([000-a] Cannot connect using host '%s', user '%s', password '', [%d] %s\n, + $host, $user, $passwd, + mysql_errno(), mysql_error()); + return false; + } + return $link; +} + +echo Explicit connection on close\n; +$link = my_mysql_connect($host, $user, $passwd, $db, $port, $socket); +$link1_thread_id = mysql_thread_id($link); +$default1_thread_id = mysql_thread_id(); +echo 'Expect same thread id for $link and default conn: '; +var_dump($link1_thread_id == $default1_thread_id); +var_dump($link); +mysql_close($link); +var_dump($link); + +// we sohuld have no default link anymore +mysql_close(); + +echo \nClosing default link\n; +$link = my_mysql_connect($host, $user, $passwd, $db, $port, $socket); +$link2_thread_id = mysql_thread_id($link); +$default2_thread_id = mysql_thread_id(); +echo 'Expect same thread id for $link and default conn but not the previous: '; +var_dump($link1_thread_id == $default1_thread_id $link1_thread_id != $link2_thread_id); +var_dump($link); +mysql_close(); +var_dump($link); +mysql_close($link); +var_dump($link); + +echo \nExplicit resource and pconnect\n; +$link = my_mysql_pconnect($host, $user, $passwd, $db, $port, $socket); +var_dump($link); +mysql_close($link); +var_dump($link); + +// we sohuld have no default link +mysql_close(); + +echo \nDefault link and pconnect\n; +$link = my_mysql_pconnect($host, $user, $passwd, $db, $port, $socket); +var_dump($link); +mysql_close(); +var_dump($link); +mysql_close($link); +var_dump($link); +? +--EXPECTF-- +Explicit connection on close +Expect same thread id for $link and default conn: bool(true) +resource(%d) of type (mysql link) +resource(%d) of type (Unknown) + +Warning: mysql_close(): no MySQL-Link resource supplied in %s on line %d + +Closing default link +Expect same thread id for $link and default conn but not the previous: bool(true) +resource(%d) of type (mysql link) +resource(%d) of type (mysql link) +resource(%d) of type
[PHP-CVS] svn: /php/php-src/trunk/ext/mysql/ php_mysql.c
iliaaTue, 28 Jul 2009 12:26:16 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286451 Log: Fixed compiler warning Changed paths: U php/php-src/trunk/ext/mysql/php_mysql.c Modified: php/php-src/trunk/ext/mysql/php_mysql.c === --- php/php-src/trunk/ext/mysql/php_mysql.c 2009-07-28 11:22:26 UTC (rev 286450) +++ php/php-src/trunk/ext/mysql/php_mysql.c 2009-07-28 12:26:16 UTC (rev 286451) @@ -625,7 +625,7 @@ int hashed_details_length, port = MYSQL_PORT; long client_flags = 0; php_mysql_conn *mysql=NULL; -#if !defined(MYSQL_USE_MYSQLND) !defined(MYSQL_HASH_SET_CHARSET) +#if !defined(MYSQL_USE_MYSQLND) !defined(MYSQL_HAS_SET_CHARSET) char *encoding; #endif #if MYSQL_VERSION_ID = 32230 -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php