X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?p=spider.git;a=blobdiff_plain;f=perl%2FDXProt.pm;h=41c38f1aea9fd62a850934ee882fccd79fadc265;hp=b1631628986c9013cec9df9c20772fb3847c85e0;hb=9d7e25628dc86c6bec2e0eba47e772f95c0c76db;hpb=e69a98ce612592a78aca2a3ac4e2388a06059955 diff --git a/perl/DXProt.pm b/perl/DXProt.pm index b1631628..41c38f1a 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -50,6 +50,7 @@ use vars qw($pc11_max_age $pc23_max_age $last_pc50 $eph_restime $eph_info_restim $investigation_int $pc19_version $myprot_version %nodehops $baddx $badspotter $badnode $censorpc $rspfcheck $allowzero $decode_dk0wcy $send_opernam @checklist + $eph_pc15_restime ); $pc11_max_age = 1*3600; # the maximum age for an incoming 'real-time' pc11 @@ -70,6 +71,7 @@ $ann_to_talk = 1; $rspfcheck = 1; $eph_restime = 180; $eph_info_restime = 60*60; +$eph_pc15_restime = 6*60; $eph_pc34_restime = 30; $pingint = 5*60; $obscount = 2; @@ -699,6 +701,23 @@ sub handle_12 $self->route($_[2], $line); } } + + +sub handle_15 +{ + my $self = shift; + my $pcno = shift; + my $line = shift; + my $origin = shift; + + if (eph_dup($line, $eph_pc15_restime)) { + dbg("PCPROT: Ephemeral dup, dropped") if isdbg('chanerr'); + } else { + unless ($self->{isolate}) { + DXChannel::broadcast_nodes($line, $self) if $line =~ /\^H\d+\^?~?$/; # send it to everyone but me + } + } +} # incoming user sub handle_16