Diff for /loncom/auth/lonacc.pm between versions 1.204 and 1.205

version 1.204, 2022/06/20 15:07:21 version 1.205, 2022/06/30 21:04:13
Line 333  sub sso_login { Line 333  sub sso_login {
         }          }
     }      }
   
     my ($linkprot,$linkprotuser,$linkkey,$deeplinkurl);      my ($linkprot,$linkprotuser,$linkprotexit,$linkkey,$deeplinkurl);
   
 #  #
 # If Shibboleth auth is in use, and a dual SSO and non-SSO login page  # If Shibboleth auth is in use, and a dual SSO and non-SSO login page
Line 372  sub sso_login { Line 372  sub sso_login {
         if ($info{'linkprot'}) {          if ($info{'linkprot'}) {
             $linkprot = $info{'linkprot'};              $linkprot = $info{'linkprot'};
             $linkprotuser = $info{'linkprotuser'};              $linkprotuser = $info{'linkprotuser'};
               $linkprotexit = $info{'linkprotexit'};
         } elsif ($info{'linkkey'} ne '') {          } elsif ($info{'linkkey'} ne '') {
             $linkkey = $info{'linkkey'};              $linkkey = $info{'linkkey'};
         }          }
Line 397  sub sso_login { Line 398  sub sso_login {
             if ($form{'linkprot'}) {              if ($form{'linkprot'}) {
                 $linkprot = $form{'linkprot'};                  $linkprot = $form{'linkprot'};
                 $linkprotuser = $form{'linkprotuser'};                  $linkprotuser = $form{'linkprotuser'};
                   $linkprotexit = $form{'linkprotexit'};
             } elsif ($form{'linkkey'} ne '') {              } elsif ($form{'linkkey'} ne '') {
                 $linkkey = $form{'linkkey'};                  $linkkey = $form{'linkkey'};
             }              }
Line 425  sub sso_login { Line 427  sub sso_login {
             if ($form{'linkprot'}) {              if ($form{'linkprot'}) {
                 $linkprot = $form{'linkprot'};                  $linkprot = $form{'linkprot'};
                 $linkprotuser = $form{'linkprotuser'};                  $linkprotuser = $form{'linkprotuser'};
                   $linkprotexit = $form{'linkprotexit'};
             } elsif ($form{'linkkey'} ne '') {              } elsif ($form{'linkkey'} ne '') {
                 $linkkey = $form{'linkkey'};                  $linkkey = $form{'linkkey'};
             }              }
Line 432  sub sso_login { Line 435  sub sso_login {
     } elsif ($form{'ltoken'}) {      } elsif ($form{'ltoken'}) {
         my %link_info = &Apache::lonnet::tmpget($form{'ltoken'});          my %link_info = &Apache::lonnet::tmpget($form{'ltoken'});
         $linkprot = $link_info{'linkprot'};          $linkprot = $link_info{'linkprot'};
         if (($linkprot) && ($link_info{'linkprotuser'} ne '')) {          if ($linkprot) {
             $linkprotuser = $link_info{'linkprotuser'};                  if ($link_info{'linkprotuser'} ne '') {
                   $linkprotuser = $link_info{'linkprotuser'};
               }
               if ($link_info{'linkprotexit'} ne '') {
                   $linkprotexit = $link_info{'linkprotexit'};
               }
         }          }
         my $delete = &Apache::lonnet::tmpdel($form{'ltoken'});          my $delete = &Apache::lonnet::tmpdel($form{'ltoken'});
         delete($form{'ltoken'});          delete($form{'ltoken'});
Line 455  sub sso_login { Line 463  sub sso_login {
                            origurl => $deeplinkurl,                             origurl => $deeplinkurl,
                            linkprot => $linkprot,                             linkprot => $linkprot,
                            linkprotuser => $linkprotuser,                             linkprotuser => $linkprotuser,
                              linkprotexit => $linkprotexit,
                        );                         );
             my $token = &Apache::lonnet::tmpput(\%data,$r->dir_config('lonHostID'),'link');              my $token = &Apache::lonnet::tmpput(\%data,$r->dir_config('lonHostID'),'link');
             unless (($token eq 'con_lost') || ($token eq 'refused') || ($token =~ /^error:/) ||              unless (($token eq 'con_lost') || ($token eq 'refused') || ($token =~ /^error:/) ||
Line 521  sub sso_login { Line 530  sub sso_login {
                     if ($linkprotuser ne '') {                      if ($linkprotuser ne '') {
                         $env{'request.linkprotuser'} = $linkprotuser;                          $env{'request.linkprotuser'} = $linkprotuser;
                     }                      }
                       if ($linkprotexit ne '') {
                           $env{'request.linkprotexit'} = $linkprotexit;
                       }
                 } elsif ($linkkey ne '') {                  } elsif ($linkkey ne '') {
                     $env{'request.linkkey'} = $linkkey;                      $env{'request.linkkey'} = $linkkey;
                 }                  }
Line 566  sub sso_login { Line 578  sub sso_login {
             if ($info{'deeplink.login'}) {              if ($info{'deeplink.login'}) {
                 if ($linkprot) {                  if ($linkprot) {
                     $info{'linkprot'} = $linkprot;                      $info{'linkprot'} = $linkprot;
                       if ($linkprotuser ne '') {
                           $info{'linkprotuser'} = $linkprotuser;
                       }
                       if ($linkprotexit ne '') {
                           $info{'linkprotexit'} = $linkprotexit;
                       }
                 } elsif ($linkkey ne '') {                  } elsif ($linkkey ne '') {
                     $info{'linkkey'} = $linkkey;                      $info{'linkkey'} = $linkkey;
                 }                  }
Line 785  sub handler { Line 803  sub handler {
                                 origurl => $requrl,                                  origurl => $requrl,
                                 linkprot => $info{'linkprot'},                                  linkprot => $info{'linkprot'},
                                 linkprotuser => $info{'linkprotuser'},                                  linkprotuser => $info{'linkprotuser'},
                                   linkprotexit => $info{'linkprotexit'},
                             );                              );
                         } elsif ($info{'ltoken'} ne '') {                          } elsif ($info{'ltoken'} ne '') {
                             my %ltoken_info = &Apache::lonnet::tmpget($info{'ltoken'});                              my %ltoken_info = &Apache::lonnet::tmpget($info{'ltoken'});
Line 794  sub handler { Line 813  sub handler {
                                     origurl => $requrl,                                      origurl => $requrl,
                                     linkprot => $ltoken_info{'linkprot'},                                      linkprot => $ltoken_info{'linkprot'},
                                     linkprotuser => $ltoken_info{'linkprotuser'},                                      linkprotuser => $ltoken_info{'linkprotuser'},
                                       linkprotexit => $ltoken_info{'linkprotexit'},
                                 );                                  );
                             }                              }
                         }                          }

Removed from v.1.204  
changed lines
  Added in v.1.205


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