99 |
foreach my $node ( @nodes ) { |
foreach my $node ( @nodes ) { |
100 |
|
|
101 |
my $sock = IO::Socket::INET->new( |
my $sock = IO::Socket::INET->new( |
102 |
PeerAddr => $node, |
PeerAddr => '127.0.0.1', |
103 |
|
PeerPort => $node, |
104 |
Proto => 'tcp', |
Proto => 'tcp', |
105 |
); |
); |
106 |
|
|
126 |
return; |
return; |
127 |
} |
} |
128 |
chomp( my $size = <$sock> ); |
chomp( my $size = <$sock> ); |
129 |
warn "[$port] <<<< $node $size bytes\n"; |
warn "[$port] <<<< $node $size bytes\n" if $debug || $size > 1024; |
130 |
my $data; |
my $data; |
131 |
read $sock, $data, $size; |
read $sock, $data, $size; |
132 |
return $data; |
return $data; |
135 |
sub send_sock { |
sub send_sock { |
136 |
my ( $sock, $data ) = @_; |
my ( $sock, $data ) = @_; |
137 |
my $size = length $data; |
my $size = length $data; |
138 |
warn "[$port] >>>> ", $sock->peerhost, " $size bytes\n"; |
warn "[$port] >>>> $size bytes\n" if $debug || $size > 1024; |
139 |
print $sock "$size\n$data" || warn "can't send $size bytes to ", $sock->peerhost; |
print $sock "$size\n$data" || warn "can't send $size bytes to ", $sock->peerhost; |
140 |
} |
} |
141 |
|
|
377 |
exit; |
exit; |
378 |
} elsif ( $cmd =~ m{^(v|r)}i ) { |
} elsif ( $cmd =~ m{^(v|r)}i ) { |
379 |
run_views; |
run_views; |
380 |
|
} elsif ( $cmd =~ m{^n(ode)?\s*(\d+)}i ) { |
381 |
|
push @nodes, $1; |
382 |
|
info; |
383 |
} elsif ( $cmd ) { |
} elsif ( $cmd ) { |
384 |
warn "UNKNOWN ", dump $cmd; |
warn "UNKNOWN ", dump $cmd; |
385 |
} |
} |