projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
be more careful about undefs
[spider.git]
/
perl
/
Thingy
/
Ping.pm
diff --git
a/perl/Thingy/Ping.pm
b/perl/Thingy/Ping.pm
index 88e68a851a1107bd53f75719cf01930d859c0333..02fc5cef51bea6caf1176bce93e4a98d4729d08a 100644
(file)
--- a/
perl/Thingy/Ping.pm
+++ b/
perl/Thingy/Ping.pm
@@
-31,7
+31,7
@@
sub gen_Aranea
{
my $thing = shift;
unless ($thing->{Aranea}) {
{
my $thing = shift;
unless ($thing->{Aranea}) {
- $thing->{Aranea} = Aranea::genmsg($thing, qw(id out));
+ $thing->{Aranea} = Aranea::genmsg($thing, qw(id out
o
));
}
return $thing->{Aranea};
}
}
return $thing->{Aranea};
}
@@
-53,10
+53,12
@@
sub gen_DXProt
# {user} as well as a true user and also it may not
# have originated here.
# {user} as well as a true user and also it may not
# have originated here.
- my $from = $thing->{user} if Route::Node::get($thing->{user});
+ my $from = $thing->{o};
+ $from ||= $thing->{user} if Route::Node::get($thing->{user});
$from ||= $thing->{origin};
my $to = $thing->{touser} if Route::Node::get($thing->{touser});
$to ||= $thing->{group};
$from ||= $thing->{origin};
my $to = $thing->{touser} if Route::Node::get($thing->{touser});
$to ||= $thing->{group};
+
$thing->{DXProt} = DXProt::pc51($to, $from, $thing->{out});
}
$thing->{DXProt} = DXProt::pc51($to, $from, $thing->{out});
}
@@
-94,6
+96,7
@@
sub handle
my $repthing = $thing->new_reply;
$repthing->{out} = 0;
$repthing->{id} = $thing->{id};
my $repthing = $thing->new_reply;
$repthing->{out} = 0;
$repthing->{id} = $thing->{id};
+ $repthing->{o} = $thing->{o} if $thing->{o};
$repthing->send($dxchan) if $repthing;
} else {
$repthing->send($dxchan) if $repthing;
} else {
@@
-132,6
+135,7
@@
sub handle
}
}
} else {
}
}
} else {
+ $thing->{route} = $thing->{o} if $thing->{o};
$thing->broadcast($dxchan);
}
}
$thing->broadcast($dxchan);
}
}