projects
/
invirt/packages/invirt-vnc-server.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Include the VNC host and port in the VNC authentication token
[invirt/packages/invirt-vnc-server.git]
/
invirt-vnc-authtoken
diff --git
a/invirt-vnc-authtoken
b/invirt-vnc-authtoken
index
c542d5e
..
a173f46
100755
(executable)
--- a/
invirt-vnc-authtoken
+++ b/
invirt-vnc-authtoken
@@
-8,12
+8,19
@@
import sha
import time
import base64
from invirt.vnc import getTokenKey
import time
import base64
from invirt.vnc import getTokenKey
+from invirt.config import structs as config
def getAuthToken(username, machine, lifetime=5*60):
data = {}
data['user'] = username
data['machine'] = machine
data['expires'] = time.time() + lifetime
def getAuthToken(username, machine, lifetime=5*60):
data = {}
data['user'] = username
data['machine'] = machine
data['expires'] = time.time() + lifetime
+ data['connect_host'] = config.web.hostname
+ try:
+ data['connect_port'] = 10003 + [h.hostname for h in
+ config.hosts].index(os.uname()[1])
+ except:
+ data['connect_port'] = 5900
pickled_data = cPickle.dumps(data)
m = hmac.new(getTokenKey(), digestmod=sha)
m.update(pickled_data)
pickled_data = cPickle.dumps(data)
m = hmac.new(getTokenKey(), digestmod=sha)
m.update(pickled_data)