--- loncom/LondConnection.pm 2003/06/11 02:04:35 1.4 +++ loncom/LondConnection.pm 2003/07/02 01:12:35 1.7 @@ -1,7 +1,7 @@ # This module defines and implements a class that represents # a connection to a lond daemon. # -# $Id: LondConnection.pm,v 1.4 2003/06/11 02:04:35 foxr Exp $ +# $Id: LondConnection.pm,v 1.7 2003/07/02 01:12:35 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -37,7 +37,7 @@ use Crypt::IDEA; use LONCAPA::Configuration; use LONCAPA::HashIterator; -my $DebugLevel=4; +my $DebugLevel=0; # Read the configuration file for apache to get the perl # variable set. @@ -215,7 +215,7 @@ sub Readable { my $rv = $socket->recv($data, POSIX::BUFSIZ, 0); my $errno = $! + 0; # Force numeric context. - unless (defined($rv) && length($data)) { # Read failed, + unless (defined($rv) && (length($data)> 0)) {# Read failed, if(($errno == POSIX::EWOULDBLOCK) || ($errno == POSIX::EAGAIN) || ($errno == POSIX::EINTR) || @@ -488,6 +488,20 @@ sub SetTimeoutCallback { =pod +=head2 Shutdown: + +Shuts down the socket. + +=cut + +sub Shutdown { + my $self = shift; + my $socket = $self->GetSocket(); + $socket->shutdown(2); +} + +=pod + =head2 GetState selector for the object state. @@ -512,6 +526,7 @@ sub GetSocket { return $self->{Socket}; } + =pod =head2 WantReadable @@ -838,6 +853,10 @@ peer (assumes the text is a command). Decrypts a block of text according to the cipher negotiated with the peer (assumes the block was a reply. +=item Shutdown: + +Shuts off the socket. + =head2 The following are selector member functions: =item GetState: