aboutsummaryrefslogtreecommitdiff
path: root/scripts/tls-server.py
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2009-05-29 22:17:08 +0000
committerRob Austein <sra@hactrn.net>2009-05-29 22:17:08 +0000
commit65961cba8487ceb3a61b7239ddeb8c3477cfb176 (patch)
tree62e464f75542e6a534a52e62123cfe54acc478b3 /scripts/tls-server.py
parente5418a7a62016cff767e8d9d8c159b127cc0bbe0 (diff)
TLS testbed
svn path=/scripts/tls-client.py; revision=2468
Diffstat (limited to 'scripts/tls-server.py')
-rw-r--r--scripts/tls-server.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/tls-server.py b/scripts/tls-server.py
new file mode 100644
index 00000000..988cc673
--- /dev/null
+++ b/scripts/tls-server.py
@@ -0,0 +1,30 @@
+# $Id$
+
+import socket, POW, time
+
+key = POW.pemRead(POW.RSA_PRIVATE_KEY, open("Alice.key", "r").read())
+cer = POW.pemRead(POW.X509_CERTIFICATE, open("Alice.cer", "r").read())
+
+listener = socket.socket()
+listener.bind(('',6666))
+listener.listen(5)
+
+s, addr = listener.accept()
+while not s:
+ time.sleep(2)
+ s, addr = listener.accept()
+
+print "Got connection %r from %r" % (s, addr)
+
+ssl = POW.Ssl(POW.TLSV1_SERVER_METHOD)
+
+ssl.useCertificate(cer)
+ssl.useKey(key)
+
+ssl.setFd(s.fileno())
+ssl.accept()
+
+# POW.SSLError: ('SSL routines', 'SSL3_GET_CLIENT_HELLO', 'no shared cipher', 336109761, 's3_srvr.c', 1135)
+
+ssl.write("Hello, TLS")
+print ssl.read(100)