summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Drop glib < 2.28 supportChristophe Fergeau2014-10-3111-327/+11
| | | | | | With el6 now shipping glib 2.28, there is no very good reason to keep support for older glib versions alive, especially as it will barely be tested.
* Add GStreamer 1.0 audio supportVictor Toso2014-10-313-6/+79
| | | | | | | | | | Based on Christophe Fergeau's patch. To enable audio with GStreamer 1.0: --with-audio=gstreamer1 There is only a few changes between those versions, worth mentioning: - audio capabilities "audio/x-raw,format=..." instead of "audio/x-raw-int,..." - appsink signal for new data changed from "new-buffer" to "new-sample"
* Always use #include "config.h"Christophe Fergeau2014-10-3030-53/+20
| | | | | | | gnulib 'make syntax-check' prohibits use of #ifdef HAVE_CONFIG_H so this commit removes it from where it's used. It also makes sure we always use the same syntax for including config.h (#include "config.h" VS #include <config.h>) as a consistent way of doing that is expected.
* Remove spice-mime.xml/spicy.desktopChristophe Fergeau2014-10-305-41/+0
| | | | | | They were never translated from .in files to actual files, and now it's clear we don't want to promote spicy as a first-class desktop application.
* Fix "can not" typo in commentChristophe Fergeau2014-10-301-1/+1
|
* Remove redundant use of constChristophe Fergeau2014-10-303-6/+6
| | | | | const guint16 const * has one extra 'const' which is removed by that commit
* Remove trailing whitespaceChristophe Fergeau2014-10-301-1/+1
|
* Remove blank lines at end of filesChristophe Fergeau2014-10-3011-16/+2
|
* Add missing (C) to Red Hat copyright lineChristophe Fergeau2014-10-301-1/+1
| | | | | gnulib's make syntax-check comes with a rule enforcing that Red Hat copyright lines contain both "(C)" and "Copyright".
* Add quoting around AC_DEFINE* first argumentChristophe Fergeau2014-10-301-14/+14
|
* build-sys: Don't use test -a/-oChristophe Fergeau2014-10-301-4/+4
| | | | | They are not portable, it's recommended to use test && test or test || test instead
* mailmap: add Dietmar MaurerMarc-André Lureau2014-10-301-0/+1
|
* build-sys: add some missing MAINTAINERCLEANFILESMarc-André Lureau2014-10-301-0/+2
|
* build-sys: generate gitignore in tests dirMarc-André Lureau2014-10-301-0/+2
|
* build-sys: change default libtool optionsMarc-André Lureau2014-10-301-1/+1
| | | | | - disable-static: it's quite uncommon to use static build of gtk libraries - win32-dll: the shared libs build cleanly for win32 already
* Regenerate symbol files with make update-symbol-filesv0.26Christophe Fergeau2014-10-292-35/+34
| | | | | | | | | | Some symbols were manually added to these files not in the right place (non-alphabetical order). This causes spurious diffs when trying to compare these files with the ones make update-symbol-files would generate. This commit syncs these file with the ones which are autogenerated to spot more easily differences between the file in git and the autogenerated one.
* Tell ctags to ignore G_GNUC_CONST in declarationsChristophe Fergeau2014-10-291-3/+3
| | | | | Without that, it will fail to parse: GType spice_uri_get_type(void) G_GNUC_CONST;
* Remove spice_gtk_session_sync_keyboard_modifiers from public headersChristophe Fergeau2014-10-292-1/+1
| | | | It's not meant to be exported as it's not listed in spice-gtk symbol map file.
* Add spice_session_get_proxy_uri to spice-glib-sym-fileChristophe Fergeau2014-10-291-0/+1
| | | | It was only added to map-file.
* Update spice-common submoduleChristophe Fergeau2014-10-291-0/+0
| | | | This picks up some warning fixes.
* Update NEWSChristophe Fergeau2014-10-291-0/+16
|
* Don't strip \0 from non-text clipboard dataChristophe Fergeau2014-10-291-3/+2
| | | | | | | | | | Commit a8f2e2d added recomputation of the length of clipboard data to strip the trailing \0 in order to avoid a Windows gtk+ bug. However it's doing it too for non-text data, which causes issues when copying images as they are very likely to contain \0 within their data. They will thus be truncated. This fixes https://bugzilla.redhat.com/show_bug.cgi?id=1154719
* Reindent block of code in clipboard_received_cbChristophe Fergeau2014-10-291-17/+19
| | | | | | This is in preparation for fixing a regression in image copy&paste. This commit only introduces a new (unused) block and reindent the corresponding code, it can easily be reviewed with git show -w
* build-sys: make vapigen silentMarc-André Lureau2014-10-291-2/+2
|
* build-sys: clean-up generated vapi filesMarc-André Lureau2014-10-291-0/+2
|
* build-sys: remove unnecessary BUILT_SOURCES ruleMarc-André Lureau2014-10-291-1/+0
|
* build-sys: add extra dependencies on symbols filesMarc-André Lureau2014-10-291-0/+8
| | | | Whenever the symbols files are modified, rebuild the library.
* build-sys: s/GLIB_VERSION/GLIB_SYMBOLSMarc-André Lureau2014-10-291-6/+6
|
* Fix macro for checking spice version numbersDaniel P. Berrange2014-10-271-1/+1
| | | | As it is for now, the micro number is never checked.
* gtk: hide cursor when ungrabbedMarc-André Lureau2014-10-272-4/+5
| | | | | | Let's avoid confusion of multiple pointers visible on the client desktop: hide the guest pointer if the spice client doesn't have the grab, display it again when the grab is taken back.
* gtk: keep cursor in the same place on ungrabMarc-André Lureau2014-10-271-1/+13
| | | | | | | | On ungrab, the transition from remote (server-side) cursor to host cursor makes it jump somewhere else rather than staying at the same place. Restore cursor position on ungrab to match with guest position. https://bugs.freedesktop.org/show_bug.cgi?id=85117
* Fix SndCodec leak in playback_handle_start()Christophe Fergeau2014-10-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | An audio SpiceChannel can get several times the 'start' message during its lifetime. If received multiple times (for example when rebooting a VM), this would lead to a SndCodec leak as reported by valgrind: ==7749== 27,036 (48 direct, 26,988 indirect) bytes in 1 blocks are definitely lost in loss record 11,418 of 11,440 ==7749== at 0x4A08946: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==7749== by 0x5772A9A: spice_malloc0 (mem.c:109) ==7749== by 0x5772D42: spice_malloc0_n (mem.c:173) ==7749== by 0x57FB3E2: snd_codec_create (snd_codec.c:267) ==7749== by 0x573774C: playback_handle_start (channel-playback.c:380) ==7749== by 0x5721E44: spice_channel_handle_msg (spice-channel.c:2859) ==7749== by 0x571ECB3: spice_channel_recv_msg (spice-channel.c:1877) ==7749== by 0x571F402: spice_channel_iterate_read (spice-channel.c:2114) ==7749== by 0x571F614: spice_channel_iterate (spice-channel.c:2152) ==7749== by 0x5720411: spice_channel_coroutine (spice-channel.c:2429) ==7749== by 0x575CD3A: coroutine_trampoline (coroutine_ucontext.c:63) ==7749== by 0x575C9F4: continuation_trampoline (continuation.c:55) ==7749== by 0x3898E47FEF: ??? (in /usr/lib64/libc-2.20.so) ==7749== by 0xAED547666C92C2FF: ??? ==7749== by 0xFFEFFF92F: ???
* m4: Update manywarnings from gnulibCole Robinson2014-10-101-76/+137
| | | | | | Fixes these noisy errors on Fedora 21: gcc: warning: switch '-Wmudflap' is no longer supported
* Add support to handle username when connecting with SASLFabiano Fidêncio2014-10-103-5/+44
| | | | | Based on a patch from Dietmar Maurer <dietmar@proxmox.com> http://lists.freedesktop.org/archives/spice-devel/2013-October/015138.html
* Add errors related to the SASL authFabiano Fidêncio2014-10-101-0/+4
| | | | | SPICE_CLIENT_ERROR_AUTH_* will be used to set more detailed errors with respect to the main channel event SPICE_CHANNEL_ERROR_AUTH.
* Add missing doc for SPICE_CLIENT_USB* errorsFabiano Fidêncio2014-10-101-0/+2
|
* Add "username" property to SpiceSessionDietmar Maurer2014-10-102-4/+54
|
* Don't report IO error on clean guest shutdownChristophe Fergeau2014-09-181-5/+12
| | | | | | | | | | | | | | | | Since commit 9cf9ca434, spice_channel_iterate() will report a SPICE_CHANNEL_ERROR_IO error to library users when SpiceChannel::has_error is set. In particular, when the server side closes its SPICE sockets because the VM is being shut down, an IO error will get reported. Prior to this change, a channel-closed event was reported on graceful VM shutdowns as there was a g_socket_condition_check() guarding the emission of the IO error signal. This commit readds the g_socket_condition_check() test, but only when SpiceChannel::has_error is set. This fixes https://bugs.freedesktop.org/show_bug.cgi?id=83692
* Fix -Wsign-comparePavel Grunt2014-09-181-5/+6
|
* channel-main: allow transferring multiple files at onceFabiano Fidêncio2014-09-181-27/+26
| | | | | Allow to drag and drop, from host to guest, more than one file at the same time.
* win-usb: Initialize GError before using itChristophe Fergeau2014-09-051-1/+1
| | | | | | | | | | | | | GError variables must be set to NULL before passing them to a function which might set them. This fixes the runtime warning reported in rhbz#1138195: (remote-viewer.exe:3896): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: handle_dev_change: Error getting device list from libusb: Other error [-99]
* xfer: send data message of size 0 for 0-size fileMarc-André Lureau2014-08-291-1/+3
| | | | | | | | | | Make sure we send a xfer data message for 0-size files. This avoid leaking file descriptiors in guest agent when copying such files. Reported-by: Cody Chan <int64ago@gmail.com> https://bugzilla.redhat.com/show_bug.cgi?id=1135099
* Wait to send monitor config until agent caps are receivedJonathon Jongsma2014-08-281-2/+1
| | | | | | | | | | | | | | | | | | | | | | When the first display is disabled and the vdagent is restarted in the guest, it sometimes becomes enabled. This appears to be caused by a race condition when an agent becomes connected. When the agent becomes connected, virt-viewer triggers a display update (spice_main_send_monitor_config()). This display update happens in a timeout handler, but the timeout interval is set to 0 (so it behaves basically like an idle handler). The race happens because spice_main_send_monitor_config() behaves slightly differently depending on the agent's capabilities. And sometimes the idle handler runs before the client and server have negotiated capabilities. In this case, we have to assume that the server does not support sparse monitor configurations. So instead of sending down an update where display #0 is off and display #1 is WxH, we send down an update that only a single display: display #0 is WxH. This results in the first display becoming enabled. To solve the issue, we wait until the agent negotiates capabilities before sending the display configuration message. Resolves: rhbz#1043782, rhbz#1032923
* win32: fix coroutine assertion when switching to TLS portMarc-André Lureau2014-08-211-0/+1
| | | | | | | | | | | | | Since v0.21-35-gbaa51c5, there are some new coroutine preconditions. The winfiber implementation can reach, when the structure isn't cleared, which happens when switching channel connection to TLS port and the coroutine is recycled. CRITICAL **: coroutine_yieldto: assertion '!to->exited' failed In a near future, it would be nice to use the safer implementation proposed for glib, see bgo#719362 (using a private copy)
* Use G_OS_WIN32 #define everywhereChristophe Fergeau2014-08-135-30/+33
| | | | | | Currently some parts of the windows specific code is checking for the WIN32 define, and other parts are checking G_OS_WIN32. This commit uses G_OS_WIN32 everywhere for consistency.
* keyboard: wrong defined macro for WIN32Cody Chan2014-08-131-1/+1
| | | | | | | | | On windows client, there's no effect for guest when enabling CAPS_LOCK/NUM_LOCK/SCROLL_LOCK on (because of the delay, guest may take the effect for several seconds). There's a wrong defined macro, then <modifiers> is ALWAYS 0, and the keyboard state of guest is synchronized with the state client by spice_gtk_session_sync_keyboard_modifiers_for_channel(...).
* Fix 'loose' typoChristophe Fergeau2014-08-131-2/+2
|
* Fix build with automake 1.14Christophe Fergeau2014-08-135-6/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building a source file from a different directory, automake 1.14 is warning that the automake option 'subdir-objects' must be used: automake: warnings are treated as errors gtk/Makefile.am:218: warning: source file '$(top_srcdir)/spice-common/common/sw_canvas.c' is in a subdirectory, gtk/Makefile.am:218: but option 'subdir-objects' is disabled automake: warning: possible forward-incompatibility. automake: At least a source file is in a subdirectory, but the 'subdir-objects' automake: automake option hasn't been enabled. For now, the corresponding output automake: object file(s) will be placed in the top-level directory. However, automake: this behaviour will change in future Automake versions: they will automake: unconditionally cause object files to be placed in the same subdirectory automake: of the corresponding sources. automake: You are advised to start using 'subdir-objects' option throughout your automake: project, to avoid future incompatibilities. autoreconf: automake failed with exit status: 1 This causes the build to fail because we are also using the -Werror automake option. Updating the spice-common submodule to git master fixes part of this issue as 7ea1cc5 'Fix generation of marshallers in VPATH builds' removed directory references from some source files. This commit removes the references to $(top_srcdir)/spice-common/common/sw_canvas.[ch] from gtk/Makefile.am. At this point, automake subdir-objects support does not seem to cope very well with source files which are not in relative subdirectories, see http://mytestbed.net/issues/1327 What is done instead is to add some local client_sw_canvas.[ch] files which will include the needed files from spice-common with the appropriate #define set (these sw_canvas.[ch] files are meant to be used as templates). This fixes https://bugs.freedesktop.org/show_bug.cgi?id=67304
* channel-display: Remove #ifdef SW_CANVAS_CACHEChristophe Fergeau2014-08-131-6/+0
| | | | | It's unconditionnally defined at build time in the global CPP flags, so the #ifdef SW_CANVAS_CACHE are always enabled and can be removed.
* Ensure '\0' is not part of text clipboard dataChristophe Fergeau2014-08-131-0/+9
| | | | | | | | | | | | | On Windows, with some versions of gtk+, GtkSelectionData::length will include the final '\0'. When a string with this trailing '\0' is pasted in some linux applications, it will be pasted as <NIL> or as an invisible character, which is unwanted. This commit ensures the length we send to the agent does not include any trailing '\0'. https://bugzilla.redhat.com/show_bug.cgi?id=1090122