summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntony Dovgal <tony2001@php.net>2005-01-20 18:08:54 +0000
committerAntony Dovgal <tony2001@php.net>2005-01-20 18:08:54 +0000
commit94d4fb4249923d33e7ec9989d29f41c674cd409d (patch)
tree3f777eb4d582f20226df9cbe61c23dd4cd945482
parentaabd63044c89079f29d609f648aaf8eead09e5b5 (diff)
downloadphp-git-94d4fb4249923d33e7ec9989d29f41c674cd409d.tar.gz
MFH: fix segfault in imap_sort()
-rw-r--r--ext/imap/php_imap.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/imap/php_imap.c b/ext/imap/php_imap.c
index 34c51188c1..c40944acb5 100644
--- a/ext/imap/php_imap.c
+++ b/ext/imap/php_imap.c
@@ -2467,8 +2467,13 @@ PHP_FUNCTION(imap_sort)
}
if (myargc >= 4) {
convert_to_long_ex(flags);
+ if (Z_LVAL_PP(flags) < 0) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Search options parameter has to be greater than or equal to 0cannot be less than 0");
+ RETURN_FALSE;
+ }
}
if (myargc >= 5) {
+ convert_to_string_ex(criteria);
search_criteria = estrndup(Z_STRVAL_PP(criteria), Z_STRLEN_PP(criteria));
spg = mail_criteria(search_criteria);
efree(search_criteria);