X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/57121cedadec57f0323ceb72965bbdcf6fde517a..b9e068a6e15e1726faa7c688244642b2dfebff09:/code/main.py diff --git a/code/main.py b/code/main.py index cfee9f7..b4e659e 100755 --- a/code/main.py +++ b/code/main.py @@ -320,7 +320,18 @@ console will suffer artifacts. @cherrypy.expose @cherrypy.tools.mako(filename="/vnc.mako") def vnc(self, machine_id): - """VNC applet page. + """VNC applet page""" + return self._vnc(machine_id) + + @cherrypy.expose + @cherrypy.tools.response_headers(headers=[('Content-Disposition', 'attachment; filename=vnc.jnlp')]) + @cherrypy.tools.mako(filename="/vnc_jnlp.mako", content_type="application/x-java-jnlp-file") + def vnc_jnlp(self, machine_id): + """VNC applet exposed as a Java Web Start app (JNLP file)""" + return self._vnc(machine_id) + + def _vnc(self, machine_id): + """VNC applet page functionality. Note that due to same-domain restrictions, the applet connects to the webserver, which needs to forward those requests to the xen @@ -676,7 +687,7 @@ def infoDict(username, state, machine): renumber = False for n in machine.nics: - if n.other_action in ('renumber', 'renumber_dhcp'): + if n.other_action == 'renumber_dhcp': renumber = True main_status['memory'] += ' MiB'