Bug #64833 [Fbk->NoF]: ext/sockets/sendrecvmsg.c related compilation errors

From: Date: Sun, 22 Mar 2020 04:22:09 +0000
Subject: Bug #64833 [Fbk->NoF]: ext/sockets/sendrecvmsg.c related compilation errors
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-226219@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64833&edit=1

 ID:               64833
 Updated by:       php-bugs@lists.php.net
 Reported by:      clicky at erebot dot net
 Summary:          ext/sockets/sendrecvmsg.c related compilation errors
-Status:           Feedback
+Status:           No Feedback
 Type:             Bug
 Package:          Compile Failure
 Operating System: Debian Stretch
 PHP Version:      7.1.0alpha3
 Assigned To:      cmb
 Private report:   N

 New Comment:

No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Re-Opened". Thank you.


Previous Comments:
------------------------------------------------------------------------
[2020-03-10 09:17:13] cmb@php.net

Is this still an issue for any of the actively supported PHP
versions[1]?

[1] <https://www.php.net/supported-versions.php>

------------------------------------------------------------------------
[2017-10-16 20:32:27] peterkokot at gmail dot com

Hello, I've tried compiling PHP 7.1.10 on Debian 9 and it goes through without any patches
required so far. Used procedure:
./configure --disable-all --enable-sockets=shared
make

I believe the compilation issues have been fixed in the mentioned problematic file and got into PHP
7.1.x release:
https://github.com/php/php-src/commits/master/ext/sockets/conversions.c

I believe we can close this issue since also according to some Docker images based on Debian 8 and 9
the compilation goes through ok. In case the issue is still relevant, you we can reopen this ticket
anytime anyway. Thanks.

------------------------------------------------------------------------
[2016-07-11 15:21:12] clicky at erebot dot net

Now I'm seeing errors like this one when compiling PHP 7.1.0alpha3:

In file included from /usr/include/rpc/netdb.h:42:0,
                 from /usr/include/netdb.h:32,
                 from .../phpfarm/src/php-7.1.0alpha3-debug/main/php_network.h:79,
                 from .../phpfarm/src/php-7.1.0alpha3-debug/ext/sockets/sockaddr_conv.h:4,
                 from .../phpfarm/src/php-7.1.0alpha3-debug/ext/sockets/conversions.c:1:
.../phpfarm/src/php-7.1.0alpha3-debug/ext/sockets/conversions.c:1291:47: error: invalid use of
undefined type ‘struct in6_pktinfo’
   {"addr", sizeof("addr"), 1, offsetof(struct in6_pktinfo, ipi6_addr),
from_zval_write_sin6_addr, to_zval_read_sin6_addr},

It seems some of the structures like in6_pktinfo (from netinet/in.h) and ucred (from bits/socket.h)
are not exposed in glibc headers anymore (at least with glibc 2.22) unless -D_GNU_SOURCE is used in
the CFLAGS.  That's because those structures are now guarded with the _USE_GNU preprocessor
macro.

------------------------------------------------------------------------
[2015-05-08 00:37:58] clicky at erebot dot net

Closing this bug as I cannot reproduce it in stable releases.

------------------------------------------------------------------------
[2013-05-16 19:32:46] clicky at erebot dot net

Adding to my initial report.
Compiling with ./configure --disable-all --enable-sockets also triggers this issue, although with a
different output:

/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1288:31: error: invalid use of
undefined type ‘struct in6_pktinfo’
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1289:37: error: invalid use of
undefined type ‘struct in6_pktinfo’
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1307:29: error: invalid use of
undefined type ‘struct ucred’
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1307:29: error: initializer
element is not constant
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1307:29: error: (near
initialization for ‘descriptors_ucred[0].field_offset’)
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1308:29: error: invalid use of
undefined type ‘struct ucred’
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1308:29: error: initializer
element is not constant
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1308:29: error: (near
initialization for ‘descriptors_ucred[1].field_offset’)
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1310:29: error: invalid use of
undefined type ‘struct ucred’
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1310:29: error: initializer
element is not constant
/home/qa/phpfarm/src/php-5.5.0RC1-debug/ext/sockets/conversions.c:1310:29: error: (near
initialization for ‘descriptors_ucred[2].field_offset’)
make: *** [ext/sockets/conversions.lo] Error 1

------------------------------------------------------------------------


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=64833


--
Edit this bug report at https://bugs.php.net/bug.php?id=64833&edit=1


Thread (12 messages)

« previous php.bugs (#226219) next »