Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Inconsistancy within Net::FTP?

by rdw (Curate)
on Aug 24, 2000 at 12:50 UTC ( #29385=note: print w/replies, xml ) Need Help??

in reply to Inconsistancy within Net::FTP?

As others have pointed out, this is because Net::FTP is calling fileno. I just tried this and it worked for me - I don't think it will solve all your problems, but it might be a good starting point.
my $data="FOOBAR"; pipe PIPEREAD, PIPEWRITE; print PIPEWRITE $data; close PIPEWRITE; my($ftp) = Net::FTP->new($destserv) || die "error connecting\n"; $ftp->login($destuser, $destpass); $ftp->binary(); $ftp->put(*PIPEREAD,"remotelogfile") or die "error uploading\n"; $ftp->quit();
Basically, I used pipe to create a real pipe between Perl and whatever Net::FTP is doing.

Have fun,


Replies are listed 'Best First'.
RE: Re: Inconsistancy within Net::FTP?
by merlyn (Sage) on Aug 24, 2000 at 17:39 UTC
    That works as long as you don't have more than 8K of data (doh!), because a pipe can buffer up to that before blocking. More than that, you'll block on the write at your print PIPEWRITE, and there won't be anyone around to be reading it, so you'll wait forever. Bzzzzz.

    -- Randal L. Schwartz, Perl hacker

      Like I said, it won't solve all the problems :-)

      Since Net::FTP is blocking, you can't really do this without two processes.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://29385]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (4)
As of 2021-01-20 07:56 GMT
Find Nodes?
    Voting Booth?