Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1038726

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-viewerAssignee: Marc-Andre Lureau <marcandre.lureau>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.5CC: 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:
Embargoed:
Bug Depends On:    
Bug Blocks: 1009648, 1038727    
Attachments:
Description Flags
Patch used in RHEV none

Description David Jaša 2013-12-05 16:49:43 UTC
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

Comment 1 David Jaša 2013-12-05 16:52:26 UTC
mingw-virt-viewer bug: bug 1038727

Comment 2 Marc-Andre Lureau 2013-12-12 16:18:46 UTC
it's funny how I failed to imagine the reason, but I can indeed reproduce...
let see

Comment 3 Marc-Andre Lureau 2013-12-12 22:42:46 UTC
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.

Comment 4 David Jaša 2013-12-16 18:33:18 UTC
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>

Comment 5 Marc-Andre Lureau 2013-12-16 19:01:46 UTC
(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.

Comment 6 Marc-Andre Lureau 2014-03-12 14:37:45 UTC
the fix is the same as bug 1069735

Comment 7 Christophe Fergeau 2014-04-29 15:33:27 UTC
Created attachment 890850 [details]
Patch used in RHEV

This was fixed in RHEV in virt-viewer with this non-upstream patch.

Comment 9 CongDong 2014-05-19 11:40:33 UTC
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.

Comment 10 Marc-Andre Lureau 2014-06-03 16:02:35 UTC
*** Bug 1082140 has been marked as a duplicate of this bug. ***

Comment 12 CongDong 2014-06-10 03:22:12 UTC
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?

Comment 13 CongDong 2014-07-15 02:47:04 UTC
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.

Comment 14 Marc-Andre Lureau 2014-07-15 10:39:03 UTC
(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.

Comment 15 CongDong 2014-07-24 09:29:07 UTC
(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.

Comment 16 errata-xmlrpc 2014-10-14 06:30:30 UTC
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