ID: 32184 User updated by: huoqi29 at 163 dot com Reported By: huoqi29 at 163 dot com Status: Open Bug Type: Sockets related Operating System: Linux DevelopWeb 2.6.8-24-smp #1 PHP Version: 5.0.3 New Comment:
Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused Previous Comments: ------------------------------------------------------------------------ [2005-03-04 09:02:30] huoqi29 at 163 dot com Description: ------------ If you uncomment the '//echo "Bug";' and when you run this script ,you will get the expect result if you don't logout, and when you login and "ps -aux " you can find it. But where you "telnet 127.0.0.1 99999" you can't connect it . Reproduce code: --------------- <?php if(pcntl_fork()){exit;} posix_setsid(); chdir("/"); umask(0); $sock=socket_create(AF_INET,SOCK_STREAM,SOL_TCP); socket_bind($sock,"127.0.0.1",99999); socket_listen($sock); $R=array($sock); while(1) { $T=$R; if($C=socket_select($T,$W=NULL,$E=NULL,0,0)) { foreach($T as $sock2) { if($sock2==$sock) { $client=socket_accept($sock); array_push($R,$client); } else{ //echo "Bug"; //socket_getpeername($sock2,&$add,&$prot); $B=socket_recv($sock2,$Buf,1024,0); if($B==0 || chop($Buf)=="quit" || chop($Buf)=="exit") { $I=array_search($sock2,$R); unset($R[$I]); socket_close($sock2); }else socket_send($sock2,"Hello".$Buf,1024,0); } } } } ?> ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=32184&edit=1