my $hops = $self->{hops} if exists $self->{hops};
if (isdbg('filter')) {
- my $args = join '\',\'', @_;
+ my $args = join '\',\'', map {defined $_ ? $_ : 'undef'} @_;
my $true = $r ? "OK " : "REJ";
my $sort = $self->{sort};
my $dir = $self->{name} =~ /^in_/i ? "IN " : "OUT";
}
foreach $dxchan (@dxchan) {
my $n = "$in$sort" . "filter";
+ my $i = $in ? 'IN_' : '';
my $ref = $dxchan->$n();
- if (!$ref || ($ref && uc $ref->{name} eq "$name.PL")) {
+ if (!$ref || ($ref && uc $ref->{name} eq "$i$name.PL")) {
$dxchan->$n($remove ? undef : $self);
}
}
my $user;
# check the line for non legal characters
- return ('ill', $dxchan->msg('e19')) if $line =~ /[^\s\w,_\-\*\/\(\)]/;
+ return ('ill', $dxchan->msg('e19')) if $line =~ /[^\s\w,_\-\*\/\(\)!]/;
# add some spaces for ease of parsing
$line =~ s/([\(\)])/ $1 /g;
if ($s) {
$s .= $conj ;
- $s .= $not;
$user .= $conj;
- $user .= $not;
$conj = ' && ';
- $not = "";
}
+
+ if ($not) {
+ $s .= $not;
+ $user .= $not;
+ $not = '';
+ }
+
$user .= "$tok $val";
my $fref;