The lastest update of websockify changes how the class instantiate
WebSocketProxy.
Signed-off-by: Ramon Medeiros <ramonn(a)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