X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=transports%2Fstratum_http.py;h=b3e9a724aa9023508a517bb3001ec71339a73438;hb=4ba89c7c7f2ede820ebe99dfa459cc3180ed9b72;hp=4efdb97b1dff5e5324e7e9db781ca3a7127aab9f;hpb=ba0781f46f32e09e12e50c74cf7575429e04f36c;p=electrum-server.git diff --git a/transports/stratum_http.py b/transports/stratum_http.py index 4efdb97..b3e9a72 100644 --- a/transports/stratum_http.py +++ b/transports/stratum_http.py @@ -49,7 +49,7 @@ from the processor point of view: """ -from processor import random_string +from processor import random_string, print_log def get_version(request): @@ -153,7 +153,15 @@ class StratumJSONRPCDispatcher(SimpleXMLRPCServer.SimpleXMLRPCDispatcher): class StratumJSONRPCRequestHandler( SimpleXMLRPCServer.SimpleXMLRPCRequestHandler): - + + def do_OPTIONS(self): + self.send_response(200) + self.send_header('Allow', 'GET, POST, OPTIONS') + self.send_header('Access-Control-Allow-Origin', '*') + self.send_header('Access-Control-Allow-Headers', '*') + self.send_header('Content-Length', '0') + self.end_headers() + def do_GET(self): if not self.is_rpc_path_valid(): self.report_404() @@ -260,7 +268,7 @@ class SSLRequestHandler(StratumJSONRPCRequestHandler): class SSLTCPServer(SocketServer.TCPServer): def __init__(self, server_address, certfile, keyfile, RequestHandlerClass, bind_and_activate=True): SocketServer.BaseServer.__init__(self, server_address, RequestHandlerClass) - ctx = SSL.Context(SSL.SSLv3_METHOD) + ctx = SSL.Context(SSL.SSLv23_METHOD) ctx.use_privatekey_file(keyfile) ctx.use_certificate_file(certfile) self.socket = SSL.Connection(ctx, socket.socket(self.address_family, self.socket_type)) @@ -382,11 +390,11 @@ class HttpServer(threading.Thread): if self.use_ssl: class StratumThreadedServer(ThreadingMixIn, StratumHTTPSSLServer): pass self.server = StratumThreadedServer(( self.host, self.port), self.certfile, self.keyfile) - print "HTTPS server started." + print_log( "HTTPS server started.") else: class StratumThreadedServer(ThreadingMixIn, StratumHTTPServer): pass self.server = StratumThreadedServer(( self.host, self.port)) - print "HTTP server started." + print_log( "HTTP server started.") self.server.dispatcher = self.dispatcher self.server.register_function(None, 'server.stop')