--- loncom/lcuserdel 2000/10/30 03:37:51 1.12 +++ loncom/lcuserdel 2002/10/07 01:41:31 1.13 @@ -119,15 +119,15 @@ system('/usr/sbin/userdel',$safeusername system('/usr/sbin/groupdel',$safeusername); # ignore error message # Remove entry from /etc/smbpasswd if it exists -my $oldsmbpasswd=`/bin/cat /etc/smbpasswd`; -my $newsmbpasswd=`/bin/grep -v '^${safeusername}:' /etc/smbpasswd`; - -if ($oldsmbpasswd ne $newsmbpasswd) { - open OUT,">/etc/smbpasswd"; - print OUT $newsmbpasswd; - close OUT; +# the safest way to do this is with smbpasswd -x +# as that's independent of location of the smbpasswd file. +# +if (-e '/usr/bin/smbpasswd') { + ($>,$<) = (0,0); # fool smbpasswd to think this is not setuid. + system('/usr/bin/smbpasswd -x '.$safeusername); } + # Change ownership on directory from username:username to www:www # This prevents subsequently added users from having access.