10
  
   ˆƒ®ÈÇÆ á    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /FSS-OZR/root/proc/1606995/attr</title>
 </head>
 <body>
<h1>Index of /FSS-OZR/root/proc/1606995/attr</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/FSS-OZR/root/proc/1606995/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="current">current</a>                </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="exec">exec</a>                   </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="fscreate">fscreate</a>               </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="keycreate">keycreate</a>              </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="prev">prev</a>                   </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="sockcreate">sockcreate</a>             </td><td align="right">2026-10-10 17:34  </td><td align="right">  0 </td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body></html>
     �Åa–Ü4ý()¨‰P@Š7jà¦-ÿÇ      File not found.
  0   ˆl—Ðz¾”Êe¶…6 ¸Û7}LZ7ÿÅƒe§ž_‹uÐb&=LV[(ÀÉ      # IO::Socket::UNIX.pm
#
# Copyright (c) 1997-8 Graham Barr <gbarr@pobox.com>. All rights reserved.
# This program is free software; you can redistribute it and/or
# modify it under the same terms as Perl itself.

package IO::Socket::UNIX;

use strict;
use IO::Socket;
use Carp;

our @ISA = qw(IO::Socket);
our $VERSION = "1.42";

IO::Socket::UNIX->register_domain( AF_UNIX );

sub new {
    my $class = shift;
    unshift(@_, "Peer") if @_ == 1;
    return $class->SUPER::new(@_);
}

sub configure {
    my($sock,$arg) = @_;
    my($bport,$cport);

    my $type = $arg->{Type} || SOCK_STREAM;

    $sock->socket(AF_UNIX, $type, 0) or
	return undef;

    if(exists $arg->{Blocking}) {
        $sock->blocking($arg->{Blocking}) or
	    return undef;
    }
    if(exists $arg->{Local}) {
	my $addr = sockaddr_un($arg->{Local});
	$sock->bind($addr) or
	    return undef;
    }
    if(exists $arg->{Listen} && $type != SOCK_DGRAM) {
	$sock->listen($arg->{Listen} || 5) or
	    return undef;
    }
    elsif(exists $arg->{Peer}) {
	my $addr = sockaddr_un($arg->{Peer});
	$sock->connect($addr) or
	    return undef;
    }

    $sock;
}

sub hostpath {
    @_ == 1 or croak 'usage: $sock->hostpath()';
    my $n = $_[0]->sockname || return undef;
    (sockaddr_un($n))[0];
}

sub peerpath {
    @_ == 1 or croak 'usage: $sock->peerpath()';
    my $n = $_[0]->peername || return undef;
    (sockaddr_un($n))[0];
}

1; # Keep require happy

__END__

=head1 NAME

IO::Socket::UNIX - Object interface for AF_UNIX domain sockets

=head1 SYNOPSIS

    use IO::Socket::UNIX;

    my $SOCK_PATH = "$ENV{HOME}/unix-domain-socket-test.sock";

    # Server:
    my $server = IO::Socket::UNIX->new(
        Type => SOCK_STREAM(),
        Local => $SOCK_PATH,
        Listen => 1,
    );

    my $count = 1;
    while (my $conn = $server->accept()) {
        $conn->print("Hello " . ($count++) . "\n");
    }

    # Client:
    my $client = IO::Socket::UNIX->new(
        Type => SOCK_STREAM(),
        Peer => $SOCK_PATH,
    );

    # Now read and write from $client

=head1 DESCRIPTION

C<IO::Socket::UNIX> provides an object interface to creating and using sockets
in the AF_UNIX domain. It is 