projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix disconnect from peer
[spider.git]
/
cmd
/
set
/
privilege.pl
diff --git
a/cmd/set/privilege.pl
b/cmd/set/privilege.pl
index 4e30229775a901663e59cea75cd20cc53f9db5ed..865819e7efcfb5c6232bd69ddd7eae163484990a 100644
(file)
--- a/
cmd/set/privilege.pl
+++ b/
cmd/set/privilege.pl
@@
-5,7
+5,7
@@
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
#
# Copyright (c) 1998 Dirk Koopman G1TLH
#
-#
$Id$
+#
#
my ($self, $line) = @_;
my @args = split /\s+/, $line;
#
my ($self, $line) = @_;
my @args = split /\s+/, $line;
@@
-15,31
+15,36
@@
my @out;
my $user;
my $ref;
my $user;
my $ref;
-return (0) if $self->priv < 9;
+if ($self->priv < 9 || $self->remotecmd || $self->inscript) {
+ Log('DXCommand', $self->call . " attempted to set privilege $priv for @args");
+ return (1, $self->msg('e5'));
+}
if ($priv < 0 || $priv > 9) {
if ($priv < 0 || $priv > 9) {
- return (
0
, $self->msg('e5'));
+ return (
1
, $self->msg('e5'));
}
foreach $call (@args) {
$call = uc $call;
}
foreach $call (@args) {
$call = uc $call;
- unless ($self->remotecmd) {
- if ($ref = DXChannel
->
get($call)) {
+ unless ($self->remotecmd
|| $self->inscript
) {
+ if ($ref = DXChannel
::
get($call)) {
$ref->priv($priv);
$ref->user->priv($priv);
$ref->user->put();
}
$ref->priv($priv);
$ref->user->priv($priv);
$ref->user->put();
}
- if (!$ref && ($user = DXUser
->
get($call))) {
+ if (!$ref && ($user = DXUser
::
get($call))) {
$user->priv($priv);
$user->put();
}
if ($ref || $user) {
push @out, $self->msg('priv', $call);
$user->priv($priv);
$user->put();
}
if ($ref || $user) {
push @out, $self->msg('priv', $call);
+ Log('DXCommand', "Privilege set to $priv on $call by " . $self->call);
} else {
push @out, $self->msg('e3', "Set Privilege", $call);
}
} else {
push @out, $self->msg('sorry');
} else {
push @out, $self->msg('e3', "Set Privilege", $call);
}
} else {
push @out, $self->msg('sorry');
+ Log('DXCommand', $self->call . " attempted to set privilege $priv for $call remotely");
}
}
return (1, @out);
}
}
return (1, @out);