Diff for /loncom/auth/lonacc.pm between versions 1.125 and 1.126

version 1.125, 2009/04/14 23:52:07 version 1.126, 2009/07/23 17:40:29
Line 278  sub sso_login { Line 278  sub sso_login {
   
     my ($user) = ($r->user =~ m/([a-zA-Z0-9_\-@.]*)/);      my ($user) = ($r->user =~ m/([a-zA-Z0-9_\-@.]*)/);
   
       my $query = $r->args;
       my %form;
       if ($query) {
           foreach my $pair (split(/&/,$query)) {
               my ($name, $value) = split(/=/,$pair);
               $name = &unescape($name);
               if (($name eq 'role') || ($name eq 'symb')) {
                   $value =~ tr/+/ /;
                   $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
                   $form{$name} = $value;
               }
           }
       }
   
     my $domain = $r->dir_config('lonDefDomain');      my $domain = $r->dir_config('lonDefDomain');
     my $home=&Apache::lonnet::homeserver($user,$domain);      my $home=&Apache::lonnet::homeserver($user,$domain);
     if ($home !~ /(con_lost|no_host|no_such_host)/) {      if ($home !~ /(con_lost|no_host|no_such_host)/) {
Line 285  sub sso_login { Line 299  sub sso_login {
  if ($r->dir_config("lonBalancer") eq 'yes') {   if ($r->dir_config("lonBalancer") eq 'yes') {
     # login but immeaditly go to switch server to find us a new       # login but immeaditly go to switch server to find us a new 
     # machine      # machine
     &Apache::lonauth::success($r,$user,$domain,$home,'noredirect');      &Apache::lonauth::success($r,$user,$domain,$home,'noredirect','',\%form);
             $env{'request.sso.login'} = 1;              $env{'request.sso.login'} = 1;
             if (defined($r->dir_config("lonSSOReloginServer"))) {              if (defined($r->dir_config("lonSSOReloginServer"))) {
                 $env{'request.sso.reloginserver'} =                  $env{'request.sso.reloginserver'} =
Line 302  sub sso_login { Line 316  sub sso_login {
       'server'    => $r->dir_config('lonHostID'),        'server'    => $r->dir_config('lonHostID'),
       'sso.login' => 1        'sso.login' => 1
       );        );
               foreach my $item ('role','symb') {
                   if (exists($form{$item})) {
                       $info{$item} = $form{$item};
                   }
               }
             if ($r->dir_config("ssodirecturl") == 1) {              if ($r->dir_config("ssodirecturl") == 1) {
                 $info{'origurl'} = $r->uri;                  $info{'origurl'} = $r->uri;
             }              }

Removed from v.1.125  
changed lines
  Added in v.1.126


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