Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  NET::UNIX::SERVER (3)

.ds Aq ’


Net::UNIX::Server - UNIX-domain sockets interface module for listeners



    use Net::Gen;               # optional
    use Net::UNIX;              # optional
    use Net::UNIX::Server;


The Net::UNIX::Server module provides additional services for UNIX-domain socket communication. It is layered atop the Net::UNIX and Net::Gen modules, which are part of the same distribution.

    Public Methods

The following methods are provided by the Net::UNIX::Server module itself, rather than just being inherited from Net::UNIX or Net::Gen.
new Usage:

    $obj = new Net::UNIX::Server;
    $obj = new Net::UNIX::Server $pathname;
    $obj = new Net::UNIX::Server $pathname, \%parameters;
    $obj = Net::UNIX::Server->new();
    $obj = Net::UNIX::Server->new($pathname);
    $obj = Net::UNIX::Server->new($pathname, \%parameters);

Returns a newly-initialised object of the given class. This is much like the regular new methods of other modules in this distribution, except that it does a bind rather than a connect, and it does a listen. Unless specified otherwise with a type object parameter, the underlying socket will be a datagram socket (SOCK_DGRAM).

The examples above show the indirect object syntax which many prefer, as well as the guaranteed-to-be-safe static method call. There are occasional problems with the indirect object syntax, which tend to be rather obscure when encountered. See for details.

See Net::TCP::Server for an example of running a server. The differences are only in the module names and the fact that UNIX-domain sockets bind to a pathname rather than to a port number. Of course, that example is for stream (type = SOCK_STREAM) sockets rather than for datagrams. UNIX-domain datagram sockets don’t need to do an accept() (and can’t where I’ve tested this code), and can’t answer back to their clients unless those clients have also bound to a specific path name.

init Usage:

    return undef unless $self = $self->init;
    return undef unless $self = $self->init(\%parameters);
    return undef unless $self = $self->init($pathname);
    return undef unless $self = $self->init($pathname, \%parameters);

Verifies that all previous parameter assignments are valid (via checkparams). Returns the incoming object on success, and undef on failure. Usually called only via a derived class’s init method or its own new call.

    Protected Methods

[See the description in Protected Methods in Net::Gen for my definition of protected methods in Perl.]


    Known Socket Options

There are no socket options known to the Net::UNIX::Server module itself.

    Known Object Parameters

There are no object parameters registered by the Net::UNIX::Server module itself.


default None.
exportable None.
tags The following :tags are available for grouping exportable items:
:ALL All of the above exportable items.


This module has been tested with threaded perls, and should be as thread-safe as perl itself. (As of 5.005_03 and 5.005_57, that’s not all that safe just yet.) It also works with interpreter-based threads (’ithreads’) in more recent perl releases.


Net::UNIX(3), Net::Gen(3)


Spider Boardman <>
Search for    or go to Top of page |  Section 3 |  Main Index

perl v5.20.3 NET::UNIX::SERVER (3) 2016-03-17

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.