Diff for /loncom/lonnet/perl/lonnet.pm between versions 1.903 and 1.904

version 1.903, 2007/08/02 20:40:13 version 1.904, 2007/08/08 22:24:34
Line 862  sub inst_directory_query { Line 862  sub inst_directory_query {
     my %results;      my %results;
     my $homeserver = &domain($udom,'primary');      my $homeserver = &domain($udom,'primary');
     if ($homeserver ne '') {      if ($homeserver ne '') {
         my $response=&reply("instdirsrch:$udom".':'.   my $queryid=&reply("querysend:instdirsearch:".
                             &escape($srch->{'srchby'}).':'.     &escape($srch->{'srchby'}).':'.
                             &escape($srch->{'srchterm'}).':'.     &escape($srch->{'srchterm'}).':'.
                             $srch->{'srchtype'},$homeserver);     &escape($srch->{'srchtype'}),$homeserver);
         if ($response ne 'refused') {   my $host=&hostname($homeserver);
             my @matches = split(/&/,$response);   if ($queryid !~/^\Q$host\E\_/) {
       &logthis('instituional directory search invalid queryid: '.$queryid.' for host: '.$homeserver.'in domain '.$udom);
       return;
    }
    my $response = &get_query_reply($queryid);
    my $maxtries = 5;
    my $tries = 1;
    while (($response=~/^timeout/) && ($tries < $maxtries)) {
       $response = &get_query_reply($queryid);
       $tries ++;
    }
   
           if (!&error($response) && $response ne 'refused') {
               my @matches = split(/\n/,$response);
             foreach my $match (@matches) {              foreach my $match (@matches) {
                 my ($key,$value) = split(/=/,$match);                  my ($key,$value) = split(/=/,$match);
                 my %userhash = &str2hash(&unescape($value));                  $results{&unescape($key).':'.$udom} = &thaw_unescape($value);
                 $results{&unescape($key).':'.$udom} = \%userhash;  
             }              }
         }          }
     }      }
Line 4541  sub get_query_reply { Line 4553  sub get_query_reply {
  sleep 2;   sleep 2;
         if (-e $replyfile.'.end') {          if (-e $replyfile.'.end') {
     if (open(my $fh,$replyfile)) {      if (open(my $fh,$replyfile)) {
                $reply.=<$fh>;   $reply = join('',<$fh>);
                close($fh);   close($fh);
    } else { return 'error: reply_file_error'; }     } else { return 'error: reply_file_error'; }
            return &unescape($reply);             return &unescape($reply);
  }   }

Removed from v.1.903  
changed lines
  Added in v.1.904


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