You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

41 lines
1.3 KiB

#!/usr/bin/env python3
import sys
from twisted.internet import reactor
from twisted.python.log import startLogging
import jmdaemon
def startup_joinmarketd(host, port, usessl, factories=None,
finalizer=None, finalizer_args=None):
"""Start event loop for joinmarket daemon here.
Args:
port : port over which to serve the daemon
finalizer: a function which is called after the reactor has shut down.
finalizer_args : arguments to finalizer function.
"""
startLogging(sys.stdout)
if not factories:
factories = [jmdaemon.JMDaemonServerProtocolFactory(),]
for factory in factories:
jmdaemon.start_daemon(host, port, factory, usessl,
'./ssl/key.pem', './ssl/cert.pem')
port += 1
if finalizer:
reactor.addSystemEventTrigger("after", "shutdown", finalizer,
finalizer_args)
reactor.run()
if __name__ == "__main__":
if len(sys.argv) < 2:
port = 27183
else:
port = int(sys.argv[1])
usessl = False
if len(sys.argv) > 2:
if int(sys.argv[2]) != 0:
usessl = True
if len(sys.argv) > 3:
host = sys.argv[3]
else:
host = 'localhost'
startup_joinmarketd(host, port, usessl)