cvs: php-src(PHP_5_2) /ext/sysvshm sysvshm.c
| From: | Ilia Alshanetsky | Date: | Sat, 30 Dec 2006 20:46:47 +0000 |
| Subject: | cvs: php-src(PHP_5_2) /ext/sysvshm sysvshm.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-42489@lists.php.net to get a copy of this message | ||
iliaa Sat Dec 30 20:46:47 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/sysvshm sysvshm.c
Log:
Added missing resource validation checks
http://cvs.php.net/viewvc.cgi/php-src/ext/sysvshm/sysvshm.c?r1=1.70.2.2.2.1&r2=1.70.2.2.2.2&diff_format=u
Index: php-src/ext/sysvshm/sysvshm.c
diff -u php-src/ext/sysvshm/sysvshm.c:1.70.2.2.2.1 php-src/ext/sysvshm/sysvshm.c:1.70.2.2.2.2
--- php-src/ext/sysvshm/sysvshm.c:1.70.2.2.2.1 Thu Jun 29 09:03:27 2006
+++ php-src/ext/sysvshm/sysvshm.c Sat Dec 30 20:46:47 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: sysvshm.c,v 1.70.2.2.2.1 2006/06/29 09:03:27 tony2001 Exp $ */
+/* $Id: sysvshm.c,v 1.70.2.2.2.2 2006/12/30 20:46:47 iliaa Exp $ */
/* This has been built and tested on Linux 2.2.14
*
@@ -216,7 +216,7 @@
id = Z_LVAL_PP(arg_id);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (!shm_list_ptr) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "The parameter is not a valid
shm_identifier");
RETURN_FALSE;
}
@@ -252,7 +252,7 @@
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index",
id);
RETURN_FALSE;
}
@@ -299,7 +299,7 @@
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index",
id);
RETURN_FALSE;
}
@@ -345,7 +345,7 @@
key = Z_LVAL_PP(arg_key);
shm_list_ptr = (sysvshm_shm *) zend_list_find(id, &type);
- if (type != php_sysvshm.le_shm) {
+ if (!shm_list_ptr || type != php_sysvshm.le_shm) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%ld is not a SysV shared memory index",
id);
RETURN_FALSE;
}