[PHP-DEV] PHP 4.0 Bug #8667 Updated: sockets

2001-03-04 Thread cynic

ID: 8667
Updated by: cynic
Reported By: [EMAIL PROTECTED]
Status: Open
Bug Type: Sockets related
Assigned To: 
Comments:

From: Ralph Mitchell [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: PHP-4.0.4pl1 bug #8667

I got the exact same result as you mention in bug #8667, on Solaris 6
with gcc 2.95.2.  I was compiling the latest sockets.c, pulled today
from CVS, with this id string:

/* $Id: sockets.c,v 1.32 2001/02/26 06:07:16 andi Exp $ */

Believe it or not, moving:

#include "php_sockets.h" (line 39)

down to *below* the block of system includes (i.e. after the include for
sys/uio.h, line 55) fixed the problem.  Guess php_sockets.h depends on
some system stuff being defined, probably from sys/socket.h.

Maybe someone else already spotted this - I may have missed it when I
checked the bug list.


Previous Comments:
---

[2001-02-20 18:20:38] [EMAIL PROTECTED]
Simple but ugly workaround for Solaris 7/8 is to define _KERNEL for sockets.h in 
ext/sockets/sockets.c in PHP.

ext/sockets/socket.c:

#define _KERNEL
#include sys/socket.h
#undef _KERNEL

[EMAIL PROTECTED]
[EMAIL PROTECTED]

---

[2001-01-12 10:51:19] [EMAIL PROTECTED]
user feedback:

Nope. I can reproduce this with latest CVS in Solaris 8.. BUT only
when using GCC. With the Sun CC it works fine.


So this bug report should be re-opened.
Here's what I get with latest CVS when using GCC 2.95.2:


safe_mode.c: In function `php_checkuid':
safe_mode.c:127: warning: passing arg 2 of `zend_hash_exists' discards
qualifiers from pointer target type
sockets.c:118: `php_if___xnet_listen' undeclared here (not in a function)
sockets.c:118: initializer element is not constant
sockets.c:118: (near initialization for `sockets_functions[10].handler')
sockets.c:139: `php_if___xnet_socket' undeclared here (not in a function)
sockets.c:139: initializer element is not constant
sockets.c:139: (near initialization for `sockets_functions[16].handler')
sockets.c:140: `php_if___xnet_connect' undeclared here (not in a function)
sockets.c:140: initializer element is not constant
sockets.c:140: (near initialization for `sockets_functions[17].handler')
sockets.c:142: `php_if___xnet_bind' undeclared here (not in a function)
sockets.c:142: initializer element is not constant
sockets.c:142: (near initialization for `sockets_functions[19].handler')
sockets.c:146: `php_if___xnet_sendto' undeclared here (not in a function)
sockets.c:146: initializer element is not constant
sockets.c:146: (near initialization for `sockets_functions[23].handler')
sockets.c:153: `php_if___xnet_recvmsg' undeclared here (not in a function)
sockets.c:153: initializer element is not constant
sockets.c:153: (near initialization for `sockets_functions[30].handler')
sockets.c:154: `php_if___xnet_sendmsg' undeclared here (not in a function)
sockets.c:154: initializer element is not constant
sockets.c:154: (near initialization for `sockets_functions[31].handler')
sockets.c:157: `php_if___xnet_getsockopt' undeclared here (not in a
function)
sockets.c:157: initializer element is not constant
sockets.c:157: (near initialization for `sockets_functions[34].handler')
sockets.c:159: `php_if___xnet_socketpair' undeclared here (not in a
function)
sockets.c:159: initializer element is not constant
sockets.c:159: (near initialization for `sockets_functions[36].handler')
make[3]: *** [sockets.lo] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1


---

[2001-01-12 02:31:49] [EMAIL PROTECTED]
I fixed this compilation problem in the 4.0.5 development tree about a week ago.  See 
revision 1.27 of sockets.c 
(http://cvs.php.net/viewcvs.cgi/php4/ext/sockets/sockets.c.diff?r1=1.26r2=1.27).

---

[2001-01-12 02:25:27] [EMAIL PROTECTED]
gcc  -I. -I/export/home/art/php-4.0.4pl1/ext/sockets 
-I/export/home/art/php-4.0.4pl1/main -I/export/home/art/php-4.0.4pl1 
-I/export/home/art/apache_1.3.14/src/include 
-I/export/home/art/apache_1.3.14/src/os/unix -I/export/home/art/php-4.0.4pl1/Zend 
-I/export/home/art/c-client/include -I/export/home/art/sdk40/include 
-I/usr/local/mysql/include/mysql -I/export/home/art/php-4.0.4pl1/ext/xml/expat/xmltok 
-I/export/home/art/php-4.0.4pl1/ext/xml/expat/xmlparse 
-I/export/home/art/php-4.0.4pl1/TSRM  -D_POSIX_PTHREAD_SEMANTICS -DXML_BYTE_ORDER=21 
-g -O2  -c sockets.c  touch sockets.lo
sockets.c: In function `php_if_recvmsg':
sockets.c:1728: structure has no member named `msg_control'
sockets.c:1729: structure has no member named `msg_controllen'
sockets.c:1731: structure has no member named `msg_control'
sockets.c:1732: structure has no member named 

Re: [PHP-DEV] PHP 4.0 Bug #8667 Updated: sockets

2001-01-12 Thread Jon Parise

On Fri, Jan 12, 2001 at 05:47:20PM +0200, Jani Taskinen wrote:

 Nope. I can reproduce this with latest CVS in Solaris 8.. BUT only
 when using GCC. With the Sun CC it works fine.
 
 So this bug report should be re-opened.

Well, the bug displayed errors that I fixed under Sun CC.  What you
have here are different errors with GCC, so that should be filed as a
separate bug.

 Here's what I get with latest CVS when using GCC 2.95.2:
 
 safe_mode.c: In function `php_checkuid':
 safe_mode.c:127: warning: passing arg 2 of `zend_hash_exists' discards
 qualifiers from pointer target type
 sockets.c:118: `php_if___xnet_listen' undeclared here (not in a function)
 sockets.c:118: initializer element is not constant
 sockets.c:118: (near initialization for `sockets_functions[10].handler')
 sockets.c:139: `php_if___xnet_socket' undeclared here (not in a function)
 sockets.c:139: initializer element is not constant
 sockets.c:139: (near initialization for `sockets_functions[16].handler')
 sockets.c:140: `php_if___xnet_connect' undeclared here (not in a function)
 sockets.c:140: initializer element is not constant
 sockets.c:140: (near initialization for `sockets_functions[17].handler')
 sockets.c:142: `php_if___xnet_bind' undeclared here (not in a function)
 sockets.c:142: initializer element is not constant
 sockets.c:142: (near initialization for `sockets_functions[19].handler')
 sockets.c:146: `php_if___xnet_sendto' undeclared here (not in a function)
 sockets.c:146: initializer element is not constant
 sockets.c:146: (near initialization for `sockets_functions[23].handler')
 sockets.c:153: `php_if___xnet_recvmsg' undeclared here (not in a function)
 sockets.c:153: initializer element is not constant
 sockets.c:153: (near initialization for `sockets_functions[30].handler')
 sockets.c:154: `php_if___xnet_sendmsg' undeclared here (not in a function)
 sockets.c:154: initializer element is not constant
 sockets.c:154: (near initialization for `sockets_functions[31].handler')
 sockets.c:157: `php_if___xnet_getsockopt' undeclared here (not in a
 function)
 sockets.c:157: initializer element is not constant
 sockets.c:157: (near initialization for `sockets_functions[34].handler')
 sockets.c:159: `php_if___xnet_socketpair' undeclared here (not in a
 function)
 sockets.c:159: initializer element is not constant
 sockets.c:159: (near initialization for `sockets_functions[36].handler')
 make[3]: *** [sockets.lo] Error 1
 make[2]: *** [all-recursive] Error 1
 make[1]: *** [all-recursive] Error 1
 make: *** [all-recursive] Error 1
 
 
 --Jani
 
 
 Previous Comments:
 ---
 
 [2001-01-12 02:25:27] [EMAIL PROTECTED]
 gcc  -I. -I/export/home/art/php-4.0.4pl1/ext/sockets 
-I/export/home/art/php-4.0.4pl1/main -I/export/home/art/php-4.0.4pl1 
-I/export/home/art/apache_1.3.14/src/include 
-I/export/home/art/apache_1.3.14/src/os/unix -I/export/home/art/php-4.0.4pl1/Zend 
-I/export/home/art/c-client/include -I/export/home/art/sdk40/include 
-I/usr/local/mysql/include/mysql -I/export/home/art/php-4.0.4pl1/ext/xml/expat/xmltok 
-I/export/home/art/php-4.0.4pl1/ext/xml/expat/xmlparse 
-I/export/home/art/php-4.0.4pl1/TSRM  -D_POSIX_PTHREAD_SEMANTICS -DXML_BYTE_ORDER=21 
-g -O2  -c sockets.c  touch sockets.lo
 sockets.c: In function `php_if_recvmsg':
 sockets.c:1728: structure has no member named `msg_control'
 sockets.c:1729: structure has no member named `msg_controllen'
 sockets.c:1731: structure has no member named `msg_control'
 sockets.c:1732: structure has no member named `msg_controllen'
 sockets.c:1735: structure has no member named `msg_flags'
 sockets.c:1741: structure has no member named `msg_control'
 sockets.c:1750: warning: passing arg 3 of `add_assoc_string' makes pointer from 
integer without a cast
 sockets.c:1754: structure has no member named `msg_controllen'
 sockets.c:1755: structure has no member named `msg_flags'
 sockets.c:1787: structure has no member named `msg_control'
 sockets.c:1788: structure has no member named `msg_controllen'
 sockets.c:1790: structure has no member named `msg_control'
 sockets.c:1791: structure has no member named `msg_controllen'
 sockets.c:1794: structure has no member named `msg_flags'
 sockets.c:1800: structure has no member named `msg_control'
 sockets.c:1810: warning: passing arg 3 of `add_assoc_string' makes pointer from 
integer without a cast
 sockets.c:1812: structure has no member named `msg_controllen'
 sockets.c:1814: structure has no member named `msg_flags'
 *** Error code 1
 make: Fatal error: Command failed for target `sockets.lo'
 Current working directory /export/home/art/php-4.0.4pl1/ext/sockets
 *** Error code 1
 make: Fatal error: Command failed for target `all-recursive'
 Current working directory /export/home/art/php-4.0.4pl1/ext/sockets
 *** Error code 1
 make: Fatal error: Command failed for target `all-recursive'
 Current working directory /export/home/art/php-4.0.4pl1/ext
 *** Error code 1
 

Re: [PHP-DEV] PHP 4.0 Bug #8667 Updated: sockets

2001-01-12 Thread Jon Parise

On Fri, Jan 12, 2001 at 07:16:57PM +0200, Jani Taskinen wrote:

 Well, the bug displayed errors that I fixed under Sun CC.  What you
 have here are different errors with GCC, so that should be filed as a
 separate bug.
 
 [clip from original bug report]
 gcc  -I. -I/export/home/art/php-4.0.4pl1/ext/sockets
 
 So what is this ? Some new name for Sun CC?  :)

Ah, I missed that one.  My fault.

-- 
Jon Parise ([EMAIL PROTECTED])  .  Rochester Inst. of Technology
http://www.csh.rit.edu/~jon/  :  Computer Science House Member

-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]