[PATCH v3][Kimchi] Add support for websockify 0.7

The lastest update of websockify changes how the class instantiate WebSocketProxy. Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com> --- Changes: v2: Change variable name Instead of create params dictionary from begining, just append the changes v3: Rebase over last master vnc.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/vnc.py b/vnc.py index 9a25f50..4f94ab2 100644 --- a/vnc.py +++ b/vnc.py @@ -21,12 +21,20 @@ import base64 import errno import os + from multiprocessing import Process from websockify import WebSocketProxy from wok.config import config, paths, PluginPaths +try: + from websockify.token_plugins import TokenFile + tokenFile = True +except ImportError: + tokenFile = False + + WS_TOKENS_DIR = os.path.join(PluginPaths('kimchi').state_dir, 'vnc-tokens') @@ -45,9 +53,16 @@ def new_ws_proxy(): params = {'listen_host': '127.0.0.1', 'listen_port': config.get('server', 'websockets_port'), - 'target_cfg': WS_TOKENS_DIR, 'ssl_only': False} + # old websockify: do not use TokenFile + if not tokenFile: + params['target_cfg'] = WS_TOKENS_DIR + + # websockify 0.7 and higher: use TokenFile + else: + params['token_plugin'] = TokenFile(src=WS_TOKENS_DIR) + def start_proxy(): server = WebSocketProxy(**params) server.start_server() -- 2.1.0
participants (2)
-
Aline Manera
-
Ramon Medeiros