Diff for /loncom/loncnew between versions 1.88 and 1.94

version 1.88, 2008/10/06 10:55:46 version 1.94, 2011/01/20 11:19:37
Line 85  my $ClientConnection = 0; # Uniquifier f Line 85  my $ClientConnection = 0; # Uniquifier f
   
 my $DebugLevel = 0;  my $DebugLevel = 0;
 my $NextDebugLevel= 2; # So Sigint can toggle this.  my $NextDebugLevel= 2; # So Sigint can toggle this.
 my $IdleTimeout= 600; # Wait 10 minutes before pruning connections.  my $IdleTimeout= 5*60; # Seconds to wait prior to pruning connections.
   
 my $LogTransactions = 0; # When True, all transactions/replies get logged.  my $LogTransactions = 0; # When True, all transactions/replies get logged.
 my $executable      = $0; # Get the full path to me.  my $executable      = $0; # Get the full path to me.
Line 441  Trigger disconnections of idle sockets. Line 441  Trigger disconnections of idle sockets.
   
 sub SetupTimer {  sub SetupTimer {
     Debug(6, "SetupTimer");      Debug(6, "SetupTimer");
     Event->timer(interval => 1, cb => \&Tick );      Event->timer(interval => 1, cb => \&Tick,
    hard => 1);
 }  }
   
 =pod  =pod
Line 761  sub KillSocket { Line 762  sub KillSocket {
  delete ($ActiveTransactions{$Socket});   delete ($ActiveTransactions{$Socket});
     }      }
     if(exists($ActiveConnections{$Socket})) {      if(exists($ActiveConnections{$Socket})) {
    $ActiveConnections{$Socket}->cancel;
  delete($ActiveConnections{$Socket});   delete($ActiveConnections{$Socket});
  $ConnectionCount--;   $ConnectionCount--;
  if ($ConnectionCount < 0) { $ConnectionCount = 0; }   if ($ConnectionCount < 0) { $ConnectionCount = 0; }
Line 772  sub KillSocket { Line 774  sub KillSocket {
  EmptyQueue();   EmptyQueue();
  CloseAllLondConnections; # Should all already be closed but...   CloseAllLondConnections; # Should all already be closed but...
     }      }
       UpdateStatus();
 }  }
   
 =pod  =pod
Line 1206  sub MakeLondConnection { Line 1209  sub MakeLondConnection {
  &GetServerPort(),   &GetServerPort(),
  &GetHostId());   &GetHostId());
   
     if($Connection eq undef) { # Needs to be more robust later.      if($Connection eq undef) {
  Log("CRITICAL","Failed to make a connection with lond.");   Log("CRITICAL","Failed to make a connection with lond.");
  $ConnectionRetriesLeft--;   $ConnectionRetriesLeft--;
  return 0; # Failure.   return 0; # Failure.
Line 1730  sub ChildProcess { Line 1733  sub ChildProcess {
   cb       => \&ToggleDebug,    cb       => \&ToggleDebug,
   data     => "INT");    data     => "INT");
   
       # Block the pipe signal we'll get when the socket disconnects.  We detect 
       # socket disconnection via send/receive failures. On disconnect, the
       # socket becomes readable .. which will force the disconnect detection.
   
       my $set = POSIX::SigSet->new(SIGPIPE);
       sigprocmask(SIG_BLOCK, $set);
   
     #  Figure out if we got passed a socket or need to open one to listen for      #  Figure out if we got passed a socket or need to open one to listen for
     #  client requests.      #  client requests.
   
Line 1773  sub CreateChild { Line 1783  sub CreateChild {
     my $sigset = POSIX::SigSet->new(SIGINT);      my $sigset = POSIX::SigSet->new(SIGINT);
     sigprocmask(SIG_BLOCK, $sigset);      sigprocmask(SIG_BLOCK, $sigset);
     $RemoteHost = $host;      $RemoteHost = $host;
       ShowStatus('Parent keeping the flock'); # Update time in status message.
     Log("CRITICAL", "Forking server for ".$host);      Log("CRITICAL", "Forking server for ".$host);
     my $pid          = fork;      my $pid          = fork;
     if($pid) { # Parent      if($pid) { # Parent

Removed from v.1.88  
changed lines
  Added in v.1.94


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