Edit report at https://bugs.php.net/bug.php?id=64340&edit=1
ID: 64340
Updated by: laruence@php.net
Reported by: reeze@php.net
Summary: sockets tests failed
Status: Closed
Type: Bug
Package: Sockets related
Operating System: Mac OSX 10.8
PHP Version: 5.5.0alpha5
Assigned To: laruence
Block user comment: N
Private report: N
New Comment:
I revert the previous fix, since the build broken.
I am wondering, if don't fix that, what's the problem is?
thanks
Previous Comments:
------------------------------------------------------------------------
[2013-03-05 06:04:06] laruence@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src.git;a=commit;h=3f67d5ae434236be1db2ee54baf85725ac7b6a56
Log: Revert "Fixed Bug #64340 (sockets tests failed) Patch by Reeze"
------------------------------------------------------------------------
[2013-03-05 05:58:56] laruence@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src.git;a=commit;h=3f67d5ae434236be1db2ee54baf85725ac7b6a56
Log: Revert "Fixed Bug #64340 (sockets tests failed) Patch by Reeze"
------------------------------------------------------------------------
[2013-03-04 18:21:21] reeze@php.net
Hi, cataphract
The macro __APPLE_USE_RFC_3542 must be defined before including netinet/in.h,
but not all of the our c files include php_sockets.h in the topmost, but by indirectly
include other header files.
eg:
$ head -n 1 conversions.c
sockaddr_conv.h
$ header -n 5 sockaddr_conv.h
...
#include <php_network.h>
#include "php_sockets.h" /* php_socket */
php_network.h wil be included <netinet/in.h> before the macro defined. and php_network.h has
to been included
before php_sockets.h, so I have to move conversion.h up instead.
in the mean time, in convesion.h <netinet/in.h> was included before php_sockets.h too, so I
have to move it
up to meet the requirement of the macro.
The current partial patch breaks the build because of missing the left part:
Undefined symbols for architecture x86_64:
"_from_zval_write_in6_pktinfo", referenced from:
_init_ancillary_registry in sendrecvmsg.o
_php_do_setsockopt_ipv6_rfc3542 in sendrecvmsg.o
"_to_zval_read_in6_pktinfo", referenced from:
_init_ancillary_registry in sendrecvmsg.o
_php_do_getsockopt_ipv6_rfc3542 in sendrecvmsg.o
ld: symbol(s) not found for architecture x86_64
------------------------------------------------------------------------
[2013-03-03 02:55:50] laruence@php.net
Thank you for your bug report. This issue has already been fixed
in the latest released version of PHP, which you can download at
http://www.php.net/downloads.php
I commmitted, since reeze doesn't has PHP karma.
please verify the fix.
------------------------------------------------------------------------
[2013-03-03 02:53:54] laruence@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src.git;a=commit;h=f2246f352fc01295c370728d68a9bcd2bb546652
Log: Fixed Bug #64340 (sockets tests failed) Patch by Reeze
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=64340--
Edit this bug report at https://bugs.php.net/bug.php?id=64340&edit=1