--- loncom/cgi/userstatus.pl 2006/09/01 10:54:08 1.14 +++ loncom/cgi/userstatus.pl 2006/09/19 21:36:31 1.15 @@ -1,7 +1,7 @@ #!/usr/bin/perl $|=1; # User Status -# $Id: userstatus.pl,v 1.14 2006/09/01 10:54:08 albertel Exp $ +# $Id: userstatus.pl,v 1.15 2006/09/19 21:36:31 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -32,7 +32,7 @@ use lib '/home/httpd/lib/perl/'; use LONCAPA::Configuration; use LONCAPA; use HTTP::Headers; -use IO::File; +use GDBM_File; my %usercount; @@ -98,15 +98,11 @@ sub main { &add_count('Domain',$userinfo{'user.domain'},$userclass); unless ($oneline) { - my $fh=IO::File->new($$perlvar{'lonIDsDir'}.'/'.$filename); - while (my $line=<$fh>) { - chomp($line); - my ($name,$value)=split(/\=/,$line); - $name = &unescape($name); - $value = &unescape($value); - $userinfo{$name}=$value; + if (!tie(%userinfo,'GDBM_File', + $$perlvar{'lonIDsDir'}.'/'.$filename, + &GDBM_READER(),0640)) { + next; } - $fh->close(); if (!$justsummary) { $users{$userclass}{$filename} .= ''. @@ -148,6 +144,7 @@ sub main { ""; } } + untie(%userinfo); } if (!$oneline && !$justsummary) { foreach my $class (@actl) {