diff options
| author | fukachan <fukachan> | 2004-10-03 12:07:52 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2004-10-03 12:07:52 +0000 |
| commit | 3a3a3a25ecc028eb666b7c71852d2d683f3cff18 (patch) | |
| tree | dcced688504fc9512ddd9e999862b1194eb4348a /fml/lib/FML/ML | |
| parent | 3db78781e022c938d22528105c6d657ac3f2d7af (diff) | |
| download | fml8-3a3a3a25ecc028eb666b7c71852d2d683f3cff18.tar.gz fml8-3a3a3a25ecc028eb666b7c71852d2d683f3cff18.tar.bz2 fml8-3a3a3a25ecc028eb666b7c71852d2d683f3cff18.zip | |
fix owner and group of created file/dir
Diffstat (limited to 'fml/lib/FML/ML')
| -rw-r--r-- | fml/lib/FML/ML/HomePrefix.pm | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/fml/lib/FML/ML/HomePrefix.pm b/fml/lib/FML/ML/HomePrefix.pm index 478c9913..1f603e6a 100644 --- a/fml/lib/FML/ML/HomePrefix.pm +++ b/fml/lib/FML/ML/HomePrefix.pm @@ -4,7 +4,7 @@ # All rights reserved. This program is free software; you can # redistribute it and/or modify it under the same terms as Perl itself. # -# $FML: HomePrefix.pm,v 1.5 2004/04/27 13:23:25 fukachan Exp $ +# $FML: HomePrefix.pm,v 1.6 2004/07/23 13:16:39 fukachan Exp $ # package FML::ML::HomePrefix; @@ -133,15 +133,30 @@ sub add $obj->add($domain, [ $dir ]); } + $obj->close(); + + # change onwer and group of the created directory. + if ($< == 0) { # running as user "root". + my $owner = $curproc->fml_owner(); + my $group = $curproc->fml_group(); + $curproc->chown($owner, $group, $pri_map); + } + # check the directory. if (-d $dir) { $curproc->logwarn("$dir already exist. reuse it."); } else { $curproc->mkdir($dir); - if (-d $dir) { $curproc->log("$dir created"); + + # change onwer and group of the created directory. + if ($< == 0) { # running as user "root". + my $owner = $curproc->fml_owner(); + my $group = $curproc->fml_group(); + $curproc->chown($owner, $group, $dir); + } } else { $curproc->logerror("fail to mkdir $dir"); @@ -184,6 +199,13 @@ sub delete $obj->open(); $obj->delete($domain); $obj->close(); + + # change onwer and group of the created directory. + if ($< == 0) { # running as user "root". + my $owner = $curproc->fml_owner(); + my $group = $curproc->fml_group(); + $curproc->chown($owner, $group, $pri_map); + } } |
