[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/NEWS branches/PHP_5_3/ext/standard/dns_win32.c trunk/ext/standard/dns_win32.c
pajoye Fri, 07 Aug 2009 13:31:09 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286907 Log: - Fixed #49183, dns_get_record does not return NAPTR records Bug: http://bugs.php.net/49183 (Assigned) dns_get_record does not return NAPTR records when you query dot tel domains! Changed paths: U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/ext/standard/dns_win32.c U php/php-src/trunk/ext/standard/dns_win32.c Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-08-07 09:48:57 UTC (rev 286906) +++ php/php-src/branches/PHP_5_3/NEWS 2009-08-07 13:31:09 UTC (rev 286907) @@ -8,6 +8,7 @@ - Fixed signature generation/validation for zip archives in ext/phar. (Greg) - Fixed memory leak in stream_is_local(). (Felipe, Tony) +- Fixed bug #49183 (dns_get_record does not return NAPTR records). (Pierre) - Fixed bug #49132 (posix_times returns false without error). (phpbugs at gunnu dot us) - Fixed bug #49125 (Error in dba_exists C code). (jdornan at stanford dot edu) Modified: php/php-src/branches/PHP_5_3/ext/standard/dns_win32.c === --- php/php-src/branches/PHP_5_3/ext/standard/dns_win32.c 2009-08-07 09:48:57 UTC (rev 286906) +++ php/php-src/branches/PHP_5_3/ext/standard/dns_win32.c 2009-08-07 13:31:09 UTC (rev 286907) @@ -269,7 +269,6 @@ case DNS_TYPE_NAPTR: { -#ifdef DNS_NAPTR_DATA DNS_NAPTR_DATA * data_naptr = pRec-Data.Naptr; add_assoc_string(*subarray, type, NAPTR, 1); @@ -279,7 +278,6 @@ add_assoc_string(*subarray, services, data_naptr-pService, 1); add_assoc_string(*subarray, regex, data_naptr-pRegularExpression, 1); add_assoc_string(*subarray, replacement, data_naptr-pReplacement, 1); -#endif } break; Modified: php/php-src/trunk/ext/standard/dns_win32.c === --- php/php-src/trunk/ext/standard/dns_win32.c 2009-08-07 09:48:57 UTC (rev 286906) +++ php/php-src/trunk/ext/standard/dns_win32.c 2009-08-07 13:31:09 UTC (rev 286907) @@ -269,7 +269,6 @@ case DNS_TYPE_NAPTR: { -#ifdef DNS_NAPTR_DATA DNS_NAPTR_DATA * data_naptr = pRec-Data.Naptr; add_ascii_assoc_rt_string(*subarray, type, NAPTR, ZSTR_DUPLICATE); add_ascii_assoc_long(*subarray, order, data_naptr-wOrder); @@ -278,7 +277,6 @@ add_ascii_assoc_rt_string(*subarray, services, data_naptr-pService, ZSTR_DUPLICATE); add_ascii_assoc_rt_string(*subarray, regex, data_naptr-pRegularExpression, ZSTR_DUPLICATE); add_ascii_assoc_rt_string(*subarray, replacement, data_naptr-pReplacement, ZSTR_DUPLICATE); -#endif } break; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/NEWS branches/PHP_5_3/Zend/zend_ini_scanner.l trunk/Zend/zend_ini_scanner.l trunk/ext/standard/tests/general_functions/bug48660.phpt
jani Fri, 07 Aug 2009 14:21:38 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286908 Log: - Fixed bug #48660 (parse_ini_*(): dollar sign as last character of value fails) Bug: http://bugs.php.net/48660 (Assigned) parse_ini_*(): dollar sign as last character of value fails Changed paths: U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l U php/php-src/trunk/Zend/zend_ini_scanner.l U php/php-src/trunk/ext/standard/tests/general_functions/bug48660.phpt Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-08-07 13:31:09 UTC (rev 286907) +++ php/php-src/branches/PHP_5_3/NEWS 2009-08-07 14:21:38 UTC (rev 286908) @@ -12,8 +12,8 @@ - Fixed bug #49132 (posix_times returns false without error). (phpbugs at gunnu dot us) - Fixed bug #49125 (Error in dba_exists C code). (jdornan at stanford dot edu) -- Fixed bug #49122 (undefined reference to mysqlnd_stmt_next_result on compile with - --with-mysqli and MySQL 6.0). (Jani) +- Fixed bug #49122 (undefined reference to mysqlnd_stmt_next_result on compile + with --with-mysqli and MySQL 6.0). (Jani) - Fixed bug #49095 (proc_get_status['exitcode'] fails on win32). (Felipe) - Fixed bug #49092 (ReflectionFunction fails to work with functions in fully qualified namespaces). (Kalle, Jani) @@ -38,8 +38,8 @@ (Greg) - Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). (Greg) -- Fixed bug #49014 (dechunked filter broken when serving more than 8192 bytes in - a chunk). (andreas dot streichardt at globalpark dot com, Ilia) +- Fixed bug #49014 (dechunked filter broken when serving more than 8192 bytes + in a chunk). (andreas dot streichardt at globalpark dot com, Ilia) - Fixed bug #49000 (PHP CLI in Interactive mode (php -a) crashes when including files from function). (Stas) - Fixed bug #48994 (zlib.output_compression does not ouput HTTP headers when @@ -74,14 +74,16 @@ gmail dot com, Pierre) - Fixed bug #48762 (IPv6 address filter still rejects valid address). (Felipe) - Fixed bug #48757 (ReflectionFunction::invoke() parameter issues). (Kalle) -- Fixed bug #48740 (PHAR install fails when INSTALL_ROOT is not the final install - location). (james dot cohen at digitalwindow dot com, Greg) +- Fixed bug #48740 (PHAR install fails when INSTALL_ROOT is not the final + install location). (james dot cohen at digitalwindow dot com, Greg) - Fixed bug #48733 (CURLOPT_WRITEHEADER|CURLOPT_FILE|CURLOPT_STDERR warns on files that have been opened with r+). (Ilia) - Fixed bug #48718 (FILTER_VALIDATE_EMAIL does not allow numbers in domain components). (Ilia) - Fixed bug #48681 (openssl signature verification for tar archives broken). (Greg) +- Fixed bug #48660 (parse_ini_*(): dollar sign as last character of value + fails). (Jani) - Fixed bug #48645 (mb_convert_encoding() doesn't understand hexadecimal html-entities). (Moriyoshi) - Fixed bug #48637 (file fopen wrapper is overwritten when using @@ -90,8 +92,8 @@ (Jani) - Fixed bug #48400 (imap crashes when closing stream opened with OP_PROTOTYPE flag). (Jani) -- Fixed bug #48377 (error message unclear on converting phar with existing file). - (Greg) +- Fixed bug #48377 (error message unclear on converting phar with existing + file). (Greg) - Fixed bug #48247 (Infinite loop and possible crash during startup with errors when errors are logged). (Jani) - Fixed bug #48189 (ibase_execute error in return param). (Kalle) Modified: php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l === --- php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l 2009-08-07 13:31:09 UTC (rev 286907) +++ php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l 2009-08-07 14:21:38 UTC (rev 286908) @@ -54,7 +54,9 @@ #define YYSTATE YYGETCONDITION() #define yytext ((char*)SCNG(yy_text)) #define yyleng SCNG(yy_leng) -#define yyless(x)YYCURSOR = yytext + x +#define yyless(x)do { YYCURSOR = (unsigned char*)yytext + x; \ + yyleng = (unsigned int)x; } while(0) + /* #define yymore() goto yymore_restart */ /* perform sanity check. If this message is triggered you should @@ -320,7 +322,6 @@ LITERAL_DOLLAR ($([^{\000]|(\\{ANY_CHAR}))) VALUE_CHARS ([^$= \t\n\r;|~()!'\000]|{LITERAL_DOLLAR}) SECTION_VALUE_CHARS ([^$\n\r;'\]\\]|(\\{ANY_CHAR})|{LITERAL_DOLLAR}) -DOUBLE_QUOTES_CHARS ([^$\\]|(\\[^])|{LITERAL_DOLLAR}|\\[][^\r\n]) !* := yyleng = YYCURSOR - SCNG(yy_text); @@ -453,20 +454,47 @@ return ''; } -ST_DOUBLE_QUOTES{DOUBLE_QUOTES_CHARS}+(\\[])? { /* Escape double quoted string contents */ - if(yyleng 1 yytext[yyleng-1] == '' yytext[yyleng-2] == '\\') { - yyless(yyleng-1); - yyleng--; +ST_DOUBLE_QUOTES[]{TABS_AND_SPACES}* { /* Double quoted '' string ends
[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/NEWS branches/PHP_5_3/Zend/zend_ini_scanner.l trunk/Zend/zend_ini_scanner.l
jani Fri, 07 Aug 2009 15:44:37 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286913 Log: - Fixed bug #48719 parse_ini_*(): scanner mode is not checked for sanity) Bug: http://bugs.php.net/48719 (Assigned) parse_ini_*(): scanner mode is not checked for sanity Changed paths: U php/php-src/branches/PHP_5_3/NEWS U php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l U php/php-src/trunk/Zend/zend_ini_scanner.l Modified: php/php-src/branches/PHP_5_3/NEWS === --- php/php-src/branches/PHP_5_3/NEWS 2009-08-07 15:03:08 UTC (rev 286912) +++ php/php-src/branches/PHP_5_3/NEWS 2009-08-07 15:44:37 UTC (rev 286913) @@ -78,6 +78,8 @@ install location). (james dot cohen at digitalwindow dot com, Greg) - Fixed bug #48733 (CURLOPT_WRITEHEADER|CURLOPT_FILE|CURLOPT_STDERR warns on files that have been opened with r+). (Ilia) +- Fixed bug #48719 (parse_ini_*(): scanner_mode parameter is not checked for + sanity). (Jani) - Fixed bug #48718 (FILTER_VALIDATE_EMAIL does not allow numbers in domain components). (Ilia) - Fixed bug #48681 (openssl signature verification for tar archives broken). Modified: php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l === --- php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l2009-08-07 15:03:08 UTC (rev 286912) +++ php/php-src/branches/PHP_5_3/Zend/zend_ini_scanner.l2009-08-07 15:44:37 UTC (rev 286913) @@ -158,12 +158,28 @@ /* {{{ init_ini_scanner() */ -static void init_ini_scanner(TSRMLS_D) +static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC) { + /* Sanity check */ + if (scanner_mode != ZEND_INI_SCANNER_NORMAL scanner_mode != ZEND_INI_SCANNER_RAW) { + zend_error(E_WARNING, Invalid scanner mode); + return FAILURE; + } + SCNG(lineno) = 1; - SCNG(scanner_mode) = ZEND_INI_SCANNER_NORMAL; + SCNG(scanner_mode) = scanner_mode; + SCNG(yy_in) = fh; + + if (fh != NULL) { + ini_filename = zend_strndup(fh-filename, strlen(fh-filename)); + } else { + ini_filename = NULL; + } + zend_stack_init(SCNG(state_stack)); BEGIN(INITIAL); + + return SUCCESS; } /* }}} */ @@ -201,15 +217,14 @@ char *buf; size_t size; - if (zend_stream_fixup(fh, buf, size TSRMLS_CC) == FAILURE) { + if (zend_stream_fixup(fh, buf, size TSRMLS_CC) == FAILURE || + init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE + ) { return FAILURE; } - init_ini_scanner(TSRMLS_C); - SCNG(scanner_mode) = scanner_mode; - SCNG(yy_in) = fh; yy_scan_buffer(buf, size TSRMLS_CC); - ini_filename = zend_strndup(fh-filename, strlen(fh-filename)); + return SUCCESS; } /* }}} */ @@ -220,11 +235,12 @@ { int len = strlen(str); - init_ini_scanner(TSRMLS_C); - SCNG(scanner_mode) = scanner_mode; - SCNG(yy_in) = NULL; + if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) { + return FAILURE; + } + yy_scan_buffer(str, len TSRMLS_CC); - ini_filename = NULL; + return SUCCESS; } /* }}} */ Modified: php/php-src/trunk/Zend/zend_ini_scanner.l === --- php/php-src/trunk/Zend/zend_ini_scanner.l 2009-08-07 15:03:08 UTC (rev 286912) +++ php/php-src/trunk/Zend/zend_ini_scanner.l 2009-08-07 15:44:37 UTC (rev 286913) @@ -158,12 +158,28 @@ /* {{{ init_ini_scanner() */ -static void init_ini_scanner(TSRMLS_D) +static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC) { + /* Sanity check */ + if (scanner_mode != ZEND_INI_SCANNER_NORMAL scanner_mode != ZEND_INI_SCANNER_RAW) { + zend_error(E_WARNING, Invalid scanner mode); + return FAILURE; + } + SCNG(lineno) = 1; - SCNG(scanner_mode) = ZEND_INI_SCANNER_NORMAL; + SCNG(scanner_mode) = scanner_mode; + SCNG(yy_in) = fh; + + if (fh != NULL) { + ini_filename = zend_strndup(fh-filename, strlen(fh-filename)); + } else { + ini_filename = NULL; + } + zend_stack_init(SCNG(state_stack)); BEGIN(INITIAL); + + return SUCCESS; } /* }}} */ @@ -201,15 +217,14 @@ char *buf; size_t size; - if (zend_stream_fixup(fh, buf, size TSRMLS_CC) == FAILURE) { + if (zend_stream_fixup(fh, buf, size TSRMLS_CC) == FAILURE || + init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE + ) { return FAILURE; } - init_ini_scanner(TSRMLS_C); - SCNG(scanner_mode) = scanner_mode; - SCNG(yy_in) = fh; yy_scan_buffer(buf, size
[PHP-CVS] svn: /php/php-src/ branches/PHP_5_2/ext/standard/strnatcmp.c branches/PHP_5_3/ext/standard/strnatcmp.c trunk/ext/standard/strnatcmp.c
rasmus Fri, 07 Aug 2009 17:14:19 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286915 Log: Only skip leading 0's - fixes a test I broke a while ago Changed paths: U php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c U php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c U php/php-src/trunk/ext/standard/strnatcmp.c Modified: php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c === --- php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c 2009-08-07 15:45:56 UTC (rev 286914) +++ php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) @@ -105,7 +105,7 @@ char const *ap, *bp; char const *aend = a + a_len, *bend = b + b_len; - int fractional, result; + int fractional, result, leading = true; if (a_len == 0 || b_len == 0) return a_len - b_len; @@ -116,12 +116,16 @@ ca = *ap; cb = *bp; /* skip over leading spaces or zeros */ - while (isspace((int)(unsigned char)ca) || (ca == '0' (ap+1 aend) !ispunct(*(ap+1 + while (leading (isspace((int)(unsigned char)ca) || (ca == '0' (ap+1 aend) !ispunct(*(ap+1) { ca = *++ap; + } - while (isspace((int)(unsigned char)cb) || (cb == '0' (bp+1 bend) !ispunct(*(bp+1 + while (leading (isspace((int)(unsigned char)cb) || (cb == '0' (bp+1 bend) !ispunct(*(bp+1) { cb = *++bp; + } + leading = false; + /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { fractional = (ca == '0' || cb == '0'); Modified: php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c === --- php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c 2009-08-07 15:45:56 UTC (rev 286914) +++ php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) @@ -105,7 +105,7 @@ char const *ap, *bp; char const *aend = a + a_len, *bend = b + b_len; - int fractional, result; + int fractional, result, leading = true; if (a_len == 0 || b_len == 0) return a_len - b_len; @@ -116,12 +116,16 @@ ca = *ap; cb = *bp; /* skip over leading spaces or zeros */ - while (isspace((int)(unsigned char)ca) || (ca == '0' (ap+1 aend) !ispunct(*(ap+1 + while (leading (isspace((int)(unsigned char)ca) || (ca == '0' (ap+1 aend) !ispunct(*(ap+1) { ca = *++ap; + } - while (isspace((int)(unsigned char)cb) || (cb == '0' (bp+1 bend) !ispunct(*(bp+1 + while (leading (isspace((int)(unsigned char)cb) || (cb == '0' (bp+1 bend) !ispunct(*(bp+1) { cb = *++bp; + } + leading = false; + /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { fractional = (ca == '0' || cb == '0'); Modified: php/php-src/trunk/ext/standard/strnatcmp.c === --- php/php-src/trunk/ext/standard/strnatcmp.c 2009-08-07 15:45:56 UTC (rev 286914) +++ php/php-src/trunk/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) @@ -105,19 +105,23 @@ { unsigned char ca, cb; unsigned int ai, bi; - int fractional, result; + int fractional, result, leading = true; ai = bi = 0; while (1) { ca = a[ai]; cb = b[bi]; /* skip over leading spaces or zeros */ - while (isspace((int)(unsigned char)ca) || ((ca == '0' (ai+1 a_len)) !ispunct(a[ai+1]))) + while (leading (isspace((int)(unsigned char)ca) || ((ca == '0' (ai+1 a_len)) !ispunct(a[ai+1] { ca = a[++ai]; + } - while (isspace((int)(unsigned char)cb) || ((cb == '0' bi+1 b_len) !ispunct(b[bi+1]))) + while (leading (isspace((int)(unsigned char)cb) || ((cb == '0' bi+1 b_len) !ispunct(b[bi+1] { cb = b[++bi]; + } + leading = false; + /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { fractional = (ca == '0' || cb == '0'); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] svn: /php/php-src/ branches/PHP_5_2/ext/standard/strnatcmp.c branches/PHP_5_3/ext/standard/strnatcmp.c trunk/ext/standard/strnatcmp.c
rasmus Fri, 07 Aug 2009 17:32:31 + Revision: http://svn.php.net/viewvc?view=revisionrevision=286916 Log: Oops, true/false are not defined on Linux. They are on OSX. Changed paths: U php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c U php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c U php/php-src/trunk/ext/standard/strnatcmp.c Modified: php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c === --- php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) +++ php/php-src/branches/PHP_5_2/ext/standard/strnatcmp.c 2009-08-07 17:32:31 UTC (rev 286916) @@ -105,7 +105,8 @@ char const *ap, *bp; char const *aend = a + a_len, *bend = b + b_len; - int fractional, result, leading = true; + int fractional, result; + short leading = 1; if (a_len == 0 || b_len == 0) return a_len - b_len; @@ -124,7 +125,7 @@ cb = *++bp; } - leading = false; + leading = 0; /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { Modified: php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c === --- php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) +++ php/php-src/branches/PHP_5_3/ext/standard/strnatcmp.c 2009-08-07 17:32:31 UTC (rev 286916) @@ -105,7 +105,8 @@ char const *ap, *bp; char const *aend = a + a_len, *bend = b + b_len; - int fractional, result, leading = true; + int fractional, result; + short leading = 1; if (a_len == 0 || b_len == 0) return a_len - b_len; @@ -124,7 +125,7 @@ cb = *++bp; } - leading = false; + leading = 0; /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { Modified: php/php-src/trunk/ext/standard/strnatcmp.c === --- php/php-src/trunk/ext/standard/strnatcmp.c 2009-08-07 17:14:19 UTC (rev 286915) +++ php/php-src/trunk/ext/standard/strnatcmp.c 2009-08-07 17:32:31 UTC (rev 286916) @@ -105,7 +105,8 @@ { unsigned char ca, cb; unsigned int ai, bi; - int fractional, result, leading = true; + int fractional, result; + short leading = 1; ai = bi = 0; while (1) { @@ -120,7 +121,7 @@ cb = b[++bi]; } - leading = false; + leading = 0; /* process run of digits */ if (isdigit((int)(unsigned char)ca)isdigit((int)(unsigned char)cb)) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php