lib::LWP::SecureSocket
Section: User Contributed Perl Documentation
(3)
Updated: perl 5.004, patch 55
Index
Return to Main Contents
NAME
LWP::SecureSocket - SSL TCP/IP socket interface
SYNOPSIS
$socket = new LWP::SecureSocket;
$socket->connect('localhost', 7); # echo
$quote = 'I dunno, I dream in Perl sometimes...';
$socket->write("$quote\n");
$socket->read_until("\n", \$buffer);
$socket->read(\$buffer);
$socket = undef; # close
DESCRIPTION
This class implements TCP/IP sockets. It groups socket generation,
TCP address manipulation and buffered reading. Errors are handled by
dying (throws exceptions).
This class should really not be required, something like this should
be part of the standard Perl5 library.
Running this module standalone executes a self test which requires
localhost to serve chargen and echo protocols.
METHODS
$sock = new LWP::SecureSocket()
Constructs a new socket object.
$sock->connect($host, $port)
Connect the socket to given host and port.
$sock->shutdown()
Shuts down the connection.
$sock->bind($host, $port)
Binds a name to the socket.
$sock->listen($queuesize)
Set up listen queue for socket.
$sock->accept($timeout)
Accepts a new connection. Returns a new LWP::SecureSocket object if successful.
Timeout not implemented yet. would require modifying new, and not
necessary for app, so I\'m not bothering to modify. Might work
anyways, though.
$sock->getsockname()
Returns a 2 element array ($host, $port)
$sock->read_until($delim, $data_ref, $size, $timeout)
Reads data from the socket, up to a delimiter specified by a regular
expression. If $delim is undefined all data is read. If $size is
defined, data will be read internally in chunks of $size bytes. This
does not mean that we will return the data when size bytes are read.
Note that $delim is discarded from the data returned.
$sock->read($bufref, [$size, $timeout])
Reads data of the socket. Not more than $size bytes. Might return
less if the data is available. Dies on timeout.
$sock->pushback($data)
Put data back into the socket. Data will returned next time you
read(). Can be used if you find out that you have read too much.
$sock->write($data, [$timeout])
Write data to socket. The $data argument might be a scalar or code.
If data is a reference to a subroutine, then we will call this routine
to obtain the data to be written. The routine will be called until it
returns undef or empty data. Data might be returned from the callback
as a scalar or as a reference to a scalar.
Write returns the number of bytes written to the socket.
_getaddress($h, $p)
Given a host and a port, it will return the address (sockaddr_in)
suitable as the name argument for connect() or bind(). Might return
several addresses in array context if the hostname is bound to several
IP addresses.
SELF TEST
This self test is only executed when this file is run standalone. It
tests its functions against some standard TCP services implemented by
inetd. If you do not have them around the tests will fail.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- METHODS
-
- $sock = new LWP::SecureSocket()
-
- $sock->connect($host, $port)
-
- $sock->shutdown()
-
- $sock->bind($host, $port)
-
- $sock->listen($queuesize)
-
- $sock->accept($timeout)
-
- $sock->getsockname()
-
- $sock->read_until($delim, $data_ref, $size, $timeout)
-
- $sock->read($bufref, [$size, $timeout])
-
- $sock->pushback($data)
-
- $sock->write($data, [$timeout])
-
- _getaddress($h, $p)
-
- SELF TEST
-
This document was created by
man2html,
using the manual pages.
Time: 23:58:16 GMT, February 15, 2023