version 1.29, 2004/09/02 18:59:24
|
version 1.33, 2005/01/26 10:38:13
|
Line 214 if($error_file) {
|
Line 214 if($error_file) {
|
} |
} |
|
|
|
|
# -- Only add user if we can create a brand new home directory (/home/username) |
# -- Only add the user if they are >not< in /etc/passwd. |
if (-e "/home/$safeusername") { |
# Used to look for the ability to create a new directory for the |
print "Error. User already exists.\n" unless $noprint; |
# user, however that disallows authentication changes from i |
|
# internal->fs.. so just check the passwd file instead. |
|
# |
|
my $not_found = system("grep -q $safeusername: /etc/passwd"); |
|
if (!$not_found) { |
|
print "Error user already exists\n" unless $noprint; |
unlink('/tmp/lock_lcpasswd'); |
unlink('/tmp/lock_lcpasswd'); |
&Exit(11); |
&Exit(11); |
} |
} |
|
|
|
|
|
|
# -- Only add user if the two password arguments match. |
# -- Only add user if the two password arguments match. |
|
|
if ($password1 ne $password2) { |
if ($password1 ne $password2) { |
Line 247 if ($status) {
|
Line 254 if ($status) {
|
print "Done adding user\n" unless $noprint; |
print "Done adding user\n" unless $noprint; |
# Make www a member of that user group. |
# Make www a member of that user group. |
my $groups=`/usr/bin/groups www` or &Exit(6); |
my $groups=`/usr/bin/groups www` or &Exit(6); |
print "groups $groups\n"; |
|
# untaint |
# untaint |
my ($safegroups)=($groups=~/:\s*([\s\w]+)/); |
my ($safegroups)=($groups=~/:\s*([\s\w]+)/); |
$groups=$safegroups; |
$groups=$safegroups; |
Line 308 print OUT<<END;
|
Line 314 print OUT<<END;
|
</html> |
</html> |
END |
END |
close OUT; |
close OUT; |
|
system('/bin/chmod','0660', "/home/$safeusername/public_html/index.html"); |
|
# |
|
# In order to allow the loncapa daemons appropriate access |
|
# to public_html, Top level and public_html directories should |
|
# be owned by safeusername:www as should the smaple index.html.. |
print "lcuseradd ownership\n" unless $noprint; |
print "lcuseradd ownership\n" unless $noprint; |
system('/bin/chown','-R',"$safeusername:$safeusername","/home/$safeusername"); |
system('/bin/chown','-R',"$safeusername:$safeusername","/home/$safeusername"); # First set std ownership on everything. |
|
# system('/bin/chown',"$safeusername:www","/home/$safeusername"); # Now adust top level... |
|
# system('/bin/chown','-R',"$safeusername:www","/home/$safeusername/public_html"); # And web dir. |
# ---------------------------------------------------- Gracefull Apache Restart |
# ---------------------------------------------------- Gracefull Apache Restart |
if (-e '/var/run/httpd.pid') { |
if (-e '/var/run/httpd.pid') { |
print "lcuseradd Apache restart\n" unless $noprint; |
print "lcuseradd Apache restart\n" unless $noprint; |