[Twisted-Python] M2Crypto+Twisted, part 2

Heikki Toivonen heikki at osafoundation.org
Wed Dec 8 12:45:38 MST 2004


Jp Calderone wrote:
> On Tue, 07 Dec 2004 17:46:52 -0800, Heikki Toivonen <heikki at osafoundation.org> wrote:
>>The most interesting piece of the code is my TLSProtocolWrapper that 
>>inherits from ProtocolWrapper. See 
>>http://lxr.osafoundation.org/source/internal/m2crypto/M2Crypto/SSL/TwistedProtocolWrapper.py
>>
>>When there is an error in the SSL connection, and I call 
>>connectionLost(), I end up with a traceback that feels like it might be 
>>a Twisted bug. Or if I am not allowed to call that, how do I signal that 
>>I want to break the connection? Here's the traceback:
> 
>   You should call proto.transport.loseConnection() instead of proto.connectionLost().  The former indicates to the reactor that the connection should be dropped, the latter is a callback that the reactor invokes to tell you that the connection has been dropped.

Ok, that makes the exception go away, but it still does not solve the 
problem why I tried to use connectionLost() in the first place. I want 
to signal that this connection was lost because of an error, and calling 
  loseConnection() won't let me specify the error.

I am looking at as non-invasive methods as possible, the ultimate goal 
being that you could hook this up to any existing non-SSL implementation 
  with practically no changes. That seems to rule out custom errbacks.

So, when my wrapper notices an SSL error, how do I signal that the 
connection should be dropped because there was an error - and pass some 
info about the error along?

-- 
   Heikki Toivonen

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
URL: </pipermail/twisted-python/attachments/20041208/c156f6e5/attachment.sig>


More information about the Twisted-Python mailing list