Kammen van, Marco, Springer SBM NL wrote: > >>> From: Peter Scott [mailto:[EMAIL PROTECTED] >>> Subject: Re: Reading from multiple sockets. > >> On Tue, 21 Oct 2008 12:53:53 +0200, Kammen van, Marco, Springer SBM NL >> wrote: >> I'm pretty new to working with sockets in perl, looked around for days >> for a proper solution for my IRC/DCC problem but couldn't find one.
>>>Yeah I was planning to add another Perl programming book to my list.... >>>Thanks for all hints so far... I've got the following to work now using >>>IO::Select >>>Properly send & receive to and from server. >>>I can esablish a DCC connection over additional socket, but then I only >>>get the data from the DCC socket, and no-longer the data from the server >>>socket, untill the DCC socket is closed..... Never mind... I think i fixed it.... Dunno if its the proper way but hey it works!!!!!!!!! $con = IO::Socket::INET->new(PeerAddr=>"$server", PeerPort=>"$port", Proto=>'tcp', Timeout=>'30') || print "Error! $!\n"; $select = IO::Select->new(); $select->add($con); while(@ready = $select->can_write) { for $socket (@ready) { #The DCC Connection if($socket == $dcc) { $talk = <$dcc>; print $talk; #The Server Connection } elsif ($socket == $con) { $answer = <$con>; print $answer; # Stufff if ($answer =~ /:(.*)\!.* PRIVMSG $me :\001DCC CHAT chat (\d+) ( +\d+)\001\r\n/) { print "Received dcc from $1 with $2 and $3\n"; $dcc = IO::Socket::INET->new(PeerAddr=>"$2", PeerPort=>"$3", Proto=>'tcp', Timeout=>'30') || print "Error! + $!\n"; print $dcc "Please Enter Your Password!\n"; $select->add($dcc); } } else { print "Dunno?\n"; exit 1; } } } -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/ -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/