beremiz

Fix Pyro work with SSL wrapper (sslpsk)

2019-03-13, Andrey Skvortsov
2befed4d6ca8
Fix Pyro work with SSL wrapper (sslpsk)

Following error was shown in Beremiz console:
PYRO connecting to URI : PYROS://127.0.0.1:3001#beremiz
Exception while connecting to 'PYROS://127.0.0.1:3001#beremiz': non-zero flags not allowed in calls to recv() on
Connection failed to PYROS://127.0.0.1:3001#beremiz!

Reason is that Pyro calls socket recv() with MSGWAITALL flag, that causes ValueError exception.

https://docs.python.org/2/library/ssl.html
recv(), recv_into() (but passing a non-zero flags argument is not allowed)
# pylint: disable=undefined-variable
from __future__ import absolute_import
from svgui.pyjs.jsonrpc.jsonrpc import JSONRPCServiceBase
class JSONRPCService(JSONRPCServiceBase):
def serve(self):
return self.process(request.body.read())
def __call__(self, func):
self.methods[func.__name__] = func
return func