added Solaris patch

This commit is contained in:
Roland Gruber 2006-02-27 13:22:00 +00:00
parent 776a06e58f
commit 2702a84ddd
1 changed files with 7 additions and 7 deletions

View File

@ -65,7 +65,7 @@ sub get_fs { # Load mountpoints from mtab if enabled quotas
} }
# ***************** Check values # ***************** Check values
if ($( == 0 ) { # we are root if ($< == 0 ) { # we are root
# Drop root Previleges # Drop root Previleges
($<, $>) = ($>, $<); ($<, $>) = ($>, $<);
if ($ARGV[0] eq "*test") { if ($ARGV[0] eq "*test") {
@ -87,17 +87,17 @@ if ($( == 0 ) { # we are root
$vals[1] eq 'home' && do { $vals[1] eq 'home' && do {
switch2: { switch2: {
$vals[2] eq 'add' && do { $vals[2] eq 'add' && do {
# split homedir to set all directories below the last dir. to 755 # split homedir to set all directories below the last dir. to 0755
my $path = $user[7]; my $path = $user[7];
$path =~ s,/(?:[^/]*)$,,; $path =~ s,/(?:[^/]*)$,,;
($<, $>) = ($>, $<); # Get root privileges ($<, $>) = ($>, $<); # Get root privileges
if (! -e $path) { if (! -e $path) {
system 'mkdir', '-m 755', '-p', $path; # Create paths to homedir system 'mkdir', '-m', '0755', '-p', $path; # Create paths to homedir
} }
if (! -e $user[7]) { if (! -e $user[7]) {
system 'mkdir', '-m 755', $user[7]; # Create himdir itself system 'mkdir', '-m', '0755', $user[7]; # Create homedir itself
system "cp -a /etc/skel/* /etc/skel/.[^.]* $user[7]"; # Copy /etc/sekl into homedir system ("(cd /etc/skel && tar cf - .) | (cd $user[7] && tar xf -)"); # Copy /etc/sekl into homedir
system 'chown', '-R', "$user[2]:$user[3]" , $user[7]; # Change owner to new user system 'chown', '-hR', "$user[2]:$user[3]" , $user[7]; # Change owner to new user
if (-e '/usr/sbin/useradd.local') { if (-e '/usr/sbin/useradd.local') {
system '/usr/sbin/useradd.local', $user[0]; # run useradd-script system '/usr/sbin/useradd.local', $user[0]; # run useradd-script
} }
@ -110,7 +110,7 @@ if ($( == 0 ) { # we are root
}; };
$vals[2] eq 'rem' && do { $vals[2] eq 'rem' && do {
($<, $>) = ($>, $<); # Get root previliges ($<, $>) = ($>, $<); # Get root previliges
if (-d $user[7]) { if (-d $user[7] && $user[7] ne '/') {
# Fixme, only delete files owned by user. # Fixme, only delete files owned by user.
system 'rm', '-R', $user[7]; # Delete Homedirectory system 'rm', '-R', $user[7]; # Delete Homedirectory
if (-e '/usr/sbin/userdel.local') { if (-e '/usr/sbin/userdel.local') {