Diff for /loncom/Attic/lchtmldir between versions 1.4 and 1.7

version 1.4, 2002/11/25 18:45:55 version 1.7, 2004/08/05 20:35:55
Line 189  if(!( -e $dirtry1)) { Line 189  if(!( -e $dirtry1)) {
  <head>   <head>
  <title>$safeuser</title>   <title>$safeuser</title>
         </head>          </head>
         <body>          <body bgcolor="#ccffdd">
         <h1>$safeuser</h1>          <h1>$safeuser Construction Space</h1>
             <h2>
               The Learning<i>Online</i> Network with Computer-Assisted Personalized Approach
             </h2>
           <p>            <p>
             Learning Online Network  This is your construction space within LON-CAPA, where you would construct resources which are meant to be
   used across courses and institutions.
           </p>            </p>
           <p>            <p>
             This area provides for:  Material within this area can only be seen and edited by $safeuser and designated co-authors. To make
   it available to students and other instructors, the material needs to be published.
           </p>            </p>
           <ul>  
              <li>resource construction</li>  
              <li>resource publication</li>  
              <li>record-keeping</li>  
           </ul>  
         </body>          </body>
        </html>         </html>
 END  END
Line 214  END Line 214  END
 # Based on the authentiation mode, set the ownership of the directory.  # Based on the authentiation mode, set the ownership of the directory.
   
 if($authentication eq "unix:") { # Unix mode authentication...  if($authentication eq "unix:") { # Unix mode authentication...
     &System("/bin/chown -R   $username".":".$username." ".$fulldir);      &System("/bin/chown -R   $safeuser".":".$safeuser." ".$fulldir);
     &JoinGroup($username);      &JoinGroup($safeuser);
 } else {  } else {
     # Internal, Kerberos, and Local authentication are for users      # Internal, Kerberos, and Local authentication are for users
     # who do not have unix accounts on the system.  Therefore we      # who do not have unix accounts on the system.  Therefore we
Line 238  exit 0; Line 238  exit 0;
   
 sub EnableRoot {  sub EnableRoot {
     if ($wwwid==$>) {      if ($wwwid==$>) {
         print ("EnableRoot $< $>\n");  
  ($<,$>)=($>,$<);   ($<,$>)=($>,$<);
  ($(,$))=($),$();   ($(,$))=($),$();
     }      }
Line 268  sub JoinGroup { Line 267  sub JoinGroup {
     my $usergroup = shift;      my $usergroup = shift;
   
     my $groups = `/usr/bin/groups www`;      my $groups = `/usr/bin/groups www`;
       # untaint
       my ($safegroups)=($groups=~/([\s\w]+)/);
       $groups=$safegroups;
     chomp $groups; $groups=~s/^\S+\s+\:\s+//;      chomp $groups; $groups=~s/^\S+\s+\:\s+//;
     my @grouplist=split(/\s+/,$groups);      my @grouplist=split(/\s+/,$groups);
     my @ugrouplist=grep {!/www|$usergroup/} @grouplist;      my @ugrouplist=grep {!/www|$usergroup/} @grouplist;
Line 285  sub JoinGroup { Line 287  sub JoinGroup {
   
   
 sub System {  sub System {
     my $command = shift;      my ($command,@args) = @_;
     if($DEBUG) {      if($DEBUG) {
  print("system: $command \n");   print("system: $command with args ".join(' ',@args)."\n");
     }      }
     system($command);      system($command,@args);
 }  }
   
   

Removed from v.1.4  
changed lines
  Added in v.1.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>