[LON-CAPA-cvs] cvs: loncom / lchtmldir
matthew
lon-capa-cvs@mail.lon-capa.org
Mon, 25 Nov 2002 18:45:55 -0000
matthew Mon Nov 25 13:45:55 2002 EDT
Modified files:
/loncom lchtmldir
Log:
Allow creation of public_html directories for users who are not filesystem
authenticated. Implement changing ownership of directories to www:www for
kerberos and local authentication as well as internal authentication.
Index: loncom/lchtmldir
diff -u loncom/lchtmldir:1.3 loncom/lchtmldir:1.4
--- loncom/lchtmldir:1.3 Thu May 2 23:43:54 2002
+++ loncom/lchtmldir Mon Nov 25 13:45:55 2002
@@ -117,7 +117,7 @@
if( $authentication ne "unix:" &&
$authentication ne "internal:" &&
- $authentication ne "krb4:" &&
+ $authentication !~ /^krb(4|5):(.*)/ &&
$authentication ne "localauth:") {
if($DEBUG) {
print("Invalid authentication parameter: ".$authentication."\n");
@@ -175,7 +175,9 @@
if($DEBUG) {
print("User's home directory $dirtry1 does not exist\n");
}
- exit 6;
+ if ($authentication eq "unix:") {
+ exit 6;
+ }
}
&EnableRoot;
@@ -212,31 +214,13 @@
# Based on the authentiation mode, set the ownership of the directory.
if($authentication eq "unix:") { # Unix mode authentication...
-
-
&System("/bin/chown -R $username".":".$username." ".$fulldir);
&JoinGroup($username);
-
-
-}
-elsif ($authentication eq "internal:") { # Internal authentication.
-
- &System("/bin/chown -R www:www $fulldir");
-}
-elsif ($authentication eq "krb4:") { # Kerberos version 4 authentication
- &System("/bin/chown -R $username".':'.$username." ".$fulldir);
- &JoinGroup($username);
-}
-elsif ($authentication eq "localauth:") { # Local authentiation
- &System("/bin/chown -R $username".':'.$username." $fulldir");
-}
-else {
- if($DEBUG) {
- print("Authentication not legal".$authentication);
- }
- &DisableRoot;
- exit 5;
-
+} else {
+ # Internal, Kerberos, and Local authentication are for users
+ # who do not have unix accounts on the system. Therefore we
+ # will give ownership of their public_html directories to www:www
+ &System("/bin/chown -R www:www ".$fulldir);
}
&DisableRoot;
@@ -254,6 +238,7 @@
sub EnableRoot {
if ($wwwid==$>) {
+ print ("EnableRoot $< $>\n");
($<,$>)=($>,$<);
($(,$))=($),$();
}
@@ -261,7 +246,7 @@
# root capability is already enabled
}
if($DEBUG) {
- print("Enable Root - id = $> \n");
+ print("Enable Root - id = $> $<\n");
}
return $>;
}