X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-web.git/blobdiff_plain/44bf62642b9d84f1309e0fc257177259450e6d2a..b9e068a6e15e1726faa7c688244642b2dfebff09:/code/main.py diff --git a/code/main.py b/code/main.py index 6587484..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