File Coverage

File:blib/lib/FUSE/Client.pm
Coverage:26.7%

linestmtbrancondsubtimecode
1package FUSE::Client;
2
3require 5;
4
1
1
1
8
3
9
use strict;
5
6
1
1
1
9
4
8
use vars qw($VERSION @ISA @EXPORT);
7
8
1
1
1
13
4
8
use IO::Socket;
9
10require Exporter;
11
12@ISA = qw(Exporter);
13@EXPORT = qw();
14$VERSION = '1.08';
15
16sub new {
17
0
        my ($class,$params) = @_;
18
0
        my $self = {};
19
0
        bless $self,ref $class || $class;
20
0
0
        $self->{quiet} = ${$params}{Quiet};
21
0
0
        $self->{port} = ${$params}{Port} || 1024;
22
0
        $self->{sock} = 0;
23
0
        return $self;
24}
25
26sub connect {
27
0
        my ($self,$host) = @_;
28
0
        $self->{sock} = new IO::Socket::INET ( PeerAddr => $host, PeerPort => $self->{port}, Proto => 'tcp' );
29
0
        $self->{sock}->autoflush(1);
30
0
        die "Could not create socket: $!\n" unless $self->{sock};
31}
32
33sub disconnect {
34
0
        my ($self) = @_;
35
0
        close($self->{sock});
36}
37
38sub send {
39
0
        my ($self,$msg,$params) = @_;
40
41
0
        $msg = "$msg $params";
42
0
        my $msg_frm = sprintf("%04d%s",length($msg),$msg);
43
44
0
        print "sending $msg_frm\n" unless $self->{Quiet};
45
46
0
        syswrite($self->{sock}, $msg_frm, length($msg_frm));
47}
48
49
501;