projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add CTY2310
[spider.git]
/
perl
/
Msg.pm
diff --git
a/perl/Msg.pm
b/perl/Msg.pm
index b2ee9b2326690a4abc376196d91218a55333e73f..1c86c70ddd170a3a55b093dafd82087b0a2f5dd0 100644
(file)
--- a/
perl/Msg.pm
+++ b/
perl/Msg.pm
@@
-140,9
+140,10
@@
sub _on_connect
$sock->on(close => sub {$conn->disconnect;});
$sock->timeout(0);
$sock->start;
$sock->on(close => sub {$conn->disconnect;});
$sock->timeout(0);
$sock->start;
+ $conn->{peerhost} = eval { $handle->peerhost; };
dbg((ref $conn) . " connected $conn->{cnum} to $conn->{peerhost}:$conn->{peerport}") if isdbg('connll');
if ($conn->{on_connect}) {
dbg((ref $conn) . " connected $conn->{cnum} to $conn->{peerhost}:$conn->{peerport}") if isdbg('connll');
if ($conn->{on_connect}) {
- &{$conn->{on_connect}}($conn);
+ &{$conn->{on_connect}}($conn
, $handle
);
}
}
}
}
@@
-154,12
+155,13
@@
sub is_connected
}
sub connect {
}
sub connect {
- my ($pkg, $to_host, $to_port,
$rproc,
%args) = @_;
+ my ($pkg, $to_host, $to_port, %args) = @_;
my $timeout = delete $args{timeout} || $connect_timeout;
# Create a connection end-point object
my $conn = $pkg;
unless (ref $pkg) {
my $timeout = delete $args{timeout} || $connect_timeout;
# Create a connection end-point object
my $conn = $pkg;
unless (ref $pkg) {
+ my $rproc = delete $args{rproc};
$conn = $pkg->new($rproc);
}
$conn->{peerhost} = $to_host;
$conn = $pkg->new($rproc);
}
$conn->{peerhost} = $to_host;
@@
-171,7
+173,7
@@
sub connect {
my $sock;
$conn->{sock} = $sock = Mojo::IOLoop::Client->new;
$sock->on(connect => sub {$conn->_on_connect($_[1])} );
my $sock;
$conn->{sock} = $sock = Mojo::IOLoop::Client->new;
$sock->on(connect => sub {$conn->_on_connect($_[1])} );
- $sock->on(error => sub {$conn->disconnect});
+ $sock->on(error => sub {
&{$conn->{eproc}}($conn, $_[1]) if exists $conn->{eproc};
$conn->disconnect});
$sock->on(close => sub {$conn->disconnect});
# copy any args like on_connect, on_disconnect etc
$sock->on(close => sub {$conn->disconnect});
# copy any args like on_connect, on_disconnect etc