3
Demonstrates M2Crypto.SSL.TwistedProtocolWrapper
5
Copyright (c) 2005 Open Source Applications Foundation. All rights reserved.
8
import twisted.internet.protocol as protocol
9
import twisted.protocols.basic as basic
10
import twisted.internet.reactor as reactor
11
import M2Crypto.SSL.TwistedProtocolWrapper as wrapper
12
import M2Crypto.SSL as SSL
14
class EchoClient(basic.LineReceiver):
15
def connectionMade(self):
16
self.sendLine('Hello World!')
18
def lineReceived(self, line):
19
print 'received: "%s"' % line
20
self.transport.loseConnection()
23
class EchoClientFactory(protocol.ClientFactory):
26
def clientConnectionFailed(self, connector, reason):
27
print 'connection failed'
30
def clientConnectionLost(self, connector, reason):
31
print 'connection lost'
40
if __name__ == '__main__':
41
factory = EchoClientFactory()
42
wrapper.connectSSL('localhost', 8000, factory, ContextFactory())
43
reactor.run() # This will block until reactor.stop() is called