4.2. SPICE Client

BZ#603435
Previously, SPICE client did not properly escape commas, which meant that SPICE could not be opened if a Distinguished Name (DN) contained a comma.

The relevant Replace() methods were fixed, which means that DNs that contain commas do not now prevent SPICE from opening.
BZ#611171
Support for additional client platforms and web browsers has been added to this release of SPICE. With this update, the following Linux-based platform and browser combinations are now supported: Mozilla Firefox on Red Hat Enterprise Linux 5.5, Mozilla Firefox on Red Hat Enterprise Linux 5.6 and Mozilla Firefox on Red Hat Enterprise Linux 6.0. All Linux platforms are supported for both the i386 and x86_64 architectures. The following Windows-based platform and browser combinations are now supported: Internet Explorer 7 on Windows XP (32-bit only), Internet Explorer 8 on Windows 7 (32-bit and 64-bit) and Internet Explorer 8 on Windows 2008 R2 (32-bit and 64-bit).
BZ#613071
Previously, Red Hat Enterprise Virtualization did not provide spice windows client x64 support for its admin and user portals.

Furthermore, users could not access the admin portal from a windows x64 client machine. This was due to the following: The admin portal used WPF (.net byte-code). By default, when accessed admin portal, Internet Explorer (x86 and x64 versions) runs x64 presentation hosts for creating ActiveX (which has to be installed via the MSI installer). Using x86 ActiveX was impossible without a hack requiring write access to the registry, which write access could not be guaranteed on all machines.

SPICE Client, libraries, ActiveX, CAB/MSI installer, admin and user portals and build-system have all been adapted to support both x86 and x64 clients. SPICE Client can now be launched from both x86 and x64 Internet Explorer sessions, both from admin portal and user portal.
BZ#613078
Previously, SPICE client did not have basic clipboard support. Attempts to copy from SPICE to the clipboard or to paste from the clipboard to SPICE failed. SPICE Client support for text clipboard copy/paste has been added. SPICE Client now allows copying from the SPICE window to the clipboard and pasting from the clipboard to the SPICE window.
BZ#648137
Red Hat Enterprise Virtualization now includes an x64 MSI installer for SPICE Client.
BZ#661637
Previously, SPICE Client (Windows) would disconnect during a migration. SPICE Client no longer disconnects during a migration.
BZ#667398
SPICE client displays a watermark when ALT is pressed for six seconds or more, which informs you that SPICE client is sending the ALT keystroke along with any other input keystroke.
BZ#667689
Previously, video in Spice Client would sometimes flip upside-down when connecting to a guest from a Windows client. This was because video streams in Linux are oriented top-down, whereas gdi_canvas_put_image receives video streams in a down-top orientation. 

The function create_bitmap was altered so that it now considers the orientation of the video stream, and this issue no longer presents.
BZ#667777
Previously, logging into and then out of a "user" account on Windows7 x86 would cause the local mouse to stop responding, though no error would appear in the Event-Viewer and the associated service was reporting as up. A workaround was available: restarting Red Hat Enterprise Virtualization Spice Agent would solve the problem.

Logging into an then out of a "user" account on Windows7 x86 no longer causes the local mouse to stop responding.
BZ#668980
Previously, SPICE ActiveX (SpiceX) failed to connect to SPICE's client-named pipe, which terminated the client and returned an error code. This was because Windows 7 did not include the backend server in IE's list of trusted sites.

SPICE Client now sets the named pipe to low-integrity on Windows7, which allows SPICE ActiveX to connect successfully to SPICE Client even if the backend server is not in IE's list of trusted sites.

BZ#672460
An error in the pthread library (wspice/lib64/pthreadVC2*.lib) used to result in occasional unexpected behavior, including crashes of the SPICE client. This library has been updated, and these issues no longer present.
BZ#673973
Previously, you were unable to open the SPICE console from the user portal if VDA (vdagent) was not running.

It is now possible to open the SPICE console from the user portal if VDA (vdagent) is not running.
BZ#674532
Previously in Red Hat Enterprise Virtualization, it was impossible to get out of fullscreen mode by pressing F11. This was because WM_KEYUP events were missing for SHIFT and F11. 

GetAsyncKeyState is now called, which sets the KEYUP value correctly so that pressing SHIFT+F11 allows you to leave fullscreen mode.
BZ#693104
A new rpm that is required to install Spice client msi x86 on the Red Hat Enterprise Virtualization Manager server on Red Hat Enterprise Linux 6 is now available. It contains the Spice client x86 components built in brew-win.
BZ#693106
A new rpm that is required to install Spice client MSI x64 on the Red Hat Enterprise Virtualization Manager server on Red Hat Enterprise Linux 6 is now available. It contains the Spice client x64 components built in brew-win.
BZ#701111
SPICE client is now compiled with ASLR protection.
BZ#711979
A previous version of the SpiceClient executable file was misnumbered, and this mistake prevented proper file replacement during the upgrade to the latest version. SPICE versioning has now been made correct and consistent, and upgrades now replace files in the correct manner.
BZ#738270
Previously in Red Hat Enterprise Virtualization, if migration time was greater than ticket_expiration_time, SPICE would fail to connect to the target.

When migration completed, SPICE client (spice-client-win) disconnected from the migration source and then connected to the target. SPICE client knew nothing about the migration until after the migration was successfully completed.

SPICE client now makes a connection to the target before the migration begins (when client_migrate_info is run). SPICE client remains actively connected to the source. If the migration completes successfully, the client disconnects from the source and begins communicating with the target. If the migration fails, the client disconnects from the target. From the time client_migrate_info is run to the time the migration completes, the source server handles no new client connection requests.