projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed a couple of errors and done a bit of tidying
[spider.git]
/
perl
/
DXCommandmode.pm
diff --git
a/perl/DXCommandmode.pm
b/perl/DXCommandmode.pm
index fb2957da39da7798035ca96890ae87faebb138a7..ae016cc6fd038250cf11d7158c80ce4486da7024 100644
(file)
--- a/
perl/DXCommandmode.pm
+++ b/
perl/DXCommandmode.pm
@@
-34,7
+34,7
@@
sub user_start
$self->msg('l2',$name);
$self->send_file($main::motd) if (-e $main::motd);
$self->msg('pr', $call);
$self->msg('l2',$name);
$self->send_file($main::motd) if (-e $main::motd);
$self->msg('pr', $call);
- $self->
{state} = 10;
# a bit of room for further expansion, passwords etc
+ $self->
state('prompt');
# a bit of room for further expansion, passwords etc
$self->{priv} = 0; # set the connection priv to 0 - can be upgraded later
}
$self->{priv} = 0; # set the connection priv to 0 - can be upgraded later
}
@@
-52,12
+52,19
@@
sub user_normal
scan_cmd_dirs if (!defined %cmd);
# strip out any nasty characters like $@%&|. and double // etc.
scan_cmd_dirs if (!defined %cmd);
# strip out any nasty characters like $@%&|. and double // etc.
- $cmd =~ s/[
\%\@\$\&\|\.\`\
~]//og;
+ $cmd =~ s/[
%\@\$&\\.`
~]//og;
$cmd =~ s|//|/|og;
# split the command up into parts
$cmd =~ s|//|/|og;
# split the command up into parts
- my @parts = split |[/\b]+|, $cmd;
-
+ my @part = split /[\/\b]+/, $cmd;
+
+ # the bye command - temporary probably
+ if ($part[0] =~ /^b/io) {
+ $self->user_finish();
+ $self->state('bye');
+ return;
+ }
+
# first expand out the entry to a command, note that I will accept
# anything in any case with any (reasonable) seperator
$self->prompt();
# first expand out the entry to a command, note that I will accept
# anything in any case with any (reasonable) seperator
$self->prompt();
@@
-150,7
+157,7
@@
sub eval_file {
my($self, $path, $cmdname) = @_;
my $package = valid_package_name($cmdname);
my $filename = "$path/$cmdname";
my($self, $path, $cmdname) = @_;
my $package = valid_package_name($cmdname);
my $filename = "$path/$cmdname";
- my $mtime = -
m
$filename;
+ my $mtime = -
M
$filename;
my @r;
if(defined $Cache{$package}{mtime} && $Cache{$package}{mtime } <= $mtime) {
my @r;
if(defined $Cache{$package}{mtime} && $Cache{$package}{mtime } <= $mtime) {
@@
-179,7
+186,7
@@
sub eval_file {
}
#cache it unless we're cleaning out each time
}
#cache it unless we're cleaning out each time
- $Cache{$package}{mtime} = $mtime
unless $delete
;
+ $Cache{$package}{mtime} = $mtime;
}
@r = eval {$package->handler;};
}
@r = eval {$package->handler;};