)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":1660,"context_line":"        elif console_type \u003d\u003d \u0027spice\u0027:"},{"line_number":1661,"context_line":"            access_url \u003d \u0027spice://%s:%s?secret\u003d%s\u0027 % (connect_info[\u0027host\u0027],"},{"line_number":1662,"context_line":"                                                      connect_info[\u0027port\u0027],"},{"line_number":1663,"context_line":"                                                      connect_info[\u0027secret\u0027])"},{"line_number":1664,"context_line":"        else:"},{"line_number":1665,"context_line":"            raise exception.ConsoleTypeInvalid(console_type\u003dconsole_type)"},{"line_number":1666,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2BoM%3D","line":1663,"updated":"2012-03-14 09:04:14.000000000","message":"You need to also handle the possibility of a tlsPort for SPICE here, since without that the client won\u0027t be able to connect to a SPICE server with TLS enabled","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"}],"nova/virt/libvirt.xml.template":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":188,"context_line":"#else"},{"line_number":189,"context_line":"        \u003cgraphics   type\u003d\u0027vnc\u0027 port\u003d\u0027-1\u0027 autoport\u003d\u0027yes\u0027 keymap\u003d\u0027${vnc_keymap}\u0027"},{"line_number":190,"context_line":"                    listen\u003d\u0027${vncserver_listen}\u0027/\u003e"},{"line_number":191,"context_line":"#end if"},{"line_number":192,"context_line":"#end if"},{"line_number":193,"context_line":"    \u003c/devices\u003e"},{"line_number":194,"context_line":"\u003c/domain\u003e"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAAE3%2F%2F%2BoQ%3D","line":191,"updated":"2012-03-14 09:04:14.000000000","message":"Spice can optionally accept the keymap attribute too, though by default you\u0027ll want to omit it. Since you are setting autoport\u003d\u0027yes\u0027, you can just leave out those two \u0027port\u0027 and \u0027tlsPort\u0027 attributes entirely - libvirt will iniitalize them suitably. Likewise for the existing VNC branch actually.\n\nThe template variable names here are rather bizarre \"vnc_use_spice\" and \"vncserver_listen\".  IMHO they should be renamed to something more protocol agnostic.","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"}],"nova/virt/libvirt/connection.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":978,"context_line":"        return {\u0027host\u0027: host,"},{"line_number":979,"context_line":"                \u0027port\u0027: port,"},{"line_number":980,"context_line":"                \u0027internal_access_path\u0027: None,"},{"line_number":981,"context_line":"                \u0027secret\u0027: secret}"},{"line_number":982,"context_line":""},{"line_number":983,"context_line":"    @staticmethod"},{"line_number":984,"context_line":"    def _cache_image(fn, target, fname, cow\u003dFalse, size\u003dNone, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2BoY%3D","line":981,"updated":"2012-03-14 09:04:14.000000000","message":"If the admin has turned on SPICE TLS support in the /etc/libvirt/qemu.conf file, you will need to also return the value of the \u0027tlsPort\u0027 XML attribute, so the client knows the secure socket port.","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":1415,"context_line":"        if FLAGS.vnc_enabled and FLAGS.libvirt_type not in (\u0027lxc\u0027, \u0027uml\u0027):"},{"line_number":1416,"context_line":"            xml_info[\u0027vncserver_listen\u0027] \u003d FLAGS.vncserver_listen"},{"line_number":1417,"context_line":"            xml_info[\u0027vnc_keymap\u0027] \u003d FLAGS.vnc_keymap"},{"line_number":1418,"context_line":"            xml_info[\u0027vnc_use_spice\u0027] \u003d FLAGS.spice_enabled"},{"line_number":1419,"context_line":""},{"line_number":1420,"context_line":"            # NOTE(justinsb): It would be nice to have a real secret here,"},{"line_number":1421,"context_line":"            # but there\u0027s not a good place to store it"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2BoI%3D","line":1418,"updated":"2012-03-14 09:04:14.000000000","message":"Now that this can be spice or vnc, these vars need renaming. I\u0027d suggest\n\n  graphics_listen\u003d\"vnc\"|\"spice\"|None\n  graphics_keymap","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":1419,"context_line":""},{"line_number":1420,"context_line":"            # NOTE(justinsb): It would be nice to have a real secret here,"},{"line_number":1421,"context_line":"            # but there\u0027s not a good place to store it"},{"line_number":1422,"context_line":"            # (libvirt strips the passwd attribute)"},{"line_number":1423,"context_line":"            # Instead we rely on a proxy to implement security"},{"line_number":1424,"context_line":"            # The uuid does provide at least a simple safety-check"},{"line_number":1425,"context_line":"            secret \u003d instance[\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2Boc%3D","line":1422,"updated":"2012-03-14 09:04:14.000000000","message":"That\u0027s not accurate actually, it is always stored, but not always displayed. By default libvirt will not show the passwd attribute in the XML, however, if you pass the VIR_DOMAIN_XML_SECURE flag when calling the XMLDesc() method, it will include the passwd attribute.","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"},{"author":{"_account_id":144,"name":"justinsb","email":"justin@fathomdb.com","username":"justin-fathomdb"},"change_message_id":"89b5a3f4f00260a0826b5d96b798637fb902ac67","unresolved":false,"context_lines":[{"line_number":1419,"context_line":""},{"line_number":1420,"context_line":"            # NOTE(justinsb): It would be nice to have a real secret here,"},{"line_number":1421,"context_line":"            # but there\u0027s not a good place to store it"},{"line_number":1422,"context_line":"            # (libvirt strips the passwd attribute)"},{"line_number":1423,"context_line":"            # Instead we rely on a proxy to implement security"},{"line_number":1424,"context_line":"            # The uuid does provide at least a simple safety-check"},{"line_number":1425,"context_line":"            secret \u003d instance[\u0027uuid\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2BAw%3D","line":1422,"in_reply_to":"AAAAE3%2F%2F%2Boc%3D","updated":"2012-03-15 18:09:27.000000000","message":"Nice - thank you!  I think all of your suggestions are valid, but this patch is enough for evaluating SPICE so I\u0027m not planning on fixing them until we verify that SPICE itself is a big enough improvement over VNC to make this worthwhile.","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"}],"nova/vnc/__init__.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"50c2261a178e07c9d8bcbb0bd43e7d06253d01f5","unresolved":false,"context_lines":[{"line_number":46,"context_line":"               help\u003d\u0027keymap for vnc\u0027),"},{"line_number":47,"context_line":"    cfg.BoolOpt(\u0027spice_enabled\u0027,"},{"line_number":48,"context_line":"                default\u003dFalse,"},{"line_number":49,"context_line":"                help\u003d\u0027enable spice related features\u0027),"},{"line_number":50,"context_line":"    ]"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"FLAGS \u003d flags.FLAGS"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAE3%2F%2F%2BoU%3D","line":49,"updated":"2012-03-14 09:04:14.000000000","message":"Since \u0027vnc_enabled\u0027 and \u0027spice_enabled\u0027 are mutually exclusive, it would be better to only have one option, eg something like:\n\n  graphics_type\u003dspice|vnc|none\n\nNB, in theory you can also set the keymap attribute for spice, though normally it should be omitted, to let the client handle it. Arguably with VNC we should default to None for keymap, so that the QEMU rwa scancode extension gets activated. So I\u0027d probably rename \u0027vnc_keymap\u0027 to \u0027graphics_keymap\u0027 too, but have it default to \u0027None\u0027.","commit_id":"425c22869b975e5ead12db4f83726a1d1d133a20"}]}
