X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXCommandmode.pm;h=cd15057d56fe40c8b42c6ea8943a6177f32bdd78;hb=7e9852009e053721cb64d9c1c8c4f82457dac181;hp=5ea58ea192931f2d5dbf9f42562002819460a6fd;hpb=4b207544da78b182bd12e94eab01451694749012;p=spider.git diff --git a/perl/DXCommandmode.pm b/perl/DXCommandmode.pm index 5ea58ea1..cd15057d 100644 --- a/perl/DXCommandmode.pm +++ b/perl/DXCommandmode.pm @@ -13,7 +13,7 @@ package DXCommandmode; @ISA = qw(DXChannel); -use 5.10.1; +use 5.8.1; use POSIX qw(:math_h); use DXUtil; @@ -39,6 +39,7 @@ use DB_File; use VE7CC; use DXXml; use AsyncMsg; +use DXCIDR; use strict; use vars qw(%Cache %cmd_cache $errstr %aliases $scriptbase %nothereslug @@ -194,6 +195,11 @@ sub start $self->tell_login('loginu'); $self->tell_buddies('loginb'); + + # is this a bad ip address? + if (is_ipaddr($self->{hostname})) { + $self->{badip} = DXCIDR->find($self->{hostname}); + } # do we need to send a forward/opernam? my $lastoper = $user->lastoper || 0; @@ -795,7 +801,6 @@ sub clear_cmd_cache sub valid_package_name { my $string = shift; $string =~ s|([^A-Za-z0-9_/])|sprintf("_%2x",unpack("C",$1))|eg; - $string =~ s|/|_|g; return "cmd_$string"; } @@ -830,7 +835,7 @@ sub find_cmd_name { }; #wrap the code into a subroutine inside our unique package - my $eval = qq(package DXCommandmode::$package; use 5.10.1; use POSIX qw{:math_h}; use DXLog; use DXDebug; use DXUser; use DXUtil; our \@ISA = qw{DXCommandmode}; ); + my $eval = qq(package DXCommandmode::$package; use 5.8.1; use POSIX qw{:math_h}; use DXLog; use DXDebug; use DXUser; use DXUtil; our \@ISA = qw{DXCommandmode}; ); if ($sub =~ m|\s*sub\s+handle\n|) {