pvl/socket.py
changeset 120 d342506c3ef3
parent 118 4f9bcf1e53e0
child 132 a54950a8e4ec
equal deleted inserted replaced
119:40b5375d4a27 120:d342506c3ef3
   190         
   190         
   191         buf = nonblocking(self.sock.recv, block)
   191         buf = nonblocking(self.sock.recv, block)
   192 
   192 
   193         log.debug("%s: %s", self, buf)
   193         log.debug("%s: %s", self, buf)
   194 
   194 
   195         # eof?
   195         if buf is None :
   196         if buf :
   196             return None
       
   197         elif buf :
   197             return buf
   198             return buf
   198         else :
   199         else :
   199             raise EOFError()
   200             raise EOFError()
   200 
   201 
   201     def peek (self) :
   202     def peek (self) :
   294         """
   295         """
   295         
   296         
   296         send = nonblocking(self.sock.send, buf)
   297         send = nonblocking(self.sock.send, buf)
   297         
   298         
   298         # eof on write?
   299         # eof on write?
   299         if send :
   300         if send is None :
       
   301             return None
       
   302 
       
   303         elif send :
   300             # ok, message (partially) written
   304             # ok, message (partially) written
   301             return send
   305             return send
   302 
   306 
   303         else :
   307         else :
   304             # XXX: how do we handle this? What does it actually mean?
   308             # XXX: zero-length send? how do we handle this? What does it actually mean?
   305             # handle as a wouldblock...
   309             # handle as a wouldblock...
   306             return None
   310             return None
   307 
       
   308 
   311 
   309     def write (self, data) :
   312     def write (self, data) :
   310         """
   313         """
   311             Write given data to socket.
   314             Write given data to socket.
   312 
   315