#!/usr/bin/evn python
from __future__ import print_function
import BaseHTTPServer, SimpleHTTPServer
import ssl


PORT = 4443

CERT = '''-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEA5iV78XjytN5mUbHFEwG9z+n8Rh99flWF9jVLWGXzfx3o1V82
vNJ8V6sA6Ovd+LtwQcjTrYgY/o22M6/BDmIRtwFWmstTL89BgbHdC82Gc1J7SsfO
qrB9eTKQoRTWsGjlJ0Kl+5s75aSJyIcoAJacFt3etwcXiI0/ft5oX15OJ+hxFcia
yaWdms8rR5VlnePMRB7rY/y1XwoG125dFrp5RL5tdpQoEvViBFroQ7T6HZMMuFiq
WrVyJ8xFUlFCT95B1AyWqotfYKwu07Lw3oM8I+rjMIon4hGtX7D6+D9+Z2pJfpYK
/38h3/gs5mQ3EedOlyMQmrHHEYzWAvf11J+X0wIDAQABAoIBAQCAann2Ct6iPVYq
T17/dAFNeenh1sBXNbFB6ArakEiFrVK1fCM2yNvIrwoa7UE2AKBqlHxIX6BSqQ/5
VyAJvn7T9lM0nC8Whjau/2evpkZXIrbYyxRt+XyJm8VHnDEOzfjPJ0kmUz/gqyaW
VZPkgCUoPTSAO9zNvMKpL8BdNmm1qdYjpoH+rtX04AskGGLZIfq98PppVBjQ9Ic7
ctLPtbbnFqf9QI4941n+vm+/ZLLJf7D9LmH/mgwKmwwp11T2ikMkJoaq0N1aeIUZ
HOdtAQyy5npargTx/uUdelS4rSYojFcqy/u7Gbc2s1ssgLRJf/6xf6G4IwAlkEmb
11ysYwcBAoGBAPt1yW/UrGeAtdDgb46RBdbCBzRGQbHI0uWTQx+V2CjgdF/LoWPL
q7Bi1JpBiFFCLe0+RT+sFzPICwvCpYTEircZA4kLkz1DNlhy4PAQmJwbyAjuhyLC
lMDvpLnVQtnGMj3HmVugK87MFi8pzheXltuMf57LS4Feo4vB4afl/qXjAoGBAOpN
MD6wwNZrQ7++UsN+aXDjZ1ov8VL3g9sXhLFcTxYAK0HIAt8sAI1E1ToHocBV+SCe
bXqaCTAsEX0ua9jHFuBfrdtf93XDeYlqYhnTSih9KjVey77WGB7P0hsINApZ9ncx
5YJZviqVPKaJmDCLQP2WjSHHv+9HYM+hPcjWYWlRAoGAGm2+xiosFJTKhzGPiARm
ALRT3YKk1PKud8KKg39UQLeWg5r7U2nMmbVJcw0ALsot2Yl57b9AkQitYIcMrm+Z
xLS0UmsNBptR0uoACjs0TvP8ijPHsDeTOtP1FDL927WhAi1ASQkEka+RhVN3fbNI
/7o8j4v+W5J+zemKtgLOSNECgYBR5CyqnKipyM/jIqhWv8YmuLSU5xDXyL8DQpMU
UokpzWFRGpE2Y3DF73r/T0+Po/zxE658HX58ocpzEFiNafhq78YaWM5rEKlYCCDF
mf3fbO/lu35G8xl3G3f6DsHxpEPqoTvwdWFsDMEoDAtvXByZBZfKaMCC51XE/DxW
B+gAIQKBgQCcGlN2hd4J1RikvnPahN/91dupuGMeoSAWZ1Kfe9lXpi0zoN298gLr
WuYGCbOXj9rMcauh4oK5n1nBQZ/qmW0hJJxB3k4evhjN3kp793Q8IbOdUCb/Ahej
eQ6Peev/HaY+nfIohBludCQ3GUtzcWGKhfSiwfXcut3Jc+TiqHvHiQ==
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIDtTCCAp2gAwIBAgIJAK4JLqg3bs1dMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX
aWRnaXRzIFB0eSBMdGQwHhcNMTMxMTAyMDUwMjMwWhcNMjMxMDMxMDUwMjMwWjBF
MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50
ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEA5iV78XjytN5mUbHFEwG9z+n8Rh99flWF9jVLWGXzfx3o1V82vNJ8V6sA
6Ovd+LtwQcjTrYgY/o22M6/BDmIRtwFWmstTL89BgbHdC82Gc1J7SsfOqrB9eTKQ
oRTWsGjlJ0Kl+5s75aSJyIcoAJacFt3etwcXiI0/ft5oX15OJ+hxFciayaWdms8r
R5VlnePMRB7rY/y1XwoG125dFrp5RL5tdpQoEvViBFroQ7T6HZMMuFiqWrVyJ8xF
UlFCT95B1AyWqotfYKwu07Lw3oM8I+rjMIon4hGtX7D6+D9+Z2pJfpYK/38h3/gs
5mQ3EedOlyMQmrHHEYzWAvf11J+X0wIDAQABo4GnMIGkMB0GA1UdDgQWBBS90B70
u5uWrgnveWPvLk1o56NAFjB1BgNVHSMEbjBsgBS90B70u5uWrgnveWPvLk1o56NA
FqFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV
BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAK4JLqg3bs1dMAwGA1UdEwQF
MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKV4P2jI0mv67F7PwdKTpsIcROlKEZNG
aIhcnTRwE2gXj1K21cZLkoNpsjxu1T5i2yLPuNvpwhNY0hsvfmXyq2RuxuOQ41ub
DGWZj+hBKq+kabUjq3da0gcBQ0cMHfQhW33naGruLi9FTmfMUUZ6N+7DuLVuqZux
NsSmhfPweb2X8/fKuwJiT0bDNpKDVbeRY6w8+VDW1mLKcRxa1e+nW6df7p95vXy3
5/nDYj/i7dlH+hg7y3ULOOSBceEPZ8xeeufSoyFILZ1qn65KcM1aPnRni8dbsUKB
FSIEK8sD+cdGuJ8amHDexTVuT2nL9RKByNwAU2VgKuVCmqmD5c1hPbE=
-----END CERTIFICATE-----'''

print(CERT, file=open('/tmp/shttpd_cert.pem', 'w'))

httpd = BaseHTTPServer.HTTPServer(('0.0.0.0', PORT), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, certfile='/tmp/shttpd_cert.pem', server_side=True)

print("Listening at port %d" % PORT)
httpd.serve_forever()
