| Summary: | guest not resized on entering fullscreen: client doesn't send monitor config when launched via browser plugin and connected over TLS | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | David Jaša <djasa> | ||||
| Component: | virt-viewer | Assignee: | Marc-Andre Lureau <marcandre.lureau> | ||||
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 6.5 | CC: | cfergeau, codong, dblechte, djasa, dyuan, jhunsaker, lcui, luvilla, marcandre.lureau, mkrcmari, mzhan, rbalakri, tlavigne, tzheng | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | virt-viewer-0.6.0-2.el6 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | |||||||
| : | 1038727 (view as bug list) | Environment: | |||||
| Last Closed: | 2014-10-14 06:30:30 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Bug Depends On: | |||||||
| Bug Blocks: | 1009648, 1038727 | ||||||
| Attachments: |
|
||||||
mingw-virt-viewer bug: bug 1038727 it's funny how I failed to imagine the reason, but I can indeed reproduce... let see Testing with XPI test page.
afaict, the difference is not the plain-port vs tls-port (in fact)
It is the admin console option. If I don't check it, the I get auto-display flag on, but not fullscreen. Here is test.html js code:
SendValue(CONTROLLER_FULL_SCREEN,
(m_fullscreen == true ? CONTROLLER_SET_FULL_SCREEN : 0) |
(m_admin_console == false ? CONTROLLER_AUTO_DISPLAY_RES : 0));
Please verify controller log:
GSpiceController-DEBUG: controller.vala:137: got FULL_SCREEN 0x2 (only auto-res)
Then, when going fullscreen will not change resolution. because of
g_object_get(app, "fullscreen-auto-conf", &auto_conf, NULL);
if (auto_conf)
self->priv->auto_resize = AUTO_RESIZE_NEVER;
and
virt_viewer_display_spice_resize(self, allocation,
self->priv->auto_resize != AUTO_RESIZE_NEVER);
With virt-viewer git, it all seems to work better. It goes fullscreen if AUTO_DISPLAY_RES, and doesn't block fullscreen auto-res.
If you could verify it's not a tls vs non-tls issue, I think we should post-pone it and wait for next release.
admin-console seems to be the wrong lead: it is set to 0 by user portal: 2013-12-16 19:25:36,935 DEBUG nsPluginInstance::SetHostIP: 10.34.73.133 2013-12-16 19:25:36,935 DEBUG nsPluginInstance::SetPort: 5920 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetTitle: w7x64-33-dj:%d - Press SHIFT+F12 to Release Cursor 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetDynamicMenu: 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetFullScreen: 0 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetPassword: Password set 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetNumberOfMonitors: 2 2013-12-16 19:25:36,936 DEBUG nsPluginInstance::SetUsbListenPort: 0 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetAdminConsole: 0 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetSecurePort: 5921 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetSSLChannels: original channels: smain,sinputs,scursor,splayback,srecord,sdisplay,susbredir,ssmartcard 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetSSLChannels: modified channels: main,inputs,cursor,playback,record,display,usbredir,smartcard 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetGuestHostName: 10.34.72.39 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetCipherSuite: DEFAULT 2013-12-16 19:25:36,937 DEBUG nsPluginInstance::SetHostSubject: O=spice-qe,CN=10.34.73.74 2013-12-16 19:25:36,938 DEBUG nsPluginInstance::SetTrustStore: Certificate: <...> 2013-12-16 19:25:36,938 DEBUG nsPluginInstance::SetHotKeys: release-cursor=shift+f12,toggle-fullscreen=shift+f11 2013-12-16 19:25:36,938 DEBUG nsPluginInstance::SetNoTaskMgrExecution: 1 2013-12-16 19:25:36,938 DEBUG nsPluginInstance::SetSendCtrlAltDelete: 1 2013-12-16 19:25:36,938 DEBUG nsPluginInstance::SetUsbAutoShare: 1 2013-12-16 19:25:36,940 DEBUG nsPluginInstance::SetUsbFilter: -1,60186,10000,256,1|-1,1118,245,-1,1|-1,1133,2245,-1,1|-1,1133,2242,5,1|8,-1,-1,-1,1|7,-1,-1,-1,1|-1,-1,-1,-1,0 2013-12-16 19:25:36,940 INFO nsPluginInstance::Connect: SPICE_XPI_SOCKET: /tmp/spicec-SYC9Qx/spice-xpi 2013-12-16 19:25:36,940 INFO nsPluginInstance::Connect: SPICE_PROXY: http://10.34.73.1:3128 2013-12-16 19:25:36,940 INFO nsPluginInstance::Connect: SPICE_FOREIGN_MENU_SOCKET: /tmp/spicec-SYC9Qx/spice-foreign 2013-12-16 19:25:36,941 DEBUG nsPluginInstance::Connect: Controller pid: 2173 2013-12-16 19:25:36,941 DEBUG QErrorHandler: Something went wrong: connect error, 2 2013-12-16 19:25:36,941 DEBUG SpiceController::Connect: Connect Error 2013-12-16 19:25:36,941 DEBUG QErrorHandler: Something went wrong: connect error, 2 2013-12-16 19:25:36,941 DEBUG SpiceController::Connect: Connect Error 2013-12-16 19:25:36,941 INFO nsPluginInstance::Connect: Launching /usr/libexec/spice-xpi-client 2013-12-16 19:25:37,942 DEBUG SpiceController::Connect: Connected! 2013-12-16 19:25:39,947 INFO nsPluginInstance::Connect: Initiating connection with controller and it doesn't show up in r-v output at all: starting remote-viewer --spice-controller ... (remote-viewer:2173): remote-viewer-DEBUG: Couldn't load configuration: File is empty (remote-viewer:2173): GSpice-DEBUG: spice-session.c:172 New session (compiled from package spice-gtk 0.20) (remote-viewer:2173): GSpice-DEBUG: spice-session.c:176 Supported channels: main, display, inputs, cursor, playback, record, smartcard, usbredir (remote-viewer:2173): GSpice-DEBUG: usb-device-manager.c:856 device added 0x19fa6f0 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:215: new socket client, reading init header (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 1size 21 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:97: got HOST: 10.34.73.133 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 2size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:101: got PORT: 5920 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 3size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:105: got SPORT: 5921 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 10size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:137: got FULL_SCREEN 0x2 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 4size 21 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:109: got PASSWORD (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 7size 16 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:124: got TLS_CIPHERS DEFAULT (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 11size 59 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:141: got TITLE w7x64-33-dj:%d - Press SHIFT+F12 to Release Cursor (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 15size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:159: got SEND_CAD 1 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 5size 70 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:114: got SECURE_CHANNELS main,inputs,cursor,playback,record,display,usbredir,smartcard (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 8size 35 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:128: got CA_FILE /tmp/truststore.pem-S3BRSZ (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 9size 34 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:132: got HOST_SUBJECT O=spice-qe,CN=10.34.73.74 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 14size 61 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:164: got HOTKEYS release-cursor=shift+f12,toggle-fullscreen=shift+f11 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 16size 8 (remote-viewer:2173): GSpice-DEBUG: spice-session.c:1623 session: disconnecting 0 (remote-viewer:2173): GSpice-DEBUG: spice-channel.c:127 main-1:0: spice_channel_constructed (remote-viewer:2173): GSpice-DEBUG: spice-session.c:1930 main-1:0: new main channel, switching (remote-viewer:2173): GSpice-DEBUG: spice-gtk-session.c:809 Changing main channel from (nil) to 0x1b0db50 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:178: got CONNECT request (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 17size 8 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:182: got SHOW request (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 22size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:190: got ENABLE_USB 1 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 23size 12 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:194: got ENABLE_USB_AUTOSHARE 1 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:246: new message 24size 121 (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:198: got USB_FILTER -1,60186,10000,256,1|-1,1118,245,-1,1|-1,1133,2245,-1,1|-1,1133,2242,5,1|8,-1,-1,-1,1|7,-1,-1,-1,1|-1,-1,-1,-1,0 (remote-viewer:2173): GSpice-DEBUG: spice-channel.c:2385 main-1:0: Open coroutine starting 0x1b0db50 (remote-viewer:2173): GSpice-DEBUG: spice-channel.c:2231 main-1:0: Started background coroutine 0x1b0dbe0 (remote-viewer:2173): GSpice-DEBUG: spice-session.c:1812 open host 10.34.73.133:5921 (remote-viewer:2173): GSpice-DEBUG: spice-session.c:1815 (with proxy http://10.34.73.1:3128) <no more controller-related messages> (In reply to David Jaša from comment #4) > admin-console seems to be the wrong lead: it is set to 0 by user portal: > (remote-viewer:2173): GSpiceController-DEBUG: controller.vala:137: got > FULL_SCREEN 0x2 nope, that confirms it. the fix is the same as bug 1069735 Created attachment 890850 [details]
Patch used in RHEV
This was fixed in RHEV in virt-viewer with this non-upstream patch.
I test on rhel6.5 with: spice-gtk-0.20-11.el6.x86_64 virt-viewer-0.5.6-8.el6.x86_64 spice-xpi-2.7-24.el6.x86_64 Steps: 1. configure the spice-xpi test page(file host, secure port, password and trust store) 2. click connect button and try to connect a rhevm vm 3. make sure "Automatically resize" is on, and press shift+f11 Result: 1. window change fullscreen, and resolution change, same with the client monitor From the result, seems work well. So steps above are right? BTW, my guest is rhel6.5. *** Bug 1082140 has been marked as a duplicate of this bug. *** I can reproduce the bug with: virt-viewer-0.5.6-8.el6.x86_64 Verify with virt-viewer-0.6.0-5.el6.x86_64 Steps: 1. Prepare a spice rhel guest on rhevm, and configure the guest with 1 display. (My client has two monitors) 2. Open spice-xpi test page and file SecurePort: $tls_port Host: $host_ip Password: $passwd Trust_Store: $ca_cert 3. Chick "Connect" Result: Two displays come out with full-screen on each monitors. But I didn't check on full-screen option. This is expected? I also test with only one monitor, I didn't check on the "Fullscreen" option on the spice xpi test page, but when I connect the guest, it comes out with fullscreen mode. So change it ASSIGNED. (In reply to CongDong from comment #13) > I also test with only one monitor, I didn't check on the "Fullscreen" option > on the spice xpi test page, but when I connect the guest, it comes out with > fullscreen mode. So change it ASSIGNED. If AdminConsole is not set (that is if auto-conf is set), it has the same effect as fullscreen. This is the result of rebase, where difference between auto-conf and fullscreen has been removed. (In reply to Marc-Andre Lureau from comment #14) > If AdminConsole is not set (that is if auto-conf is set), it has the same > effect as fullscreen. > > This is the result of rebase, where difference between auto-conf and > fullscreen has been removed. Thanks for your reply, I retest it with: virt-viewer-0.6.0-11.el6.x86_64 Got the same result with comment 12 when adminconsole is not set. If I set adminconsole it won't be fullscreen unless set the fullscreen. This is expected, so set VERIFIED. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2014-1379.html |
Description of problem: When the client: * is launched via broser plugin * starts windowed * connects over TLS it doesn't send monitor_config message after switch to fullscreen ("Automatically resize" is on). Version-Release number of selected component (if applicable): RHEL 6: spice-gtk-0.20-11.el6.x86_64 virt-viewer-0.5.6-8.el6.x86_64 Windows (at least 7 32b, XP) mingw-virt-viewer-0.5.6-15.el6_5 How reproducible: always Steps to Reproduce: 1. connect to the RHEV VM in default configuration, windowed 2. hit Shift+F11 3. Actual results: guest resolution stays as-is, monitor_config message is not sent at all Expected results: guest resolution gets resized to respective client monitor resolution Additional info: * manually launched client is not affected * client launched with .vv file is not affected * client launched via plugin but connecting over plaintext connection is not affected I'm wondering if this isn't 6.5.z material