zoe Tue Dec 16 21:08:50 2008 UTC
Modified files:
/php-src/ext/imap php_imap.c
Log:
bug #46884 fix
http://cvs.php.net/viewvc.cgi/php-src/ext/imap/php_imap.c?r1=1.265&r2=1.266&diff_format=u
Index: php-src/ext/imap/php_imap.c
diff -u php-src/ext/imap/php_imap.c:1.265 php-src/ext/imap/php_imap.c:1.266
--- php-src/ext/imap/php_imap.c:1.265 Fri Dec 5 11:57:24 2008
+++ php-src/ext/imap/php_imap.c Tue Dec 16 21:08:50 2008
@@ -26,7 +26,7 @@
| PHP 4.0 updates: Zeev Suraski <[email protected]> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.265 2008/12/05 11:57:24 zoe Exp $ */
+/* $Id: php_imap.c,v 1.266 2008/12/16 21:08:50 zoe Exp $ */
#define IMAP41
@@ -1560,6 +1560,12 @@
return;
}
+ if (flags && ((flags & ~(FT_UID|FT_PEEK|FT_INTERNAL)) != 0)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for
the options parameter");
+ RETURN_FALSE;
+ }
+
+
ZEND_FETCH_RESOURCE(imap_le_struct, pils *, &streamind, -1, "imap",
le_imap);
if ((argc == 3) && (flags & FT_UID)) {
@@ -2151,6 +2157,12 @@
if (zend_parse_parameters(argc TSRMLS_CC, "rl|l", &streamind, &msgno,
&flags) == FAILURE) {
return;
}
+
+ if (flags && ((flags & ~FT_UID) != 0)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for
the options parameter");
+ RETURN_FALSE;
+ }
+
ZEND_FETCH_RESOURCE(imap_le_struct, pils *, &streamind, -1, "imap",
le_imap);
@@ -2197,6 +2209,12 @@
return;
}
+ if (flags && ((flags & ~(FT_UID|FT_PEEK|FT_INTERNAL)) != 0)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for
the options parameter");
+ RETURN_FALSE;
+ }
+
+
ZEND_FETCH_RESOURCE(imap_le_struct, pils *, &streamind, -1, "imap",
le_imap);
if (argc < 4 || !(flags & FT_UID)) {
@@ -2915,13 +2933,20 @@
PHP_FUNCTION(imap_fetchheader)
{
zval *streamind;
- long msgno, flags;
+ long msgno, flags=0L;
pils *imap_le_struct;
int msgindex, argc = ZEND_NUM_ARGS();
if (zend_parse_parameters(argc TSRMLS_CC, "rl|l", &streamind, &msgno,
&flags) == FAILURE) {
return;
}
+
+
+ if (flags && ((flags & ~(FT_UID|FT_INTERNAL|FT_PREFETCHTEXT)) != 0)) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for
the options parameter");
+ RETURN_FALSE;
+ }
+
ZEND_FETCH_RESOURCE(imap_le_struct, pils *, &streamind, -1, "imap",
le_imap);
@@ -3159,7 +3184,7 @@
return;
}
- if (flags && ((flags & ~FT_UID) !=0)) {
+ if (flags && ((flags & ~FT_UID) != 0)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for
the options parameter");
RETURN_FALSE;
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php