tony2001 Wed Jan 26 20:11:16 2005 EDT
Modified files: (Branch: PHP_5_0)
/php-src/ext/mysqli mysqli_api.c
Log:
fix segfault when invalid field offset is passed to
mysqli_fetch_field_direct()
http://cvs.php.net/diff.php/php-src/ext/mysqli/mysqli_api.c?r1=1.87.2.8&r2=1.87.2.9&ty=u
Index: php-src/ext/mysqli/mysqli_api.c
diff -u php-src/ext/mysqli/mysqli_api.c:1.87.2.8
php-src/ext/mysqli/mysqli_api.c:1.87.2.9
--- php-src/ext/mysqli/mysqli_api.c:1.87.2.8 Mon Dec 27 10:40:40 2004
+++ php-src/ext/mysqli/mysqli_api.c Wed Jan 26 20:11:15 2005
@@ -15,7 +15,7 @@
| Author: Georg Richter <[EMAIL PROTECTED]> |
+----------------------------------------------------------------------+
- $Id: mysqli_api.c,v 1.87.2.8 2004/12/27 15:40:40 georg Exp $
+ $Id: mysqli_api.c,v 1.87.2.9 2005/01/27 01:11:15 tony2001 Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -753,6 +753,11 @@
MYSQLI_FETCH_RESOURCE(result, MYSQL_RES *, &mysql_result,
"mysqli_result");
+ if (offset < 0 || offset >= mysql_num_fields(result)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Field offset is
invalid for resultset");
+ RETURN_FALSE;
+ }
+
if (!(field = mysql_fetch_field_direct(result,offset))) {
RETURN_FALSE;
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php