Jeff, I'm glad the source isn't proving too opaque!
Should perhaps ensure that the connection will close when a block is passed:
Yeah, it kind of seems that way, but in fact, doing so would have some unfortunately side-effects. The #close method actually tries to wait for channels to be terminated gracefully, running an event loop until everything has finished cleanly. If you were to run that in an ensure clause, then any exception that gets raised would run the event loop, even if the connection has been invalidated (e.g., server disconnected, etc.), resulting in another exception that would likely mask the real one.
I'd love to make sure the connection gets terminated, and terminated cleanly if possible, but it's unfortunately not as simple as just using an ensure clause. I'm certainly open to suggestions, though!
- Jamis
smime.p7s
Description: S/MIME cryptographic signature
