cvs: php-src(PHP_5_3) /ext/standard filestat.c /ext/standard/tests/file chgrp.phpt
| From: | Dmitry Stogov | Date: | Fri, 16 Nov 2007 14:24:08 +0000 |
| Subject: | cvs: php-src(PHP_5_3) /ext/standard filestat.c /ext/standard/tests/file chgrp.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-47212@lists.php.net to get a copy of this message | ||
dmitry Fri Nov 16 14:24:08 2007 UTC
Modified files: (Branch: PHP_5_3)
/php-src/ext/standard filestat.c
/php-src/ext/standard/tests/file chgrp.phpt
Log:
Fixed crash (Serg)
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/filestat.c?r1=1.136.2.8.2.14.2.2&r2=1.136.2.8.2.14.2.3&diff_format=u
Index: php-src/ext/standard/filestat.c
diff -u php-src/ext/standard/filestat.c:1.136.2.8.2.14.2.2
php-src/ext/standard/filestat.c:1.136.2.8.2.14.2.3
--- php-src/ext/standard/filestat.c:1.136.2.8.2.14.2.2 Mon Nov 5 17:30:07 2007
+++ php-src/ext/standard/filestat.c Fri Nov 16 14:24:08 2007
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: filestat.c,v 1.136.2.8.2.14.2.2 2007/11/05 17:30:07 jani Exp $ */
+/* $Id: filestat.c,v 1.136.2.8.2.14.2.3 2007/11/16 14:24:08 dmitry Exp $ */
#include "php.h"
#include "safe_mode.h"
@@ -396,12 +396,12 @@
int ret;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz/", &filename,
&filename_len, &group) == FAILURE) {
- return;
+ RETURN_FALSE;
}
if (Z_TYPE_P(group) == IS_LONG) {
gid = (gid_t)Z_LVAL_P(group);
- } else {
+ } else if (Z_TYPE_P(group) == IS_STRING) {
#if defined(ZTS) && defined(HAVE_GETGRNAM_R) && defined(_SC_GETGR_R_SIZE_MAX)
struct group gr;
struct group *retgrptr;
@@ -429,6 +429,9 @@
}
gid = gr->gr_gid;
#endif
+ } else {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "parameter 2 should be string or integer, %s
given",zend_zval_type_name(group));
+ RETURN_FALSE;
}
if (PG(safe_mode) &&(!php_checkuid(filename, NULL, CHECKUID_ALLOW_FILE_NOT_EXISTS))) {
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/chgrp.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u
Index: php-src/ext/standard/tests/file/chgrp.phpt
diff -u php-src/ext/standard/tests/file/chgrp.phpt:1.1.2.2
php-src/ext/standard/tests/file/chgrp.phpt:1.1.2.3
--- php-src/ext/standard/tests/file/chgrp.phpt:1.1.2.2 Wed Nov 14 15:51:56 2007
+++ php-src/ext/standard/tests/file/chgrp.phpt Fri Nov 16 14:24:08 2007
@@ -5,5 +5,6 @@
chgrp("sjhgfskhagkfdgskjfhgskfsdgfkdsajf", NULL);
echo "ALIVE\n";
?>
---EXPECT--
+--EXPECTF--
+Warning: chgrp(): parameter 2 should be string or integer, null given in %schgrp.php on line 2
ALIVE