iliaa Mon Feb 2 23:51:58 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/filter logical_filters.c /php-src/ext/filter/tests 016.phpt /php-src NEWS Log: MFB: Fixed bug #47282 (FILTER_VALIDATE_EMAIL is marking valid email addresses as invalid) http://cvs.php.net/viewvc.cgi/php-src/ext/filter/logical_filters.c?r1=1.1.2.27&r2=1.1.2.28&diff_format=u Index: php-src/ext/filter/logical_filters.c diff -u php-src/ext/filter/logical_filters.c:1.1.2.27 php-src/ext/filter/logical_filters.c:1.1.2.28 --- php-src/ext/filter/logical_filters.c:1.1.2.27 Wed Dec 31 15:39:48 2008 +++ php-src/ext/filter/logical_filters.c Mon Feb 2 23:51:58 2009 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: logical_filters.c,v 1.1.2.27 2008/12/31 15:39:48 felipe Exp $ */ +/* $Id: logical_filters.c,v 1.1.2.28 2009/02/02 23:51:58 iliaa Exp $ */ #include "php_filter.h" #include "filter_private.h" @@ -469,7 +469,7 @@ void php_filter_validate_email(PHP_INPUT_FILTER_PARAM_DECL) /* {{{ */ { /* From http://cvs.php.net/co.php/pear/HTML_QuickForm/QuickForm/Rule/Email.php?r=1.4 */ - const char regexp[] = "/^((\\\"[^\\\"\\f\\n\\r\\t\\b]+\\\")|([\\w\\!\\#\\$\\%\\&\\'\\*\\+\\-\\~\\/\\^\\`\\|\\{\\}]+(\\.[\\w\\!\\#\\$\\%\\&\\'\\*\\+\\-\\~\\/\\^\\`\\|\\{\\}]+)*))@((\\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9])(([A-Za-z0-9\\-])*([A-Za-z0-9]))?\\.)+[A-Za-z\\-]+))$/D"; + const char regexp[] = "/^((\\\"[^\\\"\\f\\n\\r\\t\\b]+\\\")|([\\w\\!\\#\\$\\%\\&\\'\\*\\+\\-\\~\\/\\^\\`\\|\\{\\}]+(\\.[\\w\\!\\#\\$\\%\\&\\'\\*\\+\\-\\~\\/\\^\\`\\|\\{\\}]*)*))@((\\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9])(([A-Za-z0-9\\-])*([A-Za-z0-9]))?\\.?)+[A-Za-z\\-]*))$/D"; pcre *re = NULL; pcre_extra *pcre_extra = NULL; http://cvs.php.net/viewvc.cgi/php-src/ext/filter/tests/016.phpt?r1=1.4.2.4&r2=1.4.2.5&diff_format=u Index: php-src/ext/filter/tests/016.phpt diff -u php-src/ext/filter/tests/016.phpt:1.4.2.4 php-src/ext/filter/tests/016.phpt:1.4.2.5 --- php-src/ext/filter/tests/016.phpt:1.4.2.4 Tue Dec 19 14:16:23 2006 +++ php-src/ext/filter/tests/016.phpt Mon Feb 2 23:51:58 2009 @@ -13,7 +13,8 @@ 't...@com', '@', '[]()/@example.com', -'qwertyuiopasdfghjklzxcv...@qwertyuiopasdfghjklzxcvbnm.net', +'qwertyuiopasdfghjklzxcv...@qwertyuiopasdfghjklzxcvbnm.net', +'e.x.a.m.p.l...@example.com' ); foreach ($values as $value) { var_dump(filter_var($value, FILTER_VALIDATE_EMAIL)); @@ -27,8 +28,9 @@ bool(false) bool(false) bool(false) -bool(false) +string(8) "t...@com" bool(false) bool(false) string(57) "qwertyuiopasdfghjklzxcv...@qwertyuiopasdfghjklzxcvbnm.net" -Done +string(26) "e.x.a.m.p.l...@example.com" +Done \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1404&r2=1.2027.2.547.2.1405&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.1404 php-src/NEWS:1.2027.2.547.2.1405 --- php-src/NEWS:1.2027.2.547.2.1404 Mon Feb 2 04:54:10 2009 +++ php-src/NEWS Mon Feb 2 23:51:58 2009 @@ -17,6 +17,8 @@ - Fixed bug in xml_error_string() which resulted in messages being off by one. (Scott) +- Fixed bug #47282 (FILTER_VALIDATE_EMAIL is marking valid email addresses + as invalid). (Ilia) - Fixed bug #47220 (segfault in dom_document_parser in recovery mode). (Rob) - Fixed bug #47217 (content-type is not set properly for file uploads). (Ilia)
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php