NAME
Text::Netstring - Perl module for manipulation of netstrings
SYNOPSIS
use Text::Netstring qw(netstring_encode netstring_decode netstring_verify);
$ns = netstring_encode($text);
@ns = netstring_encode(@text);
$ns = netstring_encode(@text);
$text = netstring_decode($ns);
@text = netstring_decode(@ns);
$text = netstring_decode(@ns);
$valid = netstring_verify($string);
@valid = netstring_verify(@string);
DESCRIPTION
This module is a collection of functions to make use of netstrings in your perl programs. A netstring is a string encoding used by, at least, QMTP and QMQP.
- netstring_encode()
-
Encode the argument string, list of strings, or referenced list of string as a netstring.
Supplying a scalar argument in a scalar context or list or list reference argument in list context does what you'd expect; encoding the scalar or each element of the list, as appropriate. Supplying a list or list reference argument in a scalar context, however, returns a single scalar which is the concatenation of each element of the list encoded as a netstring.
- netstring_decode()
-
Decode the argument netstring, list of netstrings, or referenced list of netstrings returning the interpretation of each.
The same context handling as for netstring_encode() applies.
- netstring_verify()
-
Check the validity of the supplied netstring, or list of netstrings. Returns a
TRUE
orFALSE
value, or list of same, as appropriate. Supplying a list argument in a scalar context will return a value for the first element of the list only.
EXAMPLES
use Text::Netstring qw(netstring_encode);
@s = ("foo", "bar");
$t = netstring_encode( scalar netstring_encode(@s) );
12:3:foo,3:bar,,
is the value of $t
$s = ["5:whizz," , "4:bang,"];
$t = netstring_decode($s);
whizzbang
is the value of $t
NOTES
The format of a netstring is described in http://cr.yp.to/proto/qmtp.txt
AUTHOR
James Raftery <james@now.ie>.