-sub in_filter
-{
- my $thing = shift;
- my $dxchan = shift;
-
- # global route filtering on INPUT
- if ($dxchan->{inroutefilter}) {
- my ($filter, $hops) = $dxchan->{inroutefilter}->it($thing->{routedata});
- unless ($filter) {
- dbg("PCPROT: Rejected by input route filter") if isdbg('chanerr');
- return;
- }
- }
- return 1;
-}
-
-sub out_filter
-{
- my $thing = shift;
- my $dxchan = shift;
-
- # global route filtering on INPUT
- if ($dxchan->{routefilter}) {
- my ($filter, $hops) = $dxchan->{routefilter}->it($thing->{routedata});
- unless ($filter) {
- dbg("PCPROT: Rejected by output route filter") if isdbg('chanerr');
- return;
- }
- $thing->{hops} = $hops if $hops;
- } elsif ($dxchan->{isolate}) {
- return;
- }
- return 1;
-}