diff options
| author | drebs <drebs@leap.se> | 2015-05-29 19:02:44 -0300 | 
|---|---|---|
| committer | drebs <drebs@leap.se> | 2015-05-29 19:05:02 -0300 | 
| commit | 907a864c774cc43fcf0ebff3d6b5082901661e98 (patch) | |
| tree | 8f54fa030bb85aefaa877736d114d8d26739a8da | |
| parent | 5a0de9fd25d783039345674680c67a2bd91815a5 (diff) | |
[bug] move events server init to backend
If the events server is initialized in a different process than the backend,
the txzmq socket raises an "zmq.error.ZMQError: Interrupted system call"
exception during the events server initialization. Despite that, communication
seems to work flawlessly after the initialization.
Moving the events server initialization to the same process as the backend
causes the exception to not be raised during events server intialization.
| -rw-r--r-- | src/leap/bitmask/app.py | 7 | ||||
| -rw-r--r-- | src/leap/bitmask/backend_app.py | 5 | 
2 files changed, 5 insertions, 7 deletions
| diff --git a/src/leap/bitmask/app.py b/src/leap/bitmask/app.py index db390a63..731c168c 100644 --- a/src/leap/bitmask/app.py +++ b/src/leap/bitmask/app.py @@ -57,7 +57,6 @@ from leap.bitmask.services.mail import plumber  from leap.bitmask.util import leap_argparse, flags_to_dict  from leap.bitmask.util.requirement_checker import check_requirements -from leap.common.events import server as event_server  from leap.mail import __version__ as MAIL_VERSION  import codecs @@ -153,12 +152,6 @@ def start_app():      # XXX mail repair commands disabled for now      # do_mail_plumbing(opts) -    try: -        event_server.ensure_server() -    except Exception as e: -        # We don't even have logger configured in here -        print "Could not ensure server: %r" % (e,) -      PLAY_NICE = os.environ.get("LEAP_NICE")      if PLAY_NICE and PLAY_NICE.isdigit():          nice = os.nice(int(PLAY_NICE)) diff --git a/src/leap/bitmask/backend_app.py b/src/leap/bitmask/backend_app.py index 3e88a95a..5fc8d1e2 100644 --- a/src/leap/bitmask/backend_app.py +++ b/src/leap/bitmask/backend_app.py @@ -21,6 +21,8 @@ import logging  import multiprocessing  import signal +from leap.common.events import server as event_server +  from leap.bitmask.backend.leapbackend import LeapBackend  from leap.bitmask.backend.utils import generate_zmq_certificates  from leap.bitmask.config import flags @@ -68,6 +70,9 @@ def run_backend(bypass_checks=False, flags_dict=None, frontend_pid=None):      if flags_dict is not None:          dict_to_flags(flags_dict) +    # start the events server +    event_server.ensure_server() +      backend = LeapBackend(bypass_checks=bypass_checks,                            frontend_pid=frontend_pid)      backend.run() | 
