use strict;
-use vars qw($VERSION $BRANCH);
use vars qw($pc11_max_age $pc23_max_age $last_pc50 $eph_restime $eph_info_restime $eph_pc34_restime
$last_hour $last10 %eph %pings %rcmds $ann_to_talk
$pingint $obscount %pc19list $chatdupeage $chatimportfn
%nodehops $baddx $badspotter $badnode $censorpc $rspfcheck
$allowzero $decode_dk0wcy $send_opernam @checklist
$eph_pc15_restime $pc92_update_period $last_pc92_update
+ %pc92_find $pc92_find_timeout
);
-($VERSION, $BRANCH) = dxver(q$Revision$);
-
$pc11_max_age = 1*3600; # the maximum age for an incoming 'real-time' pc11
$pc23_max_age = 1*3600; # the maximum age for an incoming 'real-time' pc23
$pc19_version = 5466; # the visible version no for outgoing PC19s generated from pc59
$pc92_update_period = 30*60; # the period between PC92 C updates
$last_pc92_update = time + int rand(180); # the last time a PC92 config update
+%pc92_find = (); # outstanding pc92 find operations
+$pc92_find_timeout = 30; # maximum time to wait for a reply
+
@checklist =
}
Investigate::process();
+ clean_pc92_find();
# every ten seconds
if ($t - $last10 >= 10) {
dbg("ROUTE: sending pc92 update") if isdbg('route');
send_pc92_update();
time_out_pc92_routes();
- $last_pc92_update = $main::systime + int rand(180);
+ $last_pc92_update = $main::systime + int rand(5*60);
}
$last10 = $t;
} else {
$self->send(pc10($from, $to, $via, $line, $origin));
}
- Log('talk', $to, $from, $via?$via:$self->call, $line) unless $origin && $origin ne $main::mycall;
+ Log('talk', $to, $from, '>' . ($via || $origin || $self->call), $line) unless $origin && $origin ne $main::mycall;
}
# send it if it isn't the except list and isn't isolated and still has a hop count
}
}
+# start a pc92 find operation
+sub start_pc92_find
+{
+ my $dxchan = shift;
+ my $target = shift;
+ my $key = "$dxchan->{call}|$target";
+ if ($pc92_find{$key}) {
+
+ }
+}
+
+# function (not method) to handle pc92 find returns
+sub handle_pc92_find_reply
+{
+ my ($dxchan, $node, $from, $target, $flag, $ms) = @_;
+
+ $dxchan->print_pc92_find_reply($node, $target, $flag, $ms) if $dxchan->can('print_pc92_find_return');
+}
+
+sub clean_pc92_find
+{
+
+}
1;
__END__