ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/AnyEvent-MP/MP/Transport.pm
(Generate patch)

Comparing cvsroot/AnyEvent-MP/MP/Transport.pm (file contents):
Revision 1.28 by root, Sun Aug 9 16:08:16 2009 UTC vs.
Revision 1.29 by root, Mon Aug 10 01:37:19 2009 UTC

34use Digest::HMAC_MD6 (); 34use Digest::HMAC_MD6 ();
35 35
36use AE (); 36use AE ();
37use AnyEvent::Socket (); 37use AnyEvent::Socket ();
38use AnyEvent::Handle 4.92 (); 38use AnyEvent::Handle 4.92 ();
39
40use base Exporter::;
41 39
42our $PROTOCOL_VERSION = 0; 40our $PROTOCOL_VERSION = 0;
43 41
44=item $listener = mp_listener $host, $port, <constructor-args>, $cb->($transport) 42=item $listener = mp_listener $host, $port, <constructor-args>, $cb->($transport)
45 43
182 . ";$self->{local_node}" 180 . ";$self->{local_node}"
183 . ";" . (join ",", @AUTH_RCV) 181 . ";" . (join ",", @AUTH_RCV)
184 . ";" . (join ",", @FRAMINGS) 182 . ";" . (join ",", @FRAMINGS)
185 . (join "", map ";$_=$greeting_kv->{$_}", keys %$greeting_kv); 183 . (join "", map ";$_=$greeting_kv->{$_}", keys %$greeting_kv);
186 184
187 my $lgreeting2 = MIME::Base64::encode_base64 AnyEvent::MP::Base::nonce (33), ""; 185 my $lgreeting2 = MIME::Base64::encode_base64 AnyEvent::MP::Base::nonce (66), "";
188 186
189 $self->{hdl}->push_write ("$lgreeting1\012$lgreeting2\012"); 187 $self->{hdl}->push_write ("$lgreeting1\012$lgreeting2\012");
190 188
191 # expect greeting 189 # expect greeting
192 $self->{hdl}->rbuf_max (4 * 1024); 190 $self->{hdl}->rbuf_max (4 * 1024);
322 # first connect with a master node 320 # first connect with a master node
323 my $via = $self->{remote_node}; 321 my $via = $self->{remote_node};
324 $via =~ s/,/!/g; 322 $via =~ s/,/!/g;
325 $AnyEvent::MP::Base::NODE .= "\@$via"; 323 $AnyEvent::MP::Base::NODE .= "\@$via";
326 $AnyEvent::MP::Base::NODE{$AnyEvent::MP::Base::NODE} = $AnyEvent::MP::Base::NODE{""}; 324 $AnyEvent::MP::Base::NODE{$AnyEvent::MP::Base::NODE} = $AnyEvent::MP::Base::NODE{""};
327 $AnyEvent::MP::Base::SLAVE->(); 325 $AnyEvent::MP::Base::SLAVE->(1);
328 } 326 }
329 327
330 if ($self->{local_node} ne $AnyEvent::MP::Base::NODE) { 328 if ($self->{local_node} ne $AnyEvent::MP::Base::NODE) {
331 # node changed its name since first greeting 329 # node changed its name since first greeting
332 $self->send (["", iam => $AnyEvent::MP::Base::NODE]); 330 $self->send (["", iam => $AnyEvent::MP::Base::NODE]);
568 < hmac_md6_64_256;0298d6ba2240faabb2b2e881cf86b97d70a113ca74a87dc006f9f1e9d3010f90;json 566 < hmac_md6_64_256;0298d6ba2240faabb2b2e881cf86b97d70a113ca74a87dc006f9f1e9d3010f90;json
569 > ["","lookup","pinger","10.0.0.1:4040#nndKd+gn.a","resolved"] 567 > ["","lookup","pinger","10.0.0.1:4040#nndKd+gn.a","resolved"]
570 568
571=head1 SEE ALSO 569=head1 SEE ALSO
572 570
573L<AnyEvent>. 571L<AnyEvent::MP>.
574 572
575=head1 AUTHOR 573=head1 AUTHOR
576 574
577 Marc Lehmann <schmorp@schmorp.de> 575 Marc Lehmann <schmorp@schmorp.de>
578 http://home.schmorp.de/ 576 http://home.schmorp.de/

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines