version 1.17, 2019/07/18 18:28:46
|
version 1.18, 2022/03/29 20:12:46
|
Line 32 use strict;
|
Line 32 use strict;
|
use Net::OAuth; |
use Net::OAuth; |
use Digest::SHA; |
use Digest::SHA; |
use Digest::MD5 qw(md5_hex); |
use Digest::MD5 qw(md5_hex); |
|
use Encode; |
use UUID::Tiny ':std'; |
use UUID::Tiny ':std'; |
use Apache::lonnet; |
use Apache::lonnet; |
use Apache::loncommon; |
use Apache::loncommon; |
Line 821 END
|
Line 822 END
|
sub setup_logout_callback { |
sub setup_logout_callback { |
my ($uname,$udom,$server,$ckey,$secret,$service_url,$idsdir,$protocol,$hostname) = @_; |
my ($uname,$udom,$server,$ckey,$secret,$service_url,$idsdir,$protocol,$hostname) = @_; |
if ($service_url =~ m{^https?://[^/]+/}) { |
if ($service_url =~ m{^https?://[^/]+/}) { |
my $digest_user = &Encode::decode_utf8($uname.':'.$udom); |
my $digest_user = &Encode::decode('UTF-8',$uname.':'.$udom); |
my $loginfile = &Digest::SHA::sha1_hex($digest_user).&md5_hex(&md5_hex(time.{}.rand().$$)); |
my $loginfile = &Digest::SHA::sha1_hex($digest_user).&md5_hex(&md5_hex(time.{}.rand().$$)); |
if ((-d $idsdir) && (open(my $fh,'>',"$idsdir/$loginfile"))) { |
if ((-d $idsdir) && (open(my $fh,'>',"$idsdir/$loginfile"))) { |
print $fh "$uname,$udom,$server\n"; |
print $fh "$uname,$udom,$server\n"; |