X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FThingy.pm;h=7bbf3edb1568673e265769b36926ea0068dea786;hb=393e17fd3a08dd94596f1c02d4d20f6f9a44954f;hp=0921abd818414d2c2dac083fd5aab6033224cedc;hpb=5764cc1c0f79b56fdf5389d2b0dcb2ab7e54723d;p=spider.git diff --git a/perl/Thingy.pm b/perl/Thingy.pm index 0921abd8..7bbf3edb 100644 --- a/perl/Thingy.pm +++ b/perl/Thingy.pm @@ -16,10 +16,8 @@ use strict; package Thingy; use vars qw($VERSION $BRANCH @queue @permin @persec); -$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ ); -$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /^\d+\.\d+(?:\.(\d+)\.(\d+))?$/ || (0,0)); -$main::build += $VERSION; -$main::branch += $BRANCH; + +main::mkver($VERSION = q$Revision$); @queue = (); # the input / processing queue @@ -63,7 +61,7 @@ sub send # do output filtering if ($thing->can('out_filter')) { - return unless $thing->out_filter; + return unless $thing->out_filter($dxchan); } # generate the line which may (or not) be cached @@ -112,6 +110,11 @@ sub process if ($thing->can('in_filter')) { next unless $thing->in_filter($dxchan); } + + # remember any useful routes + RouteDB::update($thing->{origin}, $dxchan->{call}, $thing->{hopsaway}); + RouteDB::update($thing->{user}, $dxchan->{call}, $thing->{hopsaway}) if exists $thing->{user}; + $thing->handle($dxchan); } }