[PHP-DEV] PHP 4.0 Bug #7423 Updated: XPG4_2 required?!? From: sniper <email protected>
Date: 12/15/00

ID: 7423
Updated by: sniper
Reported By: lupe <email protected>
Old-Status: Feedback
Status: Open
Bug Type: Compile Failure
Assigned To:
Comments:

I tested this myself and it doesn't work with latest CVS.

--Jani

Previous Comments:
---------------------------------------------------------------------------

[2000-11-13 10:18:39] kir <email protected>
status->feedback

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

[2000-10-25 19:03:23] chrisv <email protected>
Try the latest CVS. I believe the bugs are repaired there.

Chris

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

[2000-10-24 05:49:38] lupe <email protected>
Even after fixing the variable name 'sun', compiling PHP with --enable-sockets
configured fails on Solaris 8 x86. Most certainly SPARC is also affected.
Early versions of Solaris probably, too.

/bin/sh /sw/WORK/www/php-4.0.3pl1/libtool --silent --mode=compile gcc -I. -I/sw/WORK/www/php-4.0.3pl1/ext/sockets -I/sw/WORK/www/php-4.0.3pl1 -I/sw/WORK/www/php-4.0.3pl1/main -I/opt/local/i386/apache/include -I/sw/WORK/www/php-4.0.3pl1/Zend -I/sw/WORK/www/php-4.0.3pl1 -I/opt/local/i386/include -I/opt/local/i386/include/freetype -I/opt/local/i386/imap/include -I/opt/local/i386/mysql/include -I/sw/WORK/www/php-4.0.3pl1/ext/xml/expat/xmltok -I/sw/WORK/www/php-4.0.3pl1/ext/xml/expat/xmlparse -I/sw/WORK/www/php-4.0.3pl1/TSRM -I/opt/local/i386/include/bind -I/opt/local/i386/include -D_POSIX_PTHREAD_SEMANTICS -DEAPI -DXML_BYTE_ORDER=12 -g -O2 -c sockets.c
sockets.c: In function `php_if_recvmsg':
sockets.c:1614: structure has no member named `msg_control'
sockets.c:1615: structure has no member named `msg_controllen'
sockets.c:1617: structure has no member named `msg_control'
sockets.c:1618: structure has no member named `msg_controllen'
sockets.c:1621: structure has no member named `msg_flags'
sockets.c:1627: structure has no member named `msg_control'
sockets.c:1636: warning: passing arg 3 of `add_assoc_string' makes pointer from integer without a cast
sockets.c:1640: structure has no member named `msg_controllen'
sockets.c:1641: structure has no member named `msg_flags'
sockets.c:1673: structure has no member named `msg_control'
sockets.c:1674: structure has no member named `msg_controllen'
sockets.c:1676: structure has no member named `msg_control'
sockets.c:1677: structure has no member named `msg_controllen'
sockets.c:1680: structure has no member named `msg_flags'
sockets.c:1686: structure has no member named `msg_control'
sockets.c:1695: warning: passing arg 3 of `add_assoc_string' makes pointer from integer without a cast
sockets.c:1697: structure has no member named `msg_controllen'
sockets.c:1698: structure has no member named `msg_flags'
*** Error code 1

Looking at /usr/include/sys/socket.h, I see this:

/*
 * Message header for recvmsg and sendmsg calls.
 */
struct msghdr {
        void *msg_name; /* optional address */
        socklen_t msg_namelen; /* size of address */
        struct iovec *msg_iov; /* scatter/gather array */
        int msg_iovlen; /* # elements in msg_iov */

#if defined(_XPG4_2) || defined(_KERNEL)
        void *msg_control; /* ancillary data */
        socklen_t msg_controllen; /* ancillary data buffer len */
        int msg_flags; /* flags on received message */
#else
        caddr_t msg_accrights; /* access rights sent/received */
        int msg_accrightslen;
#endif /* defined(_XPG4_2) || defined(_KERNEL) */
};

Using the requires a non-standard library (-lxnet rather than the usual
-lsocket). The recvmsg(3XNET) does not tell the "canonical" method
of activating the X/Open Networking features.

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

Full Bug description available at: http://bugs.php.net/?id=7423

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>