version 1.161, 2003/11/11 12:39:14
|
version 1.162, 2003/11/12 20:47:04
|
Line 1707 sub make_new_child {
|
Line 1707 sub make_new_child {
|
Reply($client, "refused\n", $userinput); |
Reply($client, "refused\n", $userinput); |
|
|
} |
} |
|
# ------------------------------------------------------------------- inc |
|
} elsif ($userinput =~ /^inc:/) { |
|
if(isClient) { |
|
my ($cmd,$udom,$uname,$namespace,$what) |
|
=split(/:/,$userinput); |
|
$namespace=~s/\//\_/g; |
|
$namespace=~s/\W//g; |
|
if ($namespace ne 'roles') { |
|
chomp($what); |
|
my $proname=propath($udom,$uname); |
|
my $now=time; |
|
unless ($namespace=~/^nohist\_/) { |
|
my $hfh; |
|
if ( |
|
$hfh=IO::File->new(">>$proname/$namespace.hist") |
|
) { print $hfh "P:$now:$what\n"; } |
|
} |
|
my @pairs=split(/\&/,$what); |
|
my %hash; |
|
if (tie(%hash,'GDBM_File', |
|
"$proname/$namespace.db", |
|
&GDBM_WRCREAT(),0640)) { |
|
foreach my $pair (@pairs) { |
|
my ($key,$value)=split(/=/,$pair); |
|
# We could check that we have a number... |
|
if (! defined($value) || $value eq '') { |
|
$value = 1; |
|
} |
|
$hash{$key}+=$value; |
|
} |
|
if (untie(%hash)) { |
|
print $client "ok\n"; |
|
} else { |
|
print $client "error: ".($!+0) |
|
." untie(GDBM) failed ". |
|
"while attempting put\n"; |
|
} |
|
} else { |
|
print $client "error: ".($!) |
|
." tie(GDBM) Failed ". |
|
"while attempting put\n"; |
|
} |
|
} else { |
|
print $client "refused\n"; |
|
} |
|
} else { |
|
Reply($client, "refused\n", $userinput); |
|
|
|
} |
# -------------------------------------------------------------------- rolesput |
# -------------------------------------------------------------------- rolesput |
} elsif ($userinput =~ /^rolesput/) { |
} elsif ($userinput =~ /^rolesput/) { |
if(isClient) { |
if(isClient) { |