php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #7423 XPG4_2 required?!?
Submitted: 2000-10-24 05:49 UTC Modified: 2001-06-01 16:01 UTC
From: lupe at lupe-christoph dot de Assigned:
Status: Closed Package: Sockets related
PHP Version: 4.0.3pl1 OS: Solaris 8 x86
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: lupe at lupe-christoph dot de
New email:
PHP Version: OS:

 

 [2000-10-24 05:49 UTC] lupe at lupe-christoph dot de
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.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2000-10-25 19:03 UTC] chrisv@php.net
Try the latest CVS. I believe the bugs are repaired there.

Chris
 [2000-11-13 10:18 UTC] kir@php.net
status->feedback
 [2000-12-15 19:57 UTC] sniper@php.net
I tested this myself and it doesn't work with latest CVS.

--Jani
 [2001-05-11 21:27 UTC] sniper@php.net
I no longer have access to Solaris machine..please check
if this happens with PHP 4.0.5 / latest CVS.

--Jani

 [2001-06-01 16:01 UTC] sniper@php.net
AFAIK this should be fixed in PHP 4.0.6 / latest CVS.

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Dec 21 17:01:58 2024 UTC