--- loncom/lonnet/perl/lonnet.pm 2013/10/14 17:14:48 1.1243 +++ loncom/lonnet/perl/lonnet.pm 2013/12/05 05:19:18 1.1244 @@ -1,7 +1,7 @@ # The LearningOnline Network # TCP networking package # -# $Id: lonnet.pm,v 1.1243 2013/10/14 17:14:48 raeburn Exp $ +# $Id: lonnet.pm,v 1.1244 2013/12/05 05:19:18 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -606,7 +606,7 @@ sub transfer_profile_to_env { # ---------------------------------------------------- Check for valid session sub check_for_valid_session { - my ($r,$name) = @_; + my ($r,$name,$userref) = @_; my %cookies=CGI::Cookie->parse($r->header_in('Cookie')); if ($name eq '') { $name = 'lonID'; @@ -637,11 +637,16 @@ sub check_for_valid_session { || !defined($disk_env{'user.domain'})) { return undef; } - if (($r->user() eq '') && ($apache >= 2.4)) { - if ($disk_env{'user.domain'} eq $r->dir_config('lonDefDomain')) { - $r->user($disk_env{'user.name'}); - } else { - $r->user($disk_env{'user.name'}.':'.$disk_env{'user.domain'}); + if ($apache >= 2.4) { + if ($r->user() eq '') { + if ($disk_env{'user.domain'} eq $r->dir_config('lonDefDomain')) { + $r->user($disk_env{'user.name'}); + } else { + $r->user($disk_env{'user.name'}.':'.$disk_env{'user.domain'}); + } + } + if (($r->user() ne '') && (ref($userref))) { + $$userref = $r->user(); } } return $handle;