From: Zoe Slattery Date: Tue, 16 Dec 2008 21:35:01 +0000 (+0000) Subject: bug #46837 fix X-Git-Tag: php-5.3.0beta1~421 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=78d7ff706e1cbd3c1347ed998bd256db5e00c7bc;p=php bug #46837 fix --- diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c index fd89734e45..fecaf42dfb 100644 --- a/ext/imap/php_imap.c +++ b/ext/imap/php_imap.c @@ -1498,6 +1498,13 @@ PHP_FUNCTION(imap_close) if (argc == 2) { flags = options; + + /* Check that flags is exactly equal to PHP_EXPUNGE or zero */ + if (flags && ((flags & ~PHP_EXPUNGE) != 0)) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "invalid value for the flags parameter"); + RETURN_FALSE; + } + /* Do the translation from PHP's internal PHP_EXPUNGE define to c-client's CL_EXPUNGE */ if (flags & PHP_EXPUNGE) { flags ^= PHP_EXPUNGE;