add thicker belt & braces to pc92 field checking
authorDirk Koopman <djk@tobit.co.uk>
Tue, 31 Jan 2023 11:49:12 +0000 (11:49 +0000)
committerDirk Koopman <djk@tobit.co.uk>
Tue, 31 Jan 2023 11:49:12 +0000 (11:49 +0000)
perl/DXProtHandle.pm

index 600bfd8f61db19163be7fdae8cb3da3de426d5fc..60040e4d525b527732abc578e0724462868e1325 100644 (file)
@@ -2390,8 +2390,10 @@ sub handle_93
        my $text = $pc->[6];
        my $onode = uc $pc->[7];
        my $ipaddr = $pc->[8];
-       
+
+       $onode = undef unless $onode && is_callsign($onode);
        $onode //= $pcall;
+       $ipaddr = undef unless $ipaddr && is_ipaddr($ipaddr);
 
        # this is catch loops caused by bad software ...
        if (eph_dup("PC93|$from|$text|$onode", $pc10_dupe_age)) {
@@ -2513,7 +2515,7 @@ sub handle_default
 sub populate_routing_table
 {
        my ($self, $node, $user, $ip) = @_;
-
+       
        my $rn = Route::Node::get($node);
        unless ($rn) {
                $rn = Route::Node->new($node);