cvs: php-src(PHP_5_0) /ext/imap php_imap.c

From: Date: Thu, 20 Jan 2005 14:11:36 +0000
Subject: cvs: php-src(PHP_5_0) /ext/imap php_imap.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-30030@lists.php.net to get a copy of this message
tony2001 Thu Jan 20 09:11:36 2005 EDT Modified files: (Branch: PHP_5_0) /php-src/ext/imap php_imap.c Log: MFH: fix segfault in imap_headerinfo() when fromlength or subjectlength are less than 0 + fix protos http://cvs.php.net/diff.php/php-src/ext/imap/php_imap.c?r1=1.184.2.12&r2=1.184.2.13&ty=u Index: php-src/ext/imap/php_imap.c diff -u php-src/ext/imap/php_imap.c:1.184.2.12 php-src/ext/imap/php_imap.c:1.184.2.13 --- php-src/ext/imap/php_imap.c:1.184.2.12 Tue Jan 18 18:36:37 2005 +++ php-src/ext/imap/php_imap.c Thu Jan 20 09:11:36 2005 @@ -26,7 +26,7 @@ | PHP 4.0 updates: Zeev Suraski <zeev@zend.com> | +----------------------------------------------------------------------+ */ -/* $Id: php_imap.c,v 1.184.2.12 2005/01/18 23:36:37 iliaa Exp $ */ +/* $Id: php_imap.c,v 1.184.2.13 2005/01/20 14:11:36 tony2001 Exp $ */ #define IMAP41 @@ -1525,12 +1525,20 @@ convert_to_long_ex(msgno); if (myargc >= 3) { - convert_to_long_ex(fromlength); + convert_to_long_ex(fromlength); + if (Z_LVAL_PP(fromlength) < 0) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "From length has to be greater than or equal to 0"); + RETURN_FALSE; + } } else { fromlength = 0x00; } if (myargc >= 4) { convert_to_long_ex(subjectlength); + if (Z_LVAL_PP(subjectlength) < 0) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Subject length has to be greater than or equal to 0"); + RETURN_FALSE; + } } else { subjectlength = 0x00; } @@ -1798,7 +1806,7 @@ } /* }}} */ -/* {{{ proto string imap_fetchbody(resource stream_id, int msg_no, int section [, int options]) +/* {{{ proto string imap_fetchbody(resource stream_id, int msg_no, string section [, int options]) Get a specific body section */ PHP_FUNCTION(imap_fetchbody) { @@ -2612,7 +2620,7 @@ } /* }}} */ -/* {{{ proto object imap_bodystruct(resource stream_id, int msg_no, int section) +/* {{{ proto object imap_bodystruct(resource stream_id, int msg_no, string section) Read the structure of a specified body section of a specific message */ PHP_FUNCTION(imap_bodystruct) {

« previous php.cvs (#30030) next »