jani            Wed Jul 16 14:10:50 2008 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src    NEWS 
    /php-src/ext/sockets        sockets.c 
    /php-src/ext/sockets/tests  ipv4loop.phpt ipv6loop.phpt 
    /php-src/ext/standard       url_scanner_ex.c 
    /php-src/main/streams       xp_socket.c 
  Log:
  MFH:- Fixed bug #44127 (UNIX abstract namespace socket connect does not work)
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1175&r2=1.2027.2.547.2.1176&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1175 php-src/NEWS:1.2027.2.547.2.1176
--- php-src/NEWS:1.2027.2.547.2.1175    Tue Jul 15 14:58:58 2008
+++ php-src/NEWS        Wed Jul 16 14:10:49 2008
@@ -9,7 +9,8 @@
 - Fixed a crash inside PDO when trying instantiate PDORow manually. (Felipe)
 - Fixed build failure of ext/mysqli with libmysql 6.0 - missing rpl
   functions. (Andrey)
-- Fixed a regression when using strip_tags() and < is within an attribute. 
(Scott)
+- Fixed a regression when using strip_tags() and < is within an attribute.
+  (Scott)
 
 - Fixed bug #45486 (mb_send_mail(); header 'Content-Type: text/plain; 
charset=' 
   parsing incorrect). (Felipe)
@@ -42,6 +43,8 @@
 - Fixed bug #44716 (Progress notifications incorrect). (Hannes)
 - Fixed bug #44712 (stream_context_set_params segfaults on invalid arguments).
   (Hannes)
+- Fixed bug #44127 (UNIX abstract namespace socket connect does not work).
+  (Jani)
 - Fixed bug #41348 (OCI8: allow compilation with Oracle 8.1). (Chris Jones)
 
 01 May 2008, PHP 5.2.6
http://cvs.php.net/viewvc.cgi/php-src/ext/sockets/sockets.c?r1=1.171.2.9.2.18&r2=1.171.2.9.2.19&diff_format=u
Index: php-src/ext/sockets/sockets.c
diff -u php-src/ext/sockets/sockets.c:1.171.2.9.2.18 
php-src/ext/sockets/sockets.c:1.171.2.9.2.19
--- php-src/ext/sockets/sockets.c:1.171.2.9.2.18        Tue Jul 15 11:20:06 2008
+++ php-src/ext/sockets/sockets.c       Wed Jul 16 14:10:50 2008
@@ -19,7 +19,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: sockets.c,v 1.171.2.9.2.18 2008/07/15 11:20:06 felipe Exp $ */
+/* $Id: sockets.c,v 1.171.2.9.2.19 2008/07/16 14:10:50 jani Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -1170,8 +1170,8 @@
                        memset(&s_un, 0, sizeof(struct sockaddr_un));
 
                        s_un.sun_family = AF_UNIX;
-                       snprintf(s_un.sun_path, 108, "%s", addr);
-                       retval = connect(php_sock->bsd_socket, (struct sockaddr 
*) &s_un, SUN_LEN(&s_un));
+                       memcpy(&s_un.sun_path, addr, addr_len);
+                       retval = connect(php_sock->bsd_socket, (struct sockaddr 
*) &s_un, (socklen_t) XtOffsetOf(struct sockaddr_un, sun_path) + addr_len);
                        break;
 
                default:
http://cvs.php.net/viewvc.cgi/php-src/ext/sockets/tests/ipv4loop.phpt?r1=1.1&r2=1.1.6.1&diff_format=u
Index: php-src/ext/sockets/tests/ipv4loop.phpt
diff -u php-src/ext/sockets/tests/ipv4loop.phpt:1.1 
php-src/ext/sockets/tests/ipv4loop.phpt:1.1.6.1
--- php-src/ext/sockets/tests/ipv4loop.phpt:1.1 Thu Apr 17 23:09:17 2003
+++ php-src/ext/sockets/tests/ipv4loop.phpt     Wed Jul 16 14:10:50 2008
@@ -3,7 +3,7 @@
 --SKIPIF--
 <?php
        if (!extension_loaded('sockets')) {
-               die('skip sockets extenion not available.');
+               die('skip sockets extension not available.');
        }
 ?>
 --FILE--
http://cvs.php.net/viewvc.cgi/php-src/ext/sockets/tests/ipv6loop.phpt?r1=1.2.6.1&r2=1.2.6.2&diff_format=u
Index: php-src/ext/sockets/tests/ipv6loop.phpt
diff -u php-src/ext/sockets/tests/ipv6loop.phpt:1.2.6.1 
php-src/ext/sockets/tests/ipv6loop.phpt:1.2.6.2
--- php-src/ext/sockets/tests/ipv6loop.phpt:1.2.6.1     Mon Feb 12 14:49:04 2007
+++ php-src/ext/sockets/tests/ipv6loop.phpt     Wed Jul 16 14:10:50 2008
@@ -3,7 +3,7 @@
 --SKIPIF--
 <?php
        if (!extension_loaded('sockets')) {
-               die('skip sockets extenion not available.');
+               die('skip sockets extension not available.');
        }
        if (!defined("AF_INET6")) {
                die('skip no IPv6 support');
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/url_scanner_ex.c?r1=1.95.2.4.2.6&r2=1.95.2.4.2.7&diff_format=u
Index: php-src/ext/standard/url_scanner_ex.c
diff -u php-src/ext/standard/url_scanner_ex.c:1.95.2.4.2.6 
php-src/ext/standard/url_scanner_ex.c:1.95.2.4.2.7
--- php-src/ext/standard/url_scanner_ex.c:1.95.2.4.2.6  Wed Mar 12 11:27:42 2008
+++ php-src/ext/standard/url_scanner_ex.c       Wed Jul 16 14:10:50 2008
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.12.1 on Wed Oct 10 12:28:46 2007 */
+/* Generated by re2c 0.13.5 on Wed Jul  2 12:48:53 2008 */
 #line 1 "ext/standard/url_scanner_ex.re"
 /*
   +----------------------------------------------------------------------+
@@ -18,7 +18,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: url_scanner_ex.c,v 1.95.2.4.2.6 2008/03/12 11:27:42 felipe Exp $ */
+/* $Id: url_scanner_ex.c,v 1.95.2.4.2.7 2008/07/16 14:10:50 jani Exp $ */
 
 #include "php.h"
 
@@ -109,7 +109,10 @@
        q = (p = url->c) + url->len;
 
 scan:
+
+#line 114 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                128, 128, 128, 128, 128, 128, 128, 128, 
                128, 128, 128, 128, 128, 128, 128, 128, 
@@ -145,42 +148,37 @@
                128, 128, 128, 128, 128, 128, 128, 128, 
        };
 
-#line 149 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 128) {
-                       goto yy8;
-               }
-               if(yych <= '9') goto yy6;
-               if(yych >= ';') goto yy4;
-               ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 128) {
+               goto yy8;
+       }
+       if (yych <= '9') goto yy6;
+       if (yych >= ';') goto yy4;
+       ++YYCURSOR;
 #line 116 "ext/standard/url_scanner_ex.re"
-               { smart_str_append(dest, url); return; }
-#line 163 "ext/standard/url_scanner_ex.c"
+       { smart_str_append(dest, url); return; }
+#line 162 "ext/standard/url_scanner_ex.c"
 yy4:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 117 "ext/standard/url_scanner_ex.re"
-               { sep = separator; goto scan; }
-#line 168 "ext/standard/url_scanner_ex.c"
+       { sep = separator; goto scan; }
+#line 167 "ext/standard/url_scanner_ex.c"
 yy6:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 118 "ext/standard/url_scanner_ex.re"
-               { bash = p - 1; goto done; }
-#line 173 "ext/standard/url_scanner_ex.c"
+       { bash = p - 1; goto done; }
+#line 172 "ext/standard/url_scanner_ex.c"
 yy8:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 128) {
-                       goto yy8;
-               }
-#line 119 "ext/standard/url_scanner_ex.re"
-               { goto scan; }
-#line 183 "ext/standard/url_scanner_ex.c"
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 128) {
+               goto yy8;
        }
+#line 119 "ext/standard/url_scanner_ex.re"
+       { goto scan; }
+#line 182 "ext/standard/url_scanner_ex.c"
 }
 #line 120 "ext/standard/url_scanner_ex.re"
 
@@ -361,7 +359,10 @@
        
 state_plain:
        start = YYCURSOR;
+
+#line 364 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                128, 128, 128, 128, 128, 128, 128, 128, 
                128, 128, 128, 128, 128, 128, 128, 128, 
@@ -396,37 +397,35 @@
                128, 128, 128, 128, 128, 128, 128, 128, 
                128, 128, 128, 128, 128, 128, 128, 128, 
        };
-
-#line 401 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 128) {
-                       goto yy15;
-               }
-               ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 128) {
+               goto yy15;
+       }
+       ++YYCURSOR;
 #line 299 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
-#line 412 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); STATE = STATE_TAG; goto state_tag; }
+#line 409 "ext/standard/url_scanner_ex.c"
 yy15:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 128) {
-                       goto yy15;
-               }
-#line 300 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); goto state_plain; }
-#line 422 "ext/standard/url_scanner_ex.c"
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 128) {
+               goto yy15;
        }
+#line 300 "ext/standard/url_scanner_ex.re"
+       { passthru(STD_ARGS); goto state_plain; }
+#line 419 "ext/standard/url_scanner_ex.c"
 }
 #line 301 "ext/standard/url_scanner_ex.re"
 
 
 state_tag:     
        start = YYCURSOR;
+
+#line 427 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
@@ -461,42 +460,37 @@
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
        };
-
-#line 466 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
-               if(yych <= '@') {
-                       if(yych != ':') goto yy22;
-               } else {
-                       if(yych <= 'Z') goto yy20;
-                       if(yych <= '`') goto yy22;
-                       if(yych >= '{') goto yy22;
-               }
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
+       if (yych <= '@') {
+               if (yych != ':') goto yy22;
+       } else {
+               if (yych <= 'Z') goto yy20;
+               if (yych <= '`') goto yy22;
+               if (yych >= '{') goto yy22;
+       }
 yy20:
-               ++YYCURSOR;
-               yych = *YYCURSOR;
-               goto yy25;
+       ++YYCURSOR;
+       yych = *YYCURSOR;
+       goto yy25;
 yy21:
 #line 306 "ext/standard/url_scanner_ex.re"
-               { handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); 
if (STATE == STATE_PLAIN) goto state_plain; else goto state_next_arg; }
-#line 485 "ext/standard/url_scanner_ex.c"
+       { handle_tag(STD_ARGS); /* Sets STATE */; passthru(STD_ARGS); if (STATE 
== STATE_PLAIN) goto state_plain; else goto state_next_arg; }
+#line 480 "ext/standard/url_scanner_ex.c"
 yy22:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 307 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); goto state_plain_begin; }
-#line 490 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); goto state_plain_begin; }
+#line 485 "ext/standard/url_scanner_ex.c"
 yy24:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
 yy25:
-               if(yybm[0+yych] & 128) {
-                       goto yy24;
-               }
-               goto yy21;
+       if (yybm[0+yych] & 128) {
+               goto yy24;
        }
+       goto yy21;
 }
 #line 308 "ext/standard/url_scanner_ex.re"
 
@@ -506,7 +500,10 @@
        
 state_next_arg:
        start = YYCURSOR;
+
+#line 505 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0, 128, 128, 128,   0, 128,   0,   0, 
@@ -541,71 +538,69 @@
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
        };
-
-#line 546 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
-               if(yych <= ' ') {
-                       if(yych <= 0x0C) {
-                               if(yych <= 0x08) goto yy34;
-                               if(yych <= 0x0B) goto yy30;
-                               goto yy34;
-                       } else {
-                               if(yych <= 0x0D) goto yy30;
-                               if(yych <= 0x1F) goto yy34;
-                               goto yy30;
-                       }
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
+       if (yych <= ' ') {
+               if (yych <= '\f') {
+                       if (yych <= 0x08) goto yy34;
+                       if (yych <= '\v') goto yy30;
+                       goto yy34;
                } else {
-                       if(yych <= '@') {
-                               if(yych != '>') goto yy34;
-                       } else {
-                               if(yych <= 'Z') goto yy32;
-                               if(yych <= '`') goto yy34;
-                               if(yych <= 'z') goto yy32;
-                               goto yy34;
-                       }
+                       if (yych <= '\r') goto yy30;
+                       if (yych <= 0x1F) goto yy34;
+                       goto yy30;
                }
-               ++YYCURSOR;
+       } else {
+               if (yych <= '@') {
+                       if (yych != '>') goto yy34;
+               } else {
+                       if (yych <= 'Z') goto yy32;
+                       if (yych <= '`') goto yy34;
+                       if (yych <= 'z') goto yy32;
+                       goto yy34;
+               }
+       }
+       ++YYCURSOR;
 #line 316 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); handle_form(STD_ARGS); goto 
state_plain_begin; }
-#line 574 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); handle_form(STD_ARGS); goto state_plain_begin; }
+#line 567 "ext/standard/url_scanner_ex.c"
 yy30:
-               ++YYCURSOR;
-               yych = *YYCURSOR;
-               goto yy37;
+       ++YYCURSOR;
+       yych = *YYCURSOR;
+       goto yy37;
 yy31:
 #line 317 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); goto state_next_arg; }
-#line 582 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); goto state_next_arg; }
+#line 575 "ext/standard/url_scanner_ex.c"
 yy32:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 318 "ext/standard/url_scanner_ex.re"
-               { --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
-#line 587 "ext/standard/url_scanner_ex.c"
+       { --YYCURSOR; STATE = STATE_ARG; goto state_arg; }
+#line 580 "ext/standard/url_scanner_ex.c"
 yy34:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 319 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); goto state_plain_begin; }
-#line 592 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); goto state_plain_begin; }
+#line 585 "ext/standard/url_scanner_ex.c"
 yy36:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
 yy37:
-               if(yybm[0+yych] & 128) {
-                       goto yy36;
-               }
-               goto yy31;
+       if (yybm[0+yych] & 128) {
+               goto yy36;
        }
+       goto yy31;
 }
 #line 320 "ext/standard/url_scanner_ex.re"
 
 
 state_arg:
        start = YYCURSOR;
+
+#line 602 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
@@ -640,46 +635,44 @@
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
        };
-
-#line 645 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
-               if(yych <= '@') goto yy42;
-               if(yych <= 'Z') goto yy40;
-               if(yych <= '`') goto yy42;
-               if(yych >= '{') goto yy42;
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
+       if (yych <= '@') goto yy42;
+       if (yych <= 'Z') goto yy40;
+       if (yych <= '`') goto yy42;
+       if (yych >= '{') goto yy42;
 yy40:
-               ++YYCURSOR;
-               yych = *YYCURSOR;
-               goto yy45;
+       ++YYCURSOR;
+       yych = *YYCURSOR;
+       goto yy45;
 yy41:
 #line 325 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = 
STATE_BEFORE_VAL; goto state_before_val; }
-#line 661 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); handle_arg(STD_ARGS); STATE = STATE_BEFORE_VAL; 
goto state_before_val; }
+#line 652 "ext/standard/url_scanner_ex.c"
 yy42:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 326 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto 
state_next_arg; }
-#line 666 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); STATE = STATE_NEXT_ARG; goto state_next_arg; }
+#line 657 "ext/standard/url_scanner_ex.c"
 yy44:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
 yy45:
-               if(yybm[0+yych] & 128) {
-                       goto yy44;
-               }
-               goto yy41;
+       if (yybm[0+yych] & 128) {
+               goto yy44;
        }
+       goto yy41;
 }
 #line 327 "ext/standard/url_scanner_ex.re"
 
 
 state_before_val:
        start = YYCURSOR;
+
+#line 674 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
@@ -714,52 +707,47 @@
                  0,   0,   0,   0,   0,   0,   0,   0, 
                  0,   0,   0,   0,   0,   0,   0,   0, 
        };
-
-#line 719 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
-               if(yych == ' ') goto yy48;
-               if(yych == '=') goto yy50;
-               goto yy52;
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
+       if (yych == ' ') goto yy48;
+       if (yych == '=') goto yy50;
+       goto yy52;
 yy48:
-               yych = *(YYMARKER = ++YYCURSOR);
-               if(yych == ' ') goto yy55;
-               if(yych == '=') goto yy53;
+       yych = *(YYMARKER = ++YYCURSOR);
+       if (yych == ' ') goto yy55;
+       if (yych == '=') goto yy53;
 yy49:
 #line 333 "ext/standard/url_scanner_ex.re"
-               { --YYCURSOR; goto state_next_arg_begin; }
-#line 734 "ext/standard/url_scanner_ex.c"
+       { --YYCURSOR; goto state_next_arg_begin; }
+#line 723 "ext/standard/url_scanner_ex.c"
 yy50:
-               ++YYCURSOR;
-               yych = *YYCURSOR;
-               goto yy54;
+       ++YYCURSOR;
+       yych = *YYCURSOR;
+       goto yy54;
 yy51:
 #line 332 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
-#line 742 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); STATE = STATE_VAL; goto state_val; }
+#line 731 "ext/standard/url_scanner_ex.c"
 yy52:
-               yych = *++YYCURSOR;
-               goto yy49;
+       yych = *++YYCURSOR;
+       goto yy49;
 yy53:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
 yy54:
-               if(yybm[0+yych] & 128) {
-                       goto yy53;
-               }
-               goto yy51;
-yy55:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yych == ' ') goto yy55;
-               if(yych == '=') goto yy53;
-               YYCURSOR = YYMARKER;
-               goto yy49;
+       if (yybm[0+yych] & 128) {
+               goto yy53;
        }
+       goto yy51;
+yy55:
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yych == ' ') goto yy55;
+       if (yych == '=') goto yy53;
+       YYCURSOR = YYMARKER;
+       goto yy49;
 }
 #line 334 "ext/standard/url_scanner_ex.re"
 
@@ -767,7 +755,10 @@
 
 state_val:
        start = YYCURSOR;
+
+#line 760 "ext/standard/url_scanner_ex.c"
 {
+       YYCTYPE yych;
        static const unsigned char yybm[] = {
                248, 248, 248, 248, 248, 248, 248, 248, 
                248, 160, 160, 248, 248, 160, 248, 248, 
@@ -802,119 +793,114 @@
                248, 248, 248, 248, 248, 248, 248, 248, 
                248, 248, 248, 248, 248, 248, 248, 248, 
        };
-
-#line 807 "ext/standard/url_scanner_ex.c"
-       {
-               YYCTYPE yych;
-               if((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
-               yych = *YYCURSOR;
-               if(yych <= ' ') {
-                       if(yych <= 0x0C) {
-                               if(yych <= 0x08) goto yy63;
-                               if(yych <= 0x0A) goto yy64;
-                               goto yy63;
-                       } else {
-                               if(yych <= 0x0D) goto yy64;
-                               if(yych <= 0x1F) goto yy63;
-                               goto yy64;
-                       }
+       if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
+       yych = *YYCURSOR;
+       if (yych <= ' ') {
+               if (yych <= '\f') {
+                       if (yych <= 0x08) goto yy63;
+                       if (yych <= '\n') goto yy64;
+                       goto yy63;
+               } else {
+                       if (yych <= '\r') goto yy64;
+                       if (yych <= 0x1F) goto yy63;
+                       goto yy64;
+               }
+       } else {
+               if (yych <= '&') {
+                       if (yych != '"') goto yy63;
                } else {
-                       if(yych <= '&') {
-                               if(yych != '"') goto yy63;
-                       } else {
-                               if(yych <= '\'') goto yy62;
-                               if(yych == '>') goto yy64;
-                               goto yy63;
-                       }
+                       if (yych <= '\'') goto yy62;
+                       if (yych == '>') goto yy64;
+                       goto yy63;
                }
-               yych = *(YYMARKER = ++YYCURSOR);
-               goto yy77;
+       }
+       yych = *(YYMARKER = ++YYCURSOR);
+       goto yy77;
 yy61:
 #line 342 "ext/standard/url_scanner_ex.re"
-               { handle_val(STD_ARGS, 0, ' '); goto state_next_arg_begin; }
-#line 836 "ext/standard/url_scanner_ex.c"
+       { handle_val(STD_ARGS, 0, ' '); goto state_next_arg_begin; }
+#line 823 "ext/standard/url_scanner_ex.c"
 yy62:
-               yych = *(YYMARKER = ++YYCURSOR);
-               goto yy69;
+       yych = *(YYMARKER = ++YYCURSOR);
+       goto yy69;
 yy63:
-               yych = *++YYCURSOR;
-               goto yy67;
+       yych = *++YYCURSOR;
+       goto yy67;
 yy64:
-               ++YYCURSOR;
+       ++YYCURSOR;
 #line 343 "ext/standard/url_scanner_ex.re"
-               { passthru(STD_ARGS); goto state_next_arg_begin; }
-#line 847 "ext/standard/url_scanner_ex.c"
+       { passthru(STD_ARGS); goto state_next_arg_begin; }
+#line 834 "ext/standard/url_scanner_ex.c"
 yy66:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
 yy67:
-               if(yybm[0+yych] & 8) {
-                       goto yy66;
-               }
-               goto yy61;
+       if (yybm[0+yych] & 8) {
+               goto yy66;
+       }
+       goto yy61;
 yy68:
-               YYMARKER = ++YYCURSOR;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
+       YYMARKER = ++YYCURSOR;
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
 yy69:
-               if(yybm[0+yych] & 16) {
-                       goto yy68;
-               }
-               if(yych <= '&') goto yy72;
-               if(yych >= '(') goto yy61;
-               ++YYCURSOR;
-               if(yybm[0+(yych = *YYCURSOR)] & 8) {
-                       goto yy66;
-               }
+       if (yybm[0+yych] & 16) {
+               goto yy68;
+       }
+       if (yych <= '&') goto yy72;
+       if (yych >= '(') goto yy61;
+       ++YYCURSOR;
+       if (yybm[0+(yych = *YYCURSOR)] & 8) {
+               goto yy66;
+       }
 yy71:
 #line 341 "ext/standard/url_scanner_ex.re"
-               { handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
-#line 874 "ext/standard/url_scanner_ex.c"
+       { handle_val(STD_ARGS, 1, '\''); goto state_next_arg_begin; }
+#line 861 "ext/standard/url_scanner_ex.c"
 yy72:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 32) {
-                       goto yy72;
-               }
-               if(yych <= '=') goto yy75;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 32) {
+               goto yy72;
+       }
+       if (yych <= '=') goto yy75;
 yy74:
-               YYCURSOR = YYMARKER;
-               goto yy61;
+       YYCURSOR = YYMARKER;
+       goto yy61;
 yy75:
-               yych = *++YYCURSOR;
-               goto yy71;
+       yych = *++YYCURSOR;
+       goto yy71;
 yy76:
-               YYMARKER = ++YYCURSOR;
-               if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
-               yych = *YYCURSOR;
+       YYMARKER = ++YYCURSOR;
+       if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+       yych = *YYCURSOR;
 yy77:
-               if(yybm[0+yych] & 64) {
-                       goto yy76;
-               }
-               if(yych <= '!') goto yy80;
-               if(yych >= '#') goto yy61;
-               ++YYCURSOR;
-               if(yybm[0+(yych = *YYCURSOR)] & 8) {
-                       goto yy66;
-               }
+       if (yybm[0+yych] & 64) {
+               goto yy76;
+       }
+       if (yych <= '!') goto yy80;
+       if (yych >= '#') goto yy61;
+       ++YYCURSOR;
+       if (yybm[0+(yych = *YYCURSOR)] & 8) {
+               goto yy66;
+       }
 yy79:
 #line 340 "ext/standard/url_scanner_ex.re"
-               { handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
-#line 906 "ext/standard/url_scanner_ex.c"
+       { handle_val(STD_ARGS, 1, '"'); goto state_next_arg_begin; }
+#line 893 "ext/standard/url_scanner_ex.c"
 yy80:
-               ++YYCURSOR;
-               if(YYLIMIT == YYCURSOR) YYFILL(1);
-               yych = *YYCURSOR;
-               if(yybm[0+yych] & 128) {
-                       goto yy80;
-               }
-               if(yych >= '>') goto yy74;
-               ++YYCURSOR;
-               yych = *YYCURSOR;
-               goto yy79;
+       ++YYCURSOR;
+       if (YYLIMIT <= YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+       if (yybm[0+yych] & 128) {
+               goto yy80;
        }
+       if (yych >= '>') goto yy74;
+       ++YYCURSOR;
+       yych = *YYCURSOR;
+       goto yy79;
 }
 #line 344 "ext/standard/url_scanner_ex.re"
 
http://cvs.php.net/viewvc.cgi/php-src/main/streams/xp_socket.c?r1=1.33.2.2.2.9&r2=1.33.2.2.2.10&diff_format=u
Index: php-src/main/streams/xp_socket.c
diff -u php-src/main/streams/xp_socket.c:1.33.2.2.2.9 
php-src/main/streams/xp_socket.c:1.33.2.2.2.10
--- php-src/main/streams/xp_socket.c:1.33.2.2.2.9       Mon Mar 10 20:09:22 2008
+++ php-src/main/streams/xp_socket.c    Wed Jul 16 14:10:50 2008
@@ -16,7 +16,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: xp_socket.c,v 1.33.2.2.2.9 2008/03/10 20:09:22 andrey Exp $ */
+/* $Id: xp_socket.c,v 1.33.2.2.2.10 2008/07/16 14:10:50 jani Exp $ */
 
 #include "php.h"
 #include "ext/standard/file.h"
@@ -621,7 +621,7 @@
                parse_unix_address(xparam, &unix_addr TSRMLS_CC);
 
                ret = php_network_connect_socket(sock->socket,
-                               (const struct sockaddr *)&unix_addr, 
(socklen_t)sizeof(unix_addr),
+                               (const struct sockaddr *)&unix_addr, 
(socklen_t) XtOffsetOf(struct sockaddr_un, sun_path) + xparam->inputs.namelen,
                                xparam->op == STREAM_XPORT_OP_CONNECT_ASYNC, 
xparam->inputs.timeout,
                                xparam->want_errortext ? 
&xparam->outputs.error_text : NULL,
                                &err);

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to