Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Answer: How do I send a file through a Socket Connection ?

by chromatic (Archbishop)
on Mar 24, 2000 at 01:42 UTC ( #6010=categorized answer: print w/replies, xml ) Need Help??

Q&A > network programming > How do I send a file through a Socket Connection ? - Answer contributed by chromatic

The IO::Socket package inherits from IO::Handle, so you can treat your socket (after it's all set up) like a filehandle. You can print to it or read from it! Just do something like:
open(INPUT, $my_file) || die "Can't open: $!"; print $connection while (<INPUT); close(INPUT) || die "Can't close: $!";
Disabling buffering ($| = 1) might be a good idea. You can also call select on the $connection object.

On the server side, you can just read from the socket (once it is set up) with the normal angle operators. Using the accept() method will cause the server to listen to the socket until it gets a response, and it will return an object with filehandle properties. Whatever you want to do with it from there is up to you, once it's in a scalar or an array.

Log In?

What's my password?
Create A New User
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (6)
As of 2017-10-17 10:40 GMT
Find Nodes?
    Voting Booth?
    My fridge is mostly full of:

    Results (225 votes). Check out past polls.