From 7e1e90e7f350eaca35213b619d6f9bfd7e903933 Mon Sep 17 00:00:00 2001 From: Salvatore Bonaccorso Date: Fri, 26 Oct 2018 16:52:24 +0100 Subject: [PATCH] Import spice-gtk_0.33-3.3+deb9u1.debian.tar.xz [dgit import tarball spice-gtk 0.33-3.3+deb9u1 spice-gtk_0.33-3.3+deb9u1.debian.tar.xz] --- changelog | 450 ++++++++++++++++++ compat | 1 + control | 153 ++++++ copyright | 221 +++++++++ gir1.2-spice-client-glib-2.0.install | 1 + gir1.2-spice-client-gtk-2.0.install | 1 + gir1.2-spice-client-gtk-3.0.install | 1 + libspice-client-glib-2.0-8.install | 2 + libspice-client-glib-2.0-8.symbols | 197 ++++++++ libspice-client-glib-2.0-dev.install | 11 + libspice-client-gtk-3.0-5.install | 1 + libspice-client-gtk-3.0-5.symbols | 28 ++ libspice-client-gtk-3.0-dev.install | 6 + .../Fix-flexible-array-buffer-overflow.patch | 68 +++ ...lipboard_Fix_crash_by_handling_error.patch | 40 ++ .../explicitly-enable-subdir-objects.patch | 50 ++ patches/series | 6 + patches/ssl-Rework-our-custom-BIO-type.patch | 121 +++++ ...-creating-our-own-X509_LOOKUP_METHOD.patch | 71 +++ ...ors-rather-than-direct-struct-access.patch | 193 ++++++++ rules | 90 ++++ source/format | 1 + spice-client-glib-usb-acl-helper.install | 2 + spice-client-glib-usb-acl-helper.postinst | 7 + spice-client-glib-usb-acl-helper.postrm | 7 + spice-client-gtk.install | 5 + spice-client-gtk.manpages | 3 + spicy-screenshot.1 | 66 +++ spicy-stats.1 | 62 +++ spicy.1 | 70 +++ watch | 3 + 31 files changed, 1938 insertions(+) create mode 100644 changelog create mode 100644 compat create mode 100644 control create mode 100644 copyright create mode 100644 gir1.2-spice-client-glib-2.0.install create mode 100644 gir1.2-spice-client-gtk-2.0.install create mode 100644 gir1.2-spice-client-gtk-3.0.install create mode 100644 libspice-client-glib-2.0-8.install create mode 100644 libspice-client-glib-2.0-8.symbols create mode 100644 libspice-client-glib-2.0-dev.install create mode 100644 libspice-client-gtk-3.0-5.install create mode 100644 libspice-client-gtk-3.0-5.symbols create mode 100644 libspice-client-gtk-3.0-dev.install create mode 100644 patches/Fix-flexible-array-buffer-overflow.patch create mode 100644 patches/debian_843471-clipboard_Fix_crash_by_handling_error.patch create mode 100644 patches/explicitly-enable-subdir-objects.patch create mode 100644 patches/series create mode 100644 patches/ssl-Rework-our-custom-BIO-type.patch create mode 100644 patches/ssl-Stop-creating-our-own-X509_LOOKUP_METHOD.patch create mode 100644 patches/ssl-Use-accessors-rather-than-direct-struct-access.patch create mode 100755 rules create mode 100644 source/format create mode 100644 spice-client-glib-usb-acl-helper.install create mode 100644 spice-client-glib-usb-acl-helper.postinst create mode 100644 spice-client-glib-usb-acl-helper.postrm create mode 100644 spice-client-gtk.install create mode 100644 spice-client-gtk.manpages create mode 100644 spicy-screenshot.1 create mode 100644 spicy-stats.1 create mode 100644 spicy.1 create mode 100644 watch diff --git a/changelog b/changelog new file mode 100644 index 0000000..fc8326c --- /dev/null +++ b/changelog @@ -0,0 +1,450 @@ +spice-gtk (0.33-3.3+deb9u1) stretch; urgency=medium + + * Non-maintainer upload. + * Fix flexible array buffer overflow (CVE-2018-10873) (Closes: #906316) + + -- Salvatore Bonaccorso Fri, 26 Oct 2018 17:52:24 +0200 + +spice-gtk (0.33-3.3) unstable; urgency=medium + + * Non-maintainer upload. + * debian/rules: delete generated files to ensure they're re-generated + from source (Closes: #797855). + * Replace OpenSSL 1.1 compatibility patch with the version applied + upstream (Closes: #851127). + * debian/copyright: fix empty short license field (spotted by Lintian). + + -- intrigeri Sat, 14 Jan 2017 11:34:36 +0000 + +spice-gtk (0.33-3.2) unstable; urgency=medium + + * Non-maintainer upload. + * debian_843471-clipboard_Fix_crash_by_handling_error.patch: + new patch, cherry-picked from upstream (Closes: #843471). + + -- intrigeri Sun, 25 Dec 2016 08:30:43 +0000 + +spice-gtk (0.33-3.1) unstable; urgency=medium + + * Non-maintainer upload. + * Fix FTBFS with OpenSSL 1.1, patch by Sebastian Andrzej Siewior (Closes: + #828554). + + -- Andrey Rahmatullin Sat, 10 Dec 2016 20:06:07 +0500 + +spice-gtk (0.33-3) unstable; urgency=medium + + * debian/control: + - Add gstreamer1.0-tools, gstreamer1.0-libav and gstreamer1.0-plugins-* + to Build-Depends (Closes: #841932) + - Add gstreamer1.0-libav and gstreamer1.0-plugins-* to + libspice-client-glib-2.0-8 Depends + * debian/rules + - Remove dh_strip on python-spice-client-gtk, package already removed + * Install missed docs + + -- Liang Guo Tue, 25 Oct 2016 10:00:32 +0800 + +spice-gtk (0.33-2) unstable; urgency=medium + + * debian/control: + - Add libphodav-2.0-dev to Build-Depends, enable webdav + support (Closes: #841764) + - Add libgstreamer1.0-dev and libgstreamer-plugins-base1.0-dev + to Build-Depends, enable gstreamer support + + -- Liang Guo Mon, 24 Oct 2016 20:06:17 +0800 + +spice-gtk (0.33-1) unstable; urgency=medium + + * New upstream release (Closes: #840603) + * debian/control: + - Update Build-Depends on spice-protocol to 0.12.12 + * debian/patches: + - Refresh explicitly-enable-subdir-objects.patch + * Refresh libspice-client-glib-2.0-8.symbols + + -- Liang Guo Fri, 07 Oct 2016 23:14:27 +0800 + +spice-gtk (0.32-1) unstable; urgency=medium + + * New upstream release + * Update debian/copyright + * debian/control: + - Update Build-Depends libglib2.0-dev and libspice-protocol-dev + version required + - Remove Build-Depends on libgtk2.0-dev + - Bump Standards-Version to 3.9.8 (no changes) + - Use secure uri in vcs-* + * Remove libspice-client-gtk-2.0-* and python-spice-client-gtk, + upstream don't support gtk2 anymore + * Refresh explicitly-enable-subdir-objects.patch + * Bump SONAME and package name of libspice-client-gtk-3.0 + + -- Liang Guo Fri, 01 Jul 2016 19:32:58 +0800 + +spice-gtk (0.30-1) unstable; urgency=low + + * New upstream release (Closes: #806294, #808504) + * Enable python checks + * Update debian/copyright, remove license about upstream + removed files + * Spice-protocol is splited to sperate package, add build-depends on + libspice-protocol-dev + * Refresh debian/patches/explicitly-enable-subdir-objects.patch + * Refresh libspice-client-glib-2.0-8.symbols + * switch to automatic dbgsym package. + + -- Liang Guo Fri, 25 Dec 2015 14:47:11 +0800 + +spice-gtk (0.29-1) unstable; urgency=medium + + * New upstream release + * Update explicitly-enable-subdir-objects.patch, source directory changed from + gtk to src + * Update debian/copyright, source directory changed from gtk to src + + -- Liang Guo Sat, 29 Aug 2015 11:44:44 +0800 + +spice-gtk (0.28-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * Drop libspice-server-dev dependencies from libspice-client-glib-2.0-dev + it's not needed and block the migration to testing because it's not + available on some architectures (Closes: #792407) + * Enable smartcard support (Closes: #786835) + + -- Laurent Bigonville Mon, 24 Aug 2015 20:57:27 +0200 + +spice-gtk (0.28-1) unstable; urgency=low + + * New upstream release + * Update debian/copyright + * Add build-depends on gtk-doc + * Enable LZ4 support + * Update libspice-client-glib-2.0-8.symbols + * Update spice-client-glib-usb-acl-helper description + * Added spice-gtk-dbg package (Closes:783463) + + -- Liang Guo Sat, 25 Apr 2015 14:29:58 +0800 + +spice-gtk (0.26-2) experimental; urgency=medium + + * build on all archtecture,not only linux + + -- Liang Guo Wed, 12 Nov 2014 14:38:12 +0800 + +spice-gtk (0.26-1) experimental; urgency=medium + + * New upstream release + * Build on all archtecture (Closes: 747082) + * Remove debian/patches/remove-srcdir-or-top-srcdir-in-makefile-am.patch, + Applied upstream + * Bump Standards-Version to 3.9.6 (no changes) + * Update debian/copyright, remove license about upstream + removed files. + + -- Liang Guo Mon, 10 Nov 2014 19:15:57 +0800 + +spice-gtk (0.25-1) unstable; urgency=medium + + * New upstream release + * Refresh debian/copyright, new file added + * debian/patches: + - - remove-srcdir-or-top-srcdir-in-makefile-am.patch, refresh + - explicitly-enable-subdir-objects.patch, refresh + - do-not-build-tests.patch, remove, upstream provide option to + disable tests build + * Add build-depends on libsoup2.4-dev + * Refresh libspice-client-glib-2.0-8.symbols + + -- Liang Guo Wed, 25 Jun 2014 07:53:38 +0800 + +spice-gtk (0.23-1) unstable; urgency=low + + * New upstream release + * Refresh debian/copyright, new file added + * debian/patches: + - make-celt-to-be-optional.patch, remove, upstream + have similar patch + - remove-srcdir-or-top-srcdir-in-makefile-am.patch, refresh + * Enable opus + + -- Liang Guo Sun, 16 Feb 2014 21:05:01 +0800 + +spice-gtk (0.22-0nocelt2) unstable; urgency=medium + + * Enable dbus support (Closes: 737663) + * Remove build-depends on libspice-protocol-dev + and libspice-server-dev, not needed. + * Add build-depends on libssl-dev + + -- Liang Guo Wed, 05 Feb 2014 11:50:40 +0800 + +spice-gtk (0.22-0nocelt1) unstable; urgency=low + + * New upstream release + * Bump Standards-Version to 3.9.5 (no changes) + * debian/patches: + - make-celt-to-be-optional.patch, refresh + - explicitly-enable-subdir-objects.patch, refresh + - remove-srcdir-or-top-srcdir-in-makefile-am.patch, refresh + - fix-usbredir-being-broken-since-commit-159c6ebf.patch, remove, + applied upstream + - palette-regression.patch, remove, applied upstream + - do-not-build-tests.patch, add + * Refresh *.symbols + + -- Liang Guo Sun, 19 Jan 2014 10:59:06 +0800 + +spice-gtk (0.21-0nocelt3) unstable; urgency=low + + * debian/atches: + - palette-regression.patch, add, (Closes: 727707) + + -- Liang Guo Sat, 09 Nov 2013 00:18:33 +0800 + +spice-gtk (0.21-0nocelt2) unstable; urgency=low + + * debian/patches: + - fix-usbredir-being-broken-since-commit-159c6ebf.patch, + add, (Closes: 726292) + + -- Liang Guo Fri, 18 Oct 2013 17:40:05 +0800 + +spice-gtk (0.21-0nocelt1) unstable; urgency=low + + * New upstream release (Closes: 724473) + * debian/patches: + - make-celt-to-be-optional.patch, refresh + - add-spice_channel_string_to_type-to-map-files.patch, + remove, applied upstream + - explicitly-enable-subdir-objects.patch, new, or + compile with automake 1.14 will fail + - remove-srcdir-or-top-srcdir-in-makefile-am.patch, new. + * Refresh debian/libspice-client-gtk-{2,3}.0-4.symbols + * set spice-client-glib-usb-acl-helper replaces and breaks + libspice-client-glib-2.0-1, which is in wheezy + (Closes: #718962, #722533) + + -- Liang Guo Thu, 26 Sep 2013 09:25:56 +0800 + +spice-gtk (0.20-0nocelt3) unstable; urgency=low + + * set spice-client-glib-usb-acl-helper replaces + libspice-client-glib-2.0-8 too (Closes: #718962) + + -- Liang Guo Thu, 08 Aug 2013 00:18:19 +0800 + +spice-gtk (0.20-0nocelt2) unstable; urgency=low + + * set spice-client-glib-usb-acl-helper breaks + libspice-client-glib-2.0-8 (<< 0.20-0nocelt1) (Closes: #718962) + * move libspice-client-glib-2.0-8.post* to + spice-client-glib-usb-acl-helper.post* (Closes: #718964,#718986) + + -- Liang Guo Wed, 07 Aug 2013 22:04:28 +0800 + +spice-gtk (0.20-0nocelt1) unstable; urgency=low + + * New upstream release (Closes: 717718) + * Remove depends on libvala-0.16-dev (Closes: 709694) + * Bump Standards-Version to 3.9.4 + * debian/control: + - Bump Standards-Version to 3.9.4 (no changes) + - Update VCS-* to use canonical URIs + - Remove conflicts on old ABI (Closes: 712587) + * Refresh libspice-client-glib-2.0-8.symbols + * debian/patches: + - make-celt-to-be-optional.patch, refresh + - add-spice_channel_string_to_type-to-map-files.patch, add + * Split usb acl helper to separate package (Closes: 704525) + + -- Liang Guo Sat, 03 Aug 2013 01:33:13 +0800 + +spice-gtk (0.19-0nocelt3) unstable; urgency=low + + * Switch from valac-0.18 to valac (>= 0.18) (Closes: #709036) + + -- Liang Guo Sun, 26 May 2013 13:10:16 +0800 + +spice-gtk (0.19-0nocelt2) unstable; urgency=low + + * Upload to unstable + * Remove clearenv-in-usb-acl-helper.patch, applied upstream + * Switch from valac-0.16 to valac-0.18 (Closes: #707464) + + -- Liang Guo Sun, 12 May 2013 18:54:51 +0800 + +spice-gtk (0.19-0nocelt1exq) experimental; urgency=low + + * New upstream release + * Rename spicy-snapshot to spicy-screenshot, upstream + had rename snappy to spicy-screenshot + * Optimize debian/rules + * Set spice-client-gtk depends on the same version of + libspice-client-glib and libspice-client-gtk (Closes: #703413) + * Set spice-client-gtk depends on libusbredirhost1 (>= 0.6) + * Refresh libspice-client-glib-2.0-8.symbols + + -- Liang Guo Thu, 11 Apr 2013 23:30:35 +0800 + +spice-gtk (0.18-0nocelt1exp) experimental; urgency=low + + * New upstream release (Closes: #700562) + * Refresh debian/patches/make-celt-to-be-optional.patch + * Refresh debian/libspice-client-glib-2.0-8.symbols + + -- Liang Guo Sat, 02 Mar 2013 08:34:12 +0800 + +spice-gtk (0.16-0nocelt1exp) experimental; urgency=low + + * New upstream release + * Refresh debian/libspice-client-glib-2.0-8.symbols + * Refresh debian/patches/make-celt-to-be-optional.patch + + -- Liang Guo Sat, 12 Jan 2013 20:17:31 +0800 + +spice-gtk (0.14-1) experimental; urgency=low + + * New upstream release + * debian/patches: + - Refresh make-celt-to-be-optional.patch + * Refresh debian/*.symbols + + -- Liang Guo Wed, 10 Oct 2012 12:44:10 +0800 + +spice-gtk (0.13-1) experimental; urgency=low + + * New upstream release + * debian/patches: + - Remove fix-parsing-uri-query.patch, applied upstream + - Remove fix-spice-audio-binding.patch, applied upstream + - Refresh make-celt-to-be-optional.patch + * Bump SONAME and package name + * Refresh symbols + + -- Liang Guo Tue, 04 Sep 2012 14:15:17 +0800 + +spice-gtk (0.12-5) unstable; urgency=high + + * Add patch clearenv-in-usb-acl-helper.patch (Closes: #689155) + + -- Liang Guo Mon, 01 Oct 2012 21:30:21 +0800 + +spice-gtk (0.12-4) unstable; urgency=low + + * Correct version problem in *.pc (Closes: #680290) + + -- Liang Guo Mon, 09 Jul 2012 00:36:14 +0800 + +spice-gtk (0.12-3) unstable; urgency=low + + * Add patch make-celt-to-be-optional.patch + * Disable celt + + -- Liang Guo Fri, 29 Jun 2012 01:37:37 +0800 + +spice-gtk (0.12-2) unstable; urgency=low + + * Enable usb redirect (Closes: #677662) + * Switch to vala 0.16 (Closes: #675665) + * Enable multiarch for libspice-client-glib-2.0-1, + libspice-client-gtk-2.0-1, libspice-client-gtk-3.0-1 + * Build with hardening flags + * Use dpkg-statoverride to handle setuid bits + + -- Liang Guo Fri, 25 May 2012 21:52:45 +0800 + +spice-gtk (0.12-1) unstable; urgency=low + + * New upstream release + * Update debian/copyright, file moved + - common -> spice-common/common + - spice-protocol -> spice-common/spice-protocol + * debian/patches: + - Refresh debian/patches/remove-libjpeg-turbo-warning.patch + - Add fix-parsing-uri-query.patch + - Add fix-spice-audio-binding.patch + * Refresh debian/libspice-client-glib-2.0-1.symbols, new function added + + -- Liang Guo Thu, 03 May 2012 09:45:49 +0800 + +spice-gtk (0.11-1) unstable; urgency=low + + * New upstream release (Closes: #667569) + * Update debian/copyright, new file added + * Bump Standards-Version to 3.9.3, no changes needed + * Refresh debian/libspice-client-glib-2.0-1.symbols + * Update debian/rules, build spice-gtk in a subdirectory + * Include missed .deps and .vapi files in libspice-client-gtk-2.0-dev + * Add libtext-csv-perl to Build-Depends + + -- Liang Guo Fri, 06 Apr 2012 21:22:13 +0800 + +spice-gtk (0.9-1) unstable; urgency=low + + [ Jeremy Bicha ] + * New upstream release. + - add USB redirection support, see Hans comments in the log and that + post for details: http://hansdegoede.livejournal.com/11084.html + - introduce SpiceGtkSession to deal with session-wide Gtk events, such + as clipboard, instead of doing it per display + - many cursor and keyboard handling improvements + - handle the new "semi-seamless" migration + - support new Spice mini-headers + - better coroutines: fibers on windows & jmp on linux + - add Vala vapi bindings generation + - Add command line options for setting the cache size and the glz + window size + - Add a USB device selection widget to libspice-client-gtk + - many bug fixes and code improvements + * Update symbols and bump libspice-client-glib-2.0 soname back to 1 + * Enable vala bindings + * debian/control: + - Build-depend on libusb-1.0, libgudev, valac and libvala-dev + - Bump build-depends on spice-protocol to 0.10.1 + * debian/rules: Disable usbredir support since the library isn't in + Debian yet + + [ Liang Guo ] + * debian/copyright: + - Add gtk/coroutine_winfibers.c + - Add gtk/spice-client-glib-usb-acl-helper.c + - Remove common/win/my_getopt-1.5/*, not in upstream any more + * debian/rules: + - Remove vapi/Makefile in clean target + * debian/control: + - Replace libspice-client-glib-2.0-4 with libspice-client-glib-2.0-1 + + -- Liang Guo Wed, 01 Feb 2012 14:38:05 +0800 + +spice-gtk (0.7-3) unstable; urgency=low + + * Enable introspection support + * Don't lock into particular python version (Closes: #639936) + * Add libpixman-1-dev, libspice-server-dev, libspice-protocol-dev + and libssl-dev to libspice-client-glib-2.0-dev Depends (Closes: #640138) + * Add libgtk2.0-dev and libspice-client-glib-2.0-dev to + libspice-client-gtk-2.0-dev Depends + * Add libgtk-3-dev and libspice-client-glib-2.0-dev to + libspice-client-gtk-3.0-dev Depends (Closes: #640136) + * Update debian/copyright fix some lintian warning + * Use dh_python2 to handle python module (Closes: #644090) + + -- Liang Guo Fri, 07 Oct 2011 22:25:53 +0800 + +spice-gtk (0.7-2) unstable; urgency=low + + * Rename snappy to spicy-snapshot (Closes: #637983) + * Remove spice-protocol.vapi from libspice-client-gtk-2.0-dev + (Closes: #637982) + * Check only versions start with number, ignore spice-gtk-LATEST.tar.bz2 + + -- Liang Guo Tue, 16 Aug 2011 18:24:32 +0800 + +spice-gtk (0.7-1) unstable; urgency=low + + * Initial release (Closes: #632866) + + -- Liang Guo Sun, 14 Aug 2011 15:36:28 +0800 diff --git a/compat b/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/compat @@ -0,0 +1 @@ +9 diff --git a/control b/control new file mode 100644 index 0000000..9b1bd46 --- /dev/null +++ b/control @@ -0,0 +1,153 @@ +Source: spice-gtk +Section: misc +Priority: optional +Maintainer: Liang Guo +Build-Depends: + debhelper (>= 9), + libpixman-1-dev (>= 0.17.7), + libssl-dev, + libgtk-3-dev, + libglib2.0-dev (>= 2.36), + libgudev-1.0-dev, + libcairo2-dev (>= 1.2.0), + libpulse-dev, + libusb-1.0-0-dev, + valac (>= 0.18), + python-all, + python-six, + python-gtk2-dev (>= 2.0.0), + python-pyparsing, + intltool, + libsasl2-dev, + libjpeg-dev, + gobject-introspection, + libgirepository1.0-dev, + gir1.2-gtk-2.0, + libtext-csv-perl, + libusbredirhost-dev (>= 0.6), + libacl1-dev, + libpolkit-agent-1-dev, + libpolkit-gobject-1-dev, + dpkg-dev (>= 1.16.1~), + libdbus-glib-1-dev, + libopus-dev, + libsoup2.4-dev, + gtk-doc-tools (>= 1.14), + liblz4-dev, + libcacard-dev (>= 0.1.2), + libspice-protocol-dev (>= 0.12.12), + libphodav-2.0-dev, + libgstreamer1.0-dev, + libgstreamer-plugins-base1.0-dev, + gstreamer1.0-tools, + gstreamer1.0-plugins-bad, + gstreamer1.0-plugins-base, + gstreamer1.0-plugins-good, + gstreamer1.0-libav, +Standards-Version: 3.9.8 +X-Python-Version: >= 2.5 +Homepage: http://www.spice-space.org/ +Vcs-Git: https://anonscm.debian.org/git/collab-maint/spice-gtk.git +Vcs-Browser: https://anonscm.debian.org/gitweb/?p=collab-maint/spice-gtk.git + +Package: spice-client-gtk +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, + libspice-client-glib-2.0-8 (= ${binary:Version}), + libspice-client-gtk-3.0-5 (= ${binary:Version}), + libusbredirhost1 (>= 0.6), + libusbredirparser1 (>= 0.6) +Description: Simple clients for interacting with SPICE servers + Simple clients for interacting with SPICE servers. This package + includes: + . + spicy - GTK+ based SPICE client tool + spicy-screenshot - SPICE screen-shot capture tool + spicy-stats - SPICE connection details display tool + +Package: spice-client-glib-usb-acl-helper +Architecture: any +Multi-Arch: foreign +Depends: ${shlibs:Depends}, ${misc:Depends}, +Replaces: libspice-client-glib-2.0-8 (<< 0.20-0nocelt1), libspice-client-glib-2.0-1 +Breaks: libspice-client-glib-2.0-8 (<< 0.20-0nocelt1), libspice-client-glib-2.0-1 +Description: Helper tool to validate usb ACLs + When passthrough USB devices to VMs, spice-client-glib-usb-acl-helper + is called to validate usb ACLs via policykit policy + +Package: libspice-client-glib-2.0-8 +Section: libs +Architecture: any +Multi-Arch: same +Pre-Depends: ${misc:Pre-Depends} +Depends: ${shlibs:Depends}, ${misc:Depends}, spice-client-glib-usb-acl-helper, + gstreamer1.0-plugins-bad, gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, + gstreamer1.0-libav +Description: GObject for communicating with Spice servers (runtime library) + libspice-glib4 provides glib objects for spice protocol + decoding and surface rendering + . + This package provide the runtime library. + +Package: gir1.2-spice-client-glib-2.0 +Section: introspection +Architecture: any +Pre-Depends: ${misc:Pre-Depends} +Depends: ${misc:Depends}, ${gir:Depends} +Description: GObject for communicating with Spice servers (GObject-Introspection) + libspice-glib4 provides glib objects for spice protocol + decoding and surface rendering + . + This package contains the GObject-introspection data in binary typelib format. + +Package: libspice-client-glib-2.0-dev +Section: libdevel +Architecture: any +Depends: libspice-client-glib-2.0-8 (= ${binary:Version}), + gir1.2-spice-client-glib-2.0 (= ${binary:Version}), + libpixman-1-dev (>= 0.17.7), + libspice-protocol-dev, + libssl-dev, + ${misc:Depends} +Description: GObject for communicating with Spice servers (development files) + libspice-glib4 provides glib objects for spice protocol + decoding and surface rendering + . + This package provide the development headers. + +Package: libspice-client-gtk-3.0-5 +Section: libs +Architecture: any +Multi-Arch: same +Pre-Depends: ${misc:Pre-Depends} +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: GTK3 widget for SPICE clients (runtime library) + libspice-gtk3 provides gtk3 widget to show spice display + and accept user input. + . + This package provide the runtime library. + +Package: gir1.2-spice-client-gtk-3.0 +Section: introspection +Architecture: any +Depends: ${misc:Depends}, ${gir:Depends} +Description: GTK3 widget for SPICE clients (GObject-Introspection) + libspice-gtk3 provides gtk3 widget to show spice display + and accept user input. + . + This package contains the GObject-introspection data in binary typelib format. + +Package: libspice-client-gtk-3.0-dev +Section: libdevel +Architecture: any +Depends: libspice-client-gtk-3.0-5 (= ${binary:Version}), + gir1.2-spice-client-gtk-3.0 (= ${binary:Version}), + libgtk-3-dev (>= 2.91.3), + libspice-client-glib-2.0-dev, + ${misc:Depends} +Description: GTK3 widget for SPICE clients (development files) + libspice-gtk3 provides gtk3 widget to show spice display + and accept user input. + . + This package provide the development headers. + diff --git a/copyright b/copyright new file mode 100644 index 0000000..9b030a0 --- /dev/null +++ b/copyright @@ -0,0 +1,221 @@ +Format: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=174 +Upstream-Name: spice-gtk +Source: http://www.spice-space.org/ + +Files: * +Copyright: Copyright (C) 2009-2016 Red Hat, Inc. +License: LGPL-2.1+ + +Files: debian/* +Copyright: Copyright (C) 2011-2016 Liang Guo +License: LGPL-2.1+ + +Files: spice-common/common/lz_compress_tmpl.c + spice-common/common/lz.c + spice-common/common/lz_decompress_tmpl.c +Copyright: Copyright 2009 Red Hat, Inc. and/or its affiliates. + Copyright (C) 2005, 2006, 2007 Ariya Hidayat (ariya@kde.org) +License: LGPL-2.1+ and MIT + +Files: spice-common/common/draw.h spice-common/common/messages.h +Copyright: Copyright (C) 2009, 2010 Red Hat, Inc. +License: BSD-3-clause + +Files: spice-common/common/lz.h +Copyright: Copyright 2009-2011 Red Hat, Inc. and/or its affiliates +License: MIT +Comment: No copyright holder in file header + +Files: src/spice-grabsequence.c +Copyright: Copyright (C) 2010 Daniel P. Berrange +License: LGPL-2.0+ + +Files: src/gio-coroutine.c src/gio-coroutine.h +Copyright: Copyright (C) 2010 Red Hat, Inc. + Copyright (C) 2006 Anthony Liguori + Copyright (C) 2009-2010 Daniel P. Berrange +License: LGPL-2.0+ + +Files: src/vncdisplaykeymap.c src/spice-grabsequence.h + src/vncdisplaykeymap.h +Copyright: Copyright (C) 2006, 2008 Anthony Liguori + Copyright (C) 2009-2010 Daniel P. Berrange +License: LGPL-2.0+ + +Files: src/continuation.c src/continuation.h src/coroutine_gthread.c + src/coroutine.h src/coroutine_ucontext.c +Copyright: Copyright (C) 2006 Anthony Liguori +License: LGPL-2.0+ + +Files: src/coroutine_winfibers.c +Copyright: Copyright (C) 2011 Marc-André Lureau +License: LGPL-2.0+ + +Files: src/channel-display-gst.c +Copyright: Copyright (C) 2015-2016 CodeWeavers, Inc +License: LGPL-2.1+ + +Files: src/spice-client-glib-usb-acl-helper.c +Copyright: Copyright (C) 2011,2012 Red Hat, Inc. + Copyright (C) 2009 Kay Sievers +License: GPL-2.0+ + +Files: tests/mock-acl-helper.c +Copyright: Copyright (C) 2016 Red Hat, Inc. +License: GPL-2.0+ + +Files: spice-common/common/snd_codec.* +Copyright: Copyright (C) 2013 Jeremy White +License: LGPL-2.1+ + +Files: src/wocky-http-proxy.c +Copyright: Copyright (C) 2010 Collabora, Ltd. + Copyright (C) 2014 Red Hat, Inc. +License: LGPL-2.1+ + +Files: src/wocky-http-proxy.h +Copyright: Copyright (C) 2010 Collabora, Ltd. +License: LGPL-2.1+ + +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, see . + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-2.1". + +License: LGPL-2.0+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.0 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + . + On Debian systems, the complete text of the GNU Lesser General + Public License can be found in "/usr/share/common-licenses/LGPL-2". + +License: GPL-2.0+ + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 2 of the License, + or (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + You should have received a copy of the GNU General Public License along + with this program; if not, see . + . + On Debian systems, the complete text of the GNU General Public + License can be found in "/usr/share/common-licenses/GPL-2" + +License: MIT + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, copy, + modify, merge, publish, distribute, sublicense, and/or sell copies + of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + \* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + \* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + \* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: spice-common/common/lines.* +Copyright: Copyright 1987, 1989, 1998 The Open Group + Copyright 1987, 1989 by Digital Equipment Corporation, Maynard, Massachusetts +License: other + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation. + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + . + Except as contained in this notice, the name of The Open Group shall not be + used in advertising or otherwise to promote the sale, use or other dealings + in this Software without prior written authorization from The Open Group. + . + All Rights Reserved + . + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Digital not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + . + DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + diff --git a/gir1.2-spice-client-glib-2.0.install b/gir1.2-spice-client-glib-2.0.install new file mode 100644 index 0000000..f6fc13f --- /dev/null +++ b/gir1.2-spice-client-glib-2.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0/SpiceClientGLib-2.0.typelib usr/lib/girepository-1.0 diff --git a/gir1.2-spice-client-gtk-2.0.install b/gir1.2-spice-client-gtk-2.0.install new file mode 100644 index 0000000..3f18558 --- /dev/null +++ b/gir1.2-spice-client-gtk-2.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0/SpiceClientGtk-2.0.typelib usr/lib/girepository-1.0 diff --git a/gir1.2-spice-client-gtk-3.0.install b/gir1.2-spice-client-gtk-3.0.install new file mode 100644 index 0000000..2597696 --- /dev/null +++ b/gir1.2-spice-client-gtk-3.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0/SpiceClientGtk-3.0.typelib usr/lib/girepository-1.0 diff --git a/libspice-client-glib-2.0-8.install b/libspice-client-glib-2.0-8.install new file mode 100644 index 0000000..b43e119 --- /dev/null +++ b/libspice-client-glib-2.0-8.install @@ -0,0 +1,2 @@ +usr/lib/*/libspice-client-glib-2.0.so.* +usr/lib/*/libspice-controller.so.* diff --git a/libspice-client-glib-2.0-8.symbols b/libspice-client-glib-2.0-8.symbols new file mode 100644 index 0000000..aa25664 --- /dev/null +++ b/libspice-client-glib-2.0-8.symbols @@ -0,0 +1,197 @@ +libspice-client-glib-2.0.so.8 libspice-client-glib-2.0-8 #MINVER# + SPICEGTK_1@SPICEGTK_1 0.13 + spice_audio_get@SPICEGTK_1 0.13 + spice_audio_get_type@SPICEGTK_1 0.13 + spice_audio_new@SPICEGTK_1 0.13 + spice_channel_connect@SPICEGTK_1 0.13 + spice_channel_destroy@SPICEGTK_1 0.13 + spice_channel_disconnect@SPICEGTK_1 0.13 + spice_channel_event_get_type@SPICEGTK_1 0.13 + spice_channel_flush_async@SPICEGTK_1 0.16 + spice_channel_flush_finish@SPICEGTK_1 0.16 + spice_channel_get_error@SPICEGTK_1 0.25 + spice_channel_get_type@SPICEGTK_1 0.13 + spice_channel_new@SPICEGTK_1 0.13 + spice_channel_open_fd@SPICEGTK_1 0.13 + spice_channel_set_capability@SPICEGTK_1 0.13 + spice_channel_string_to_type@SPICEGTK_1 0.20 + spice_channel_test_capability@SPICEGTK_1 0.13 + spice_channel_test_common_capability@SPICEGTK_1 0.13 + spice_channel_type_to_string@SPICEGTK_1 0.13 + spice_client_error_quark@SPICEGTK_1 0.13 + spice_cursor_channel_get_type@SPICEGTK_1 0.13 + spice_display_change_preferred_compression@SPICEGTK_1 0.32 + spice_display_channel_get_type@SPICEGTK_1 0.13 + spice_display_get_gl_scanout@SPICEGTK_1 0.32 + spice_display_get_primary@SPICEGTK_1 0.13 + spice_display_gl_draw_done@SPICEGTK_1 0.32 + spice_file_transfer_task_cancel@SPICEGTK_1 0.32 + spice_file_transfer_task_get_filename@SPICEGTK_1 0.32 + spice_file_transfer_task_get_progress@SPICEGTK_1 0.32 + spice_file_transfer_task_get_total_bytes@SPICEGTK_1 0.33 + spice_file_transfer_task_get_transferred_bytes@SPICEGTK_1 0.33 + spice_file_transfer_task_get_type@SPICEGTK_1 0.32 + spice_g_signal_connect_object@SPICEGTK_1 0.13 + spice_get_option_group@SPICEGTK_1 0.13 + spice_gl_scanout_free@SPICEGTK_1 0.32 + spice_gl_scanout_get_type@SPICEGTK_1 0.32 + spice_inputs_button_press@SPICEGTK_1 0.13 + spice_inputs_button_release@SPICEGTK_1 0.13 + spice_inputs_channel_get_type@SPICEGTK_1 0.13 + spice_inputs_key_press@SPICEGTK_1 0.13 + spice_inputs_key_press_and_release@SPICEGTK_1 0.14 + spice_inputs_key_release@SPICEGTK_1 0.13 + spice_inputs_lock_get_type@SPICEGTK_1 0.13 + spice_inputs_motion@SPICEGTK_1 0.13 + spice_inputs_position@SPICEGTK_1 0.13 + spice_inputs_set_key_locks@SPICEGTK_1 0.13 + spice_main_agent_test_capability@SPICEGTK_1 0.13 + spice_main_channel_get_type@SPICEGTK_1 0.13 + spice_main_clipboard_grab@SPICEGTK_1 0.13 + spice_main_clipboard_notify@SPICEGTK_1 0.13 + spice_main_clipboard_release@SPICEGTK_1 0.13 + spice_main_clipboard_request@SPICEGTK_1 0.13 + spice_main_clipboard_selection_grab@SPICEGTK_1 0.13 + spice_main_clipboard_selection_notify@SPICEGTK_1 0.13 + spice_main_clipboard_selection_release@SPICEGTK_1 0.13 + spice_main_clipboard_selection_request@SPICEGTK_1 0.13 + spice_main_file_copy_async@SPICEGTK_1 0.18 + spice_main_file_copy_finish@SPICEGTK_1 0.18 + spice_main_request_mouse_mode@SPICEGTK_1 0.32 + spice_main_send_monitor_config@SPICEGTK_1 0.13 + spice_main_set_display@SPICEGTK_1 0.13 + spice_main_set_display_enabled@SPICEGTK_1 0.13 + spice_main_update_display@SPICEGTK_1 0.19 + spice_main_update_display_enabled@SPICEGTK_1 0.30 + spice_playback_channel_get_type@SPICEGTK_1 0.13 + spice_playback_channel_set_delay@SPICEGTK_1 0.13 + spice_port_channel_get_type@SPICEGTK_1 0.16 + spice_port_event@SPICEGTK_1 0.16 + spice_port_write_async@SPICEGTK_1 0.16 + spice_port_write_finish@SPICEGTK_1 0.16 + spice_record_channel_get_type@SPICEGTK_1 0.13 + spice_record_send_data@SPICEGTK_1 0.13 + spice_session_connect@SPICEGTK_1 0.13 + spice_session_disconnect@SPICEGTK_1 0.13 + spice_session_get_channels@SPICEGTK_1 0.13 + spice_session_get_proxy_uri@SPICEGTK_1 0.25 + spice_session_get_read_only@SPICEGTK_1 0.13 + spice_session_get_type@SPICEGTK_1 0.13 + spice_session_has_channel_type@SPICEGTK_1 0.13 + spice_session_is_for_migration@SPICEGTK_1 0.28 + spice_session_migration_get_type@SPICEGTK_1 0.13 + spice_session_new@SPICEGTK_1 0.13 + spice_session_open_fd@SPICEGTK_1 0.13 + spice_session_verify_get_type@SPICEGTK_1 0.13 + spice_set_session_option@SPICEGTK_1 0.13 + spice_smartcard_channel_get_type@SPICEGTK_1 0.13 + spice_smartcard_manager_get@SPICEGTK_1 0.13 + spice_smartcard_manager_get_readers@SPICEGTK_1 0.20 + spice_smartcard_manager_get_type@SPICEGTK_1 0.13 + spice_smartcard_manager_insert_card@SPICEGTK_1 0.13 + spice_smartcard_manager_remove_card@SPICEGTK_1 0.13 + spice_smartcard_reader_get_type@SPICEGTK_1 0.13 + spice_smartcard_reader_insert_card@SPICEGTK_1 0.20 + spice_smartcard_reader_is_software@SPICEGTK_1 0.13 + spice_smartcard_reader_remove_card@SPICEGTK_1 0.20 + spice_uri_get_hostname@SPICEGTK_1 0.25 + spice_uri_get_password@SPICEGTK_1 0.25 + spice_uri_get_port@SPICEGTK_1 0.25 + spice_uri_get_scheme@SPICEGTK_1 0.25 + spice_uri_get_type@SPICEGTK_1 0.25 + spice_uri_get_user@SPICEGTK_1 0.25 + spice_uri_set_hostname@SPICEGTK_1 0.25 + spice_uri_set_password@SPICEGTK_1 0.25 + spice_uri_set_port@SPICEGTK_1 0.25 + spice_uri_set_scheme@SPICEGTK_1 0.25 + spice_uri_set_user@SPICEGTK_1 0.25 + spice_uri_to_string@SPICEGTK_1 0.25 + spice_usb_device_get_description@SPICEGTK_1 0.13 + spice_usb_device_get_libusb_device@SPICEGTK_1 0.28 + spice_usb_device_get_type@SPICEGTK_1 0.13 + spice_usb_device_manager_can_redirect_device@SPICEGTK_1 0.13 + spice_usb_device_manager_connect_device_async@SPICEGTK_1 0.13 + spice_usb_device_manager_connect_device_finish@SPICEGTK_1 0.13 + spice_usb_device_manager_disconnect_device@SPICEGTK_1 0.13 + spice_usb_device_manager_disconnect_device_async@SPICEGTK_1 0.32 + spice_usb_device_manager_disconnect_device_finish@SPICEGTK_1 0.32 + spice_usb_device_manager_get@SPICEGTK_1 0.13 + spice_usb_device_manager_get_devices@SPICEGTK_1 0.13 + spice_usb_device_manager_get_devices_with_filter@SPICEGTK_1 0.20 + spice_usb_device_manager_get_type@SPICEGTK_1 0.13 + spice_usb_device_manager_is_device_connected@SPICEGTK_1 0.13 + spice_usb_device_manager_is_redirecting@SPICEGTK_1 0.32 + spice_usbredir_channel_get_type@SPICEGTK_1 0.13 + spice_util_get_debug@SPICEGTK_1 0.13 + spice_util_get_version_string@SPICEGTK_1 0.13 + spice_util_set_debug@SPICEGTK_1 0.13 + spice_uuid_to_string@SPICEGTK_1 0.22 + spice_webdav_channel_get_type@SPICEGTK_1 0.25 +libspice-controller.so.0 libspice-client-glib-2.0-8 #MINVER# + spice_controller_listener_accept_async@Base 0.9 + spice_controller_listener_accept_finish@Base 0.9 + spice_controller_listener_error_quark@Base 0.9 + spice_controller_listener_new@Base 0.9 + spice_ctrl_controller_construct@Base 0.7 + spice_ctrl_controller_get_ca_file@Base 0.7 + spice_ctrl_controller_get_color_depth@Base 0.12 + spice_ctrl_controller_get_disable_channels@Base 0.7 + spice_ctrl_controller_get_disable_effects@Base 0.12 + spice_ctrl_controller_get_display_flags@Base 0.7 + spice_ctrl_controller_get_enable_smartcard@Base 0.11 + spice_ctrl_controller_get_enable_usb_autoshare@Base 0.12 + spice_ctrl_controller_get_enable_usbredir@Base 0.12 + spice_ctrl_controller_get_host@Base 0.7 + spice_ctrl_controller_get_host_subject@Base 0.7 + spice_ctrl_controller_get_hotkeys@Base 0.7 + spice_ctrl_controller_get_menu@Base 0.7 + spice_ctrl_controller_get_password@Base 0.7 + spice_ctrl_controller_get_port@Base 0.7 + spice_ctrl_controller_get_proxy@Base 0.18 + spice_ctrl_controller_get_secure_channels@Base 0.7 + spice_ctrl_controller_get_send_cad@Base 0.12 + spice_ctrl_controller_get_sport@Base 0.7 + spice_ctrl_controller_get_title@Base 0.7 + spice_ctrl_controller_get_tls_ciphers@Base 0.7 + spice_ctrl_controller_get_type@Base 0.7 + spice_ctrl_controller_get_usb_filter@Base 0.12 + spice_ctrl_controller_listen@Base 0.7 + spice_ctrl_controller_listen_finish@Base 0.7 + spice_ctrl_controller_menu_item_click_msg@Base 0.7 + spice_ctrl_controller_new@Base 0.7 + spice_ctrl_controller_send_msg@Base 0.7 + spice_ctrl_controller_send_msg_finish@Base 0.7 + spice_ctrl_error_quark@Base 0.7 + spice_ctrl_foreign_menu_app_activated_msg@Base 0.11 + spice_ctrl_foreign_menu_construct@Base 0.11 + spice_ctrl_foreign_menu_get_menu@Base 0.11 + spice_ctrl_foreign_menu_get_title@Base 0.11 + spice_ctrl_foreign_menu_get_type@Base 0.11 + spice_ctrl_foreign_menu_listen@Base 0.11 + spice_ctrl_foreign_menu_listen_finish@Base 0.11 + spice_ctrl_foreign_menu_menu_item_checked_msg@Base 0.11 + spice_ctrl_foreign_menu_menu_item_click_msg@Base 0.11 + spice_ctrl_foreign_menu_new@Base 0.11 + spice_ctrl_foreign_menu_send_msg@Base 0.11 + spice_ctrl_foreign_menu_send_msg_finish@Base 0.11 + spice_ctrl_input_stream_read@Base 0.13 + spice_ctrl_input_stream_read_finish@Base 0.13 + spice_ctrl_menu_construct@Base 0.7 + spice_ctrl_menu_construct_from_string@Base 0.7 + spice_ctrl_menu_find_id@Base 0.7 + spice_ctrl_menu_get_type@Base 0.7 + spice_ctrl_menu_item_construct@Base 0.7 + spice_ctrl_menu_item_construct_from_string@Base 0.7 + spice_ctrl_menu_item_get_type@Base 0.7 + spice_ctrl_menu_item_new@Base 0.7 + spice_ctrl_menu_item_new_from_string@Base 0.7 + spice_ctrl_menu_item_to_string@Base 0.7 + spice_ctrl_menu_new@Base 0.7 + spice_ctrl_menu_new_from_string@Base 0.7 + spice_ctrl_menu_to_string@Base 0.7 + spice_ctrl_output_stream_write@Base 0.13 + spice_ctrl_output_stream_write_finish@Base 0.13 + spice_foreign_menu_listener_accept_async@Base 0.11 + spice_foreign_menu_listener_accept_finish@Base 0.11 + spice_foreign_menu_listener_error_quark@Base 0.11 + spice_foreign_menu_listener_new@Base 0.11 diff --git a/libspice-client-glib-2.0-dev.install b/libspice-client-glib-2.0-dev.install new file mode 100644 index 0000000..dc81ff3 --- /dev/null +++ b/libspice-client-glib-2.0-dev.install @@ -0,0 +1,11 @@ +usr/lib/*/libspice-client-glib-2.0.so +usr/lib/*/libspice-controller.so +usr/lib/*/pkgconfig/spice-controller.pc +usr/lib/*/pkgconfig/spice-client-glib-2.0.pc +usr/include/spice-client-glib-2.0 +usr/include/spice-controller +usr/share/vala/vapi/spice-protocol.vapi +usr/share/vala/vapi/spice-client-glib-2.0.deps +usr/share/vala/vapi/spice-client-glib-2.0.vapi +usr/share/gir-1.0/SpiceClientGLib-2.0.gir +usr/share/gtk-doc diff --git a/libspice-client-gtk-3.0-5.install b/libspice-client-gtk-3.0-5.install new file mode 100644 index 0000000..bd544f1 --- /dev/null +++ b/libspice-client-gtk-3.0-5.install @@ -0,0 +1 @@ +usr/lib/*/libspice-client-gtk-3.0.so.* diff --git a/libspice-client-gtk-3.0-5.symbols b/libspice-client-gtk-3.0-5.symbols new file mode 100644 index 0000000..a719c61 --- /dev/null +++ b/libspice-client-gtk-3.0-5.symbols @@ -0,0 +1,28 @@ +libspice-client-gtk-3.0.so.5 libspice-client-gtk-3.0-5 #MINVER# + SPICEGTK_1@SPICEGTK_1 0.32 + spice_display_get_grab_keys@SPICEGTK_1 0.32 + spice_display_get_pixbuf@SPICEGTK_1 0.32 + spice_display_get_type@SPICEGTK_1 0.32 + spice_display_key_event_get_type@SPICEGTK_1 0.32 + spice_display_mouse_ungrab@SPICEGTK_1 0.32 + spice_display_new@SPICEGTK_1 0.32 + spice_display_new_with_monitor@SPICEGTK_1 0.32 + spice_display_send_keys@SPICEGTK_1 0.32 + spice_display_set_grab_keys@SPICEGTK_1 0.32 + spice_g_signal_connect_object@SPICEGTK_1 0.32 + spice_grab_sequence_as_string@SPICEGTK_1 0.32 + spice_grab_sequence_copy@SPICEGTK_1 0.32 + spice_grab_sequence_free@SPICEGTK_1 0.32 + spice_grab_sequence_get_type@SPICEGTK_1 0.32 + spice_grab_sequence_new@SPICEGTK_1 0.32 + spice_grab_sequence_new_from_string@SPICEGTK_1 0.32 + spice_gtk_session_copy_to_guest@SPICEGTK_1 0.32 + spice_gtk_session_get@SPICEGTK_1 0.32 + spice_gtk_session_get_type@SPICEGTK_1 0.32 + spice_gtk_session_paste_from_guest@SPICEGTK_1 0.32 + spice_usb_device_widget_get_type@SPICEGTK_1 0.32 + spice_usb_device_widget_new@SPICEGTK_1 0.32 + spice_util_get_debug@SPICEGTK_1 0.32 + spice_util_get_version_string@SPICEGTK_1 0.32 + spice_util_set_debug@SPICEGTK_1 0.32 + spice_uuid_to_string@SPICEGTK_1 0.32 diff --git a/libspice-client-gtk-3.0-dev.install b/libspice-client-gtk-3.0-dev.install new file mode 100644 index 0000000..e916584 --- /dev/null +++ b/libspice-client-gtk-3.0-dev.install @@ -0,0 +1,6 @@ +usr/include/spice-client-gtk-3.0/* +usr/lib/*/libspice-client-gtk-3.0.so +usr/lib/*/pkgconfig/spice-client-gtk-3.0.pc +usr/share/gir-1.0/SpiceClientGtk-3.0.gir +usr/share/vala/vapi/spice-client-gtk-3.0.deps +usr/share/vala/vapi/spice-client-gtk-3.0.vapi diff --git a/patches/Fix-flexible-array-buffer-overflow.patch b/patches/Fix-flexible-array-buffer-overflow.patch new file mode 100644 index 0000000..4522186 --- /dev/null +++ b/patches/Fix-flexible-array-buffer-overflow.patch @@ -0,0 +1,68 @@ +From: Frediano Ziglio +Date: Fri, 18 May 2018 11:41:57 +0100 +Subject: Fix flexible array buffer overflow +Origin: https://gitlab.freedesktop.org/spice/spice-common/commit/bb15d4815ab586b4c4a20f4a565970a44824c42c +Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2018-10873 +Bug-Debian: https://bugs.debian.org/906316 + +This is kind of a DoS, possibly flexible array in the protocol +causes the network size check to be ignored due to integer overflows. + +The size of flexible array is computed as (message_end - position), +then this size is added to the number of bytes before the array and +this number is used to check if we overflow initial message. + +An example is: + + message { + uint32 dummy[2]; + uint8 data[] @end; + } LenMessage; + +which generated this (simplified remove useless code) code: + + { /* data */ + data__nelements = message_end - (start + 8); + + data__nw_size = data__nelements; + } + + nw_size = 8 + data__nw_size; + + /* Check if message fits in reported side */ + if (nw_size > (uintptr_t) (message_end - start)) { + return NULL; + } + +Following code: +- data__nelements == message_end - (start + 8) +- data__nw_size == data__nelements == message_end - (start + 8) +- nw_size == 8 + data__nw_size == 8 + message_end - (start + 8) == + 8 + message_end - start - 8 == message_end -start +- the check for overflow is (nw_size > (message_end - start)) but + nw_size == message_end - start so the check is doing + ((message_end - start) > (message_end - start)) which is always false. + +If message_end - start < 8 then data__nelements (number of element +on the array above) computation generate an integer underflow that +later create a buffer overflow. + +Add a check to make sure that the array starts before the message ends +to avoid the overflow. + +Signed-off-by: Frediano Ziglio +Signed-off-by: Christophe Fergeau +[Salvatore Bonaccorso: Drop generated diff from commit messages causing + problem when applying with quilt. Remove addition to testsuite] +--- + +--- a/spice-common/python_modules/demarshal.py ++++ b/spice-common/python_modules/demarshal.py +@@ -318,6 +318,7 @@ def write_validate_array_item(writer, co + writer.assign(nelements, array.size) + elif array.is_remaining_length(): + if element_type.is_fixed_nw_size(): ++ writer.error_check("%s > message_end" % item.get_position()) + if element_type.get_fixed_nw_size() == 1: + writer.assign(nelements, "message_end - %s" % item.get_position()) + else: diff --git a/patches/debian_843471-clipboard_Fix_crash_by_handling_error.patch b/patches/debian_843471-clipboard_Fix_crash_by_handling_error.patch new file mode 100644 index 0000000..2163e46 --- /dev/null +++ b/patches/debian_843471-clipboard_Fix_crash_by_handling_error.patch @@ -0,0 +1,40 @@ +commit 03c016bea939ee4a26e90d80fa1012a993a8ea47 +Author: Victor Toso +Origin: upstream, https://cgit.freedesktop.org/spice/spice-gtk/commit/?id=03c016bea939ee4a26e90d80fa1012a993a8ea47 +Bug-Debian: https://bugs.debian.org/843471 +Date: Fri Oct 14 18:12:01 2016 +0200 + + clipboard: Fix crash by handling error + + As manual states below, text could be NULL for different reasons and + we should handle that. I've included a debug message to help + identifying possible regressions from wayland's clipboard. + + This crash is a regression from 7b0de6217670e0f668aff2949f + + "The text parameter to callback will contain the resulting text if + the request succeeded, or NULL if it failed. This could happen for + various reasons, in particular if the clipboard was empty or if the + contents of the clipboard could not be converted into text form." + + Resolves: rhbz#1384676 + + Signed-off-by: Victor Toso + Acked-by: Pavel Grunt + +diff --git a/src/spice-gtk-session.c b/src/spice-gtk-session.c +index 3ff4e9a..3e0ec74 100644 +--- a/src/spice-gtk-session.c ++++ b/src/spice-gtk-session.c +@@ -945,6 +945,11 @@ static void clipboard_received_text_cb(GtkClipboard *clipboard, + if (self == NULL) + return; + ++ if (text == NULL) { ++ SPICE_DEBUG("Failed to retrieve clipboard text"); ++ return; ++ } ++ + g_return_if_fail(SPICE_IS_GTK_SESSION(self)); + + selection = get_selection_from_clipboard(self->priv, clipboard); diff --git a/patches/explicitly-enable-subdir-objects.patch b/patches/explicitly-enable-subdir-objects.patch new file mode 100644 index 0000000..340e33d --- /dev/null +++ b/patches/explicitly-enable-subdir-objects.patch @@ -0,0 +1,50 @@ +When subdir source is included but subdir-objects is not +enabled, automake will throw a warning which will be considered +error by debian build system +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,5 +1,6 @@ + ACLOCAL_AMFLAGS = -I m4 + NULL = ++AUTOMAKE_OPTIONS = subdir-objects + + SUBDIRS = spice-common src man po doc data + +--- a/spice-common/Makefile.am ++++ b/spice-common/Makefile.am +@@ -1,5 +1,6 @@ + NULL = + ACLOCAL_AMFLAGS = -I m4 ++AUTOMAKE_OPTIONS = subdir-objects + + SUBDIRS = python_modules common tests + +--- a/spice-common/common/Makefile.am ++++ b/spice-common/common/Makefile.am +@@ -1,5 +1,7 @@ + NULL = + ++AUTOMAKE_OPTIONS = subdir-objects ++ + # Avoid need for python(pyparsing) by end users + CLIENT_MARSHALLERS = \ + generated_client_demarshallers.c \ +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -1,5 +1,6 @@ + NULL = + SUBDIRS = ++AUTOMAKE_OPTIONS = subdir-objects + + if WITH_CONTROLLER + SUBDIRS += controller +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -17,6 +17,7 @@ + noinst_PROGRAMS += test-mock-acl-helper + endif + ++AUTOMAKE_OPTIONS = subdir-objects + noinst_PROGRAMS += $(TESTS) + + AM_CPPFLAGS = \ diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..00c071f --- /dev/null +++ b/patches/series @@ -0,0 +1,6 @@ +explicitly-enable-subdir-objects.patch +debian_843471-clipboard_Fix_crash_by_handling_error.patch +ssl-Stop-creating-our-own-X509_LOOKUP_METHOD.patch +ssl-Rework-our-custom-BIO-type.patch +ssl-Use-accessors-rather-than-direct-struct-access.patch +Fix-flexible-array-buffer-overflow.patch diff --git a/patches/ssl-Rework-our-custom-BIO-type.patch b/patches/ssl-Rework-our-custom-BIO-type.patch new file mode 100644 index 0000000..ea2f871 --- /dev/null +++ b/patches/ssl-Rework-our-custom-BIO-type.patch @@ -0,0 +1,121 @@ +From: Sebastian Andrzej Siewior +Date: Wed, 26 Oct 2016 17:31:27 +0200 +Origin: upstream, https://cgit.freedesktop.org/spice/spice-gtk/commit/?id=498f5369203d73026e9fb3929fd19a358d76a152 +Bug-Debian: https://bugs.debian.org/851127 +Subject: ssl: Rework our custom BIO type + +This commit changes to an actual new BIO method rather than reusing an +existing BIO method, and overriding only the fields that we need. +The approach before this commit would be causing issues with OpenSSL +1.1.0 as some of the fields we access have become opaque. +--- + src/bio-gio.c | 57 ++++++++++++++++++++++++++++----------------------------- + 1 file changed, 28 insertions(+), 29 deletions(-) + +diff --git a/src/bio-gio.c b/src/bio-gio.c +index b310c97..0f8b415 100644 +--- a/src/bio-gio.c ++++ b/src/bio-gio.c +@@ -23,21 +23,22 @@ + #include "spice-util.h" + #include "bio-gio.h" + +-typedef struct bio_gsocket_method { +- BIO_METHOD method; +- GIOStream *stream; +-} bio_gsocket_method; +- +-#define BIO_GET_GSOCKET(bio) (((bio_gsocket_method*)bio->method)->gsocket) +-#define BIO_GET_ISTREAM(bio) (g_io_stream_get_input_stream(((bio_gsocket_method*)bio->method)->stream)) +-#define BIO_GET_OSTREAM(bio) (g_io_stream_get_output_stream(((bio_gsocket_method*)bio->method)->stream)) ++static long bio_gio_ctrl(G_GNUC_UNUSED BIO *b, ++ int cmd, ++ G_GNUC_UNUSED long num, ++ G_GNUC_UNUSED void *ptr) ++{ ++ return (cmd == BIO_CTRL_FLUSH); ++} + + static int bio_gio_write(BIO *bio, const char *in, int inl) + { ++ GOutputStream *stream; + gssize ret; + GError *error = NULL; + +- ret = g_pollable_output_stream_write_nonblocking(G_POLLABLE_OUTPUT_STREAM(BIO_GET_OSTREAM(bio)), ++ stream = g_io_stream_get_output_stream(bio->ptr); ++ ret = g_pollable_output_stream_write_nonblocking(G_POLLABLE_OUTPUT_STREAM(stream), + in, inl, NULL, &error); + BIO_clear_retry_flags(bio); + +@@ -53,10 +54,12 @@ static int bio_gio_write(BIO *bio, const char *in, int inl) + + static int bio_gio_read(BIO *bio, char *out, int outl) + { ++ GInputStream *stream; + gssize ret; + GError *error = NULL; + +- ret = g_pollable_input_stream_read_nonblocking(G_POLLABLE_INPUT_STREAM(BIO_GET_ISTREAM(bio)), ++ stream = g_io_stream_get_input_stream(bio->ptr); ++ ret = g_pollable_input_stream_read_nonblocking(G_POLLABLE_INPUT_STREAM(stream), + out, outl, NULL, &error); + BIO_clear_retry_flags(bio); + +@@ -70,17 +73,6 @@ static int bio_gio_read(BIO *bio, char *out, int outl) + return ret; + } + +-static int bio_gio_destroy(BIO *bio) +-{ +- if (bio == NULL || bio->method == NULL) +- return 0; +- +- SPICE_DEBUG("bio gsocket destroy"); +- g_clear_pointer(&bio->method, g_free); +- +- return 1; +-} +- + static int bio_gio_puts(BIO *bio, const char *str) + { + int n, ret; +@@ -91,23 +83,30 @@ static int bio_gio_puts(BIO *bio, const char *str) + return ret; + } + ++#define BIO_TYPE_START 128 ++ + G_GNUC_INTERNAL + BIO* bio_new_giostream(GIOStream *stream) + { +- // TODO: make an actual new BIO type, or just switch to GTls already... +- BIO *bio = BIO_new_socket(-1, BIO_NOCLOSE); ++ BIO *bio; ++ static BIO_METHOD bio_gio_method; + +- bio_gsocket_method *bio_method = g_new(bio_gsocket_method, 1); +- bio_method->method = *bio->method; +- bio_method->stream = stream; ++ if (bio_gio_method.name == NULL) { ++ bio_gio_method.type = BIO_TYPE_START | BIO_TYPE_SOURCE_SINK; ++ bio_gio_method.name = "gio stream"; ++ } + +- bio->method->destroy(bio); +- bio->method = (BIO_METHOD*)bio_method; ++ bio = BIO_new(&bio_gio_method); ++ if (!bio) ++ return NULL; + + bio->method->bwrite = bio_gio_write; + bio->method->bread = bio_gio_read; + bio->method->bputs = bio_gio_puts; +- bio->method->destroy = bio_gio_destroy; ++ bio->method->ctrl = bio_gio_ctrl; ++ ++ bio->init = 1; ++ bio->ptr = stream; + + return bio; + } diff --git a/patches/ssl-Stop-creating-our-own-X509_LOOKUP_METHOD.patch b/patches/ssl-Stop-creating-our-own-X509_LOOKUP_METHOD.patch new file mode 100644 index 0000000..534506e --- /dev/null +++ b/patches/ssl-Stop-creating-our-own-X509_LOOKUP_METHOD.patch @@ -0,0 +1,71 @@ +From: Sebastian Andrzej Siewior +Date: Wed, 26 Oct 2016 12:55:03 +0200 +Origin: upstream, https://cgit.freedesktop.org/spice/spice-gtk/commit/?id=3ec02a76ea5e0bea4aa3d3cc81846a9063c26d7a +Bug-Debian: https://bugs.debian.org/851127 +Subject: ssl: Stop creating our own X509_LOOKUP_METHOD + +OpenSSL 1.1.0 does not seem to provide API to do that anymore. + +There is no need to create a custom lookup to begin with. This method +here has no callbacks implemented and is doing nothing. The way I +understand it, it is used to retrieve a `lookup' object which provides a +certificate store. The SSL ctx provides also such a store. + +Acked-by: Christophe Fergeau +Acked-by: Pavel Grunt +--- + src/spice-channel.c | 13 ++++--------- + 1 file changed, 4 insertions(+), 9 deletions(-) + +diff --git a/src/spice-channel.c b/src/spice-channel.c +index 95662f3..6a911a6 100644 +--- a/src/spice-channel.c ++++ b/src/spice-channel.c +@@ -2352,17 +2352,12 @@ static gboolean spice_channel_delayed_unref(gpointer data) + return FALSE; + } + +-static X509_LOOKUP_METHOD spice_x509_mem_lookup = { +- "spice_x509_mem_lookup", +- 0 +-}; +- + static int spice_channel_load_ca(SpiceChannel *channel) + { + SpiceChannelPrivate *c = channel->priv; + STACK_OF(X509_INFO) *inf; + X509_INFO *itmp; +- X509_LOOKUP *lookup; ++ X509_STORE *store; + BIO *in; + int i, count = 0; + guint8 *ca; +@@ -2372,13 +2367,13 @@ static int spice_channel_load_ca(SpiceChannel *channel) + + g_return_val_if_fail(c->ctx != NULL, 0); + +- lookup = X509_STORE_add_lookup(c->ctx->cert_store, &spice_x509_mem_lookup); + ca_file = spice_session_get_ca_file(c->session); + spice_session_get_ca(c->session, &ca, &size); + + CHANNEL_DEBUG(channel, "Load CA, file: %s, data: %p", ca_file, ca); + + if (ca != NULL) { ++ store = SSL_CTX_get_cert_store(c->ctx); + in = BIO_new_mem_buf(ca, size); + inf = PEM_X509_INFO_read_bio(in, NULL, NULL, NULL); + BIO_free(in); +@@ -2386,11 +2381,11 @@ static int spice_channel_load_ca(SpiceChannel *channel) + for (i = 0; i < sk_X509_INFO_num(inf); i++) { + itmp = sk_X509_INFO_value(inf, i); + if (itmp->x509) { +- X509_STORE_add_cert(lookup->store_ctx, itmp->x509); ++ X509_STORE_add_cert(store, itmp->x509); + count++; + } + if (itmp->crl) { +- X509_STORE_add_crl(lookup->store_ctx, itmp->crl); ++ X509_STORE_add_crl(store, itmp->crl); + count++; + } + } diff --git a/patches/ssl-Use-accessors-rather-than-direct-struct-access.patch b/patches/ssl-Use-accessors-rather-than-direct-struct-access.patch new file mode 100644 index 0000000..40d67ac --- /dev/null +++ b/patches/ssl-Use-accessors-rather-than-direct-struct-access.patch @@ -0,0 +1,193 @@ +From: Sebastian Andrzej Siewior +Date: Wed, 30 Nov 2016 16:34:59 +0100 +Origin: upstream, https://cgit.freedesktop.org/spice/spice-gtk/commit/?id=97bd84313597d7c37c637c29e75f8862fcab1940 +Bug-Debian: https://bugs.debian.org/851127 +Subject: ssl: Use accessors rather than direct struct access + +In OpenSSL 1.1.0, the struct fields are private so we can no longer +directly access them. + +The accessors are not available in previous OpenSSL releases, so we need +to add compat helpers. +--- + src/bio-gio.c | 106 ++++++++++++++++++++++++++++++++++++++++++++-------- + src/spice-channel.c | 11 +++++- + 2 files changed, 100 insertions(+), 17 deletions(-) + +diff --git a/src/bio-gio.c b/src/bio-gio.c +index 0f8b415..9358fae 100644 +--- a/src/bio-gio.c ++++ b/src/bio-gio.c +@@ -23,6 +23,75 @@ + #include "spice-util.h" + #include "bio-gio.h" + ++#if OPENSSL_VERSION_NUMBER < 0x10100000 ++static BIO_METHOD one_static_bio; ++ ++static int BIO_meth_set_read(BIO_METHOD *biom, ++ int (*bread) (BIO *, char *, int)) ++{ ++ biom->bread = bread; ++ return 1; ++} ++ ++static int BIO_meth_set_write(BIO_METHOD *biom, ++ int (*bwrite) (BIO *, const char *, int)) ++{ ++ biom->bwrite = bwrite; ++ return 1; ++} ++ ++static int BIO_meth_set_puts(BIO_METHOD *biom, ++ int (*bputs) (BIO *, const char *)) ++{ ++ biom->bputs = bputs; ++ return 1; ++} ++ ++static int BIO_meth_set_ctrl(BIO_METHOD *biom, ++ long (*ctrl) (BIO *, int, long, void *)) ++{ ++ biom->ctrl = ctrl; ++ return 1; ++} ++ ++#define BIO_TYPE_START 128 ++ ++static int BIO_get_new_index(void) ++{ ++ static int bio_index = BIO_TYPE_START; ++ return bio_index++; ++} ++ ++static void BIO_set_init(BIO *a, int init) ++{ ++ a->init = init; ++} ++ ++static void BIO_set_data(BIO *a, void *ptr) ++{ ++ a->ptr = ptr; ++} ++ ++static void *BIO_get_data(BIO *a) ++{ ++ return a->ptr; ++} ++ ++static BIO_METHOD *BIO_meth_new(int type, const char *name) ++{ ++ BIO_METHOD *biom = &one_static_bio; ++ ++ biom->type = type; ++ biom->name = name; ++ return biom; ++} ++ ++static void BIO_meth_free(BIO_METHOD *biom) ++{ ++} ++ ++#endif ++ + static long bio_gio_ctrl(G_GNUC_UNUSED BIO *b, + int cmd, + G_GNUC_UNUSED long num, +@@ -37,7 +106,7 @@ static int bio_gio_write(BIO *bio, const char *in, int inl) + gssize ret; + GError *error = NULL; + +- stream = g_io_stream_get_output_stream(bio->ptr); ++ stream = g_io_stream_get_output_stream(BIO_get_data(bio)); + ret = g_pollable_output_stream_write_nonblocking(G_POLLABLE_OUTPUT_STREAM(stream), + in, inl, NULL, &error); + BIO_clear_retry_flags(bio); +@@ -58,7 +127,7 @@ static int bio_gio_read(BIO *bio, char *out, int outl) + gssize ret; + GError *error = NULL; + +- stream = g_io_stream_get_input_stream(bio->ptr); ++ stream = g_io_stream_get_input_stream(BIO_get_data(bio)); + ret = g_pollable_input_stream_read_nonblocking(G_POLLABLE_INPUT_STREAM(stream), + out, outl, NULL, &error); + BIO_clear_retry_flags(bio); +@@ -83,30 +152,35 @@ static int bio_gio_puts(BIO *bio, const char *str) + return ret; + } + +-#define BIO_TYPE_START 128 ++static BIO_METHOD *bio_gio_method; + + G_GNUC_INTERNAL + BIO* bio_new_giostream(GIOStream *stream) + { + BIO *bio; +- static BIO_METHOD bio_gio_method; + +- if (bio_gio_method.name == NULL) { +- bio_gio_method.type = BIO_TYPE_START | BIO_TYPE_SOURCE_SINK; +- bio_gio_method.name = "gio stream"; ++ if (!bio_gio_method) { ++ bio_gio_method = BIO_meth_new(BIO_get_new_index() | ++ BIO_TYPE_SOURCE_SINK, ++ "gio stream"); ++ if (!bio_gio_method) ++ return NULL; ++ ++ if (!BIO_meth_set_write(bio_gio_method, bio_gio_write) || ++ !BIO_meth_set_read(bio_gio_method, bio_gio_read) || ++ !BIO_meth_set_puts(bio_gio_method, bio_gio_puts) || ++ !BIO_meth_set_ctrl(bio_gio_method, bio_gio_ctrl)) { ++ BIO_meth_free(bio_gio_method); ++ bio_gio_method = NULL; ++ return NULL; ++ } + } + +- bio = BIO_new(&bio_gio_method); ++ bio = BIO_new(bio_gio_method); + if (!bio) + return NULL; + +- bio->method->bwrite = bio_gio_write; +- bio->method->bread = bio_gio_read; +- bio->method->bputs = bio_gio_puts; +- bio->method->ctrl = bio_gio_ctrl; +- +- bio->init = 1; +- bio->ptr = stream; +- ++ BIO_set_init(bio, 1); ++ BIO_set_data(bio, stream); + return bio; + } +diff --git a/src/spice-channel.c b/src/spice-channel.c +index 6a911a6..6556db3 100644 +--- a/src/spice-channel.c ++++ b/src/spice-channel.c +@@ -55,6 +55,15 @@ static void spice_channel_reset_capabilities(SpiceChannel *channel); + static void spice_channel_send_migration_handshake(SpiceChannel *channel); + static gboolean channel_connect(SpiceChannel *channel, gboolean tls); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000 ++static RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey) ++{ ++ if (pkey->type != EVP_PKEY_RSA) { ++ return NULL; ++ } ++ return pkey->pkey.rsa; ++} ++#endif + /** + * SECTION:spice-channel + * @short_description: the base channel class +@@ -1161,7 +1170,7 @@ static SpiceChannelEvent spice_channel_send_spice_ticket(SpiceChannel *channel) + pubkey = d2i_PUBKEY_bio(bioKey, NULL); + g_return_val_if_fail(pubkey != NULL, ret); + +- rsa = pubkey->pkey.rsa; ++ rsa = EVP_PKEY_get0_RSA(pubkey); + nRSASize = RSA_size(rsa); + + encrypted = g_alloca(nRSASize); diff --git a/rules b/rules new file mode 100755 index 0000000..cfebeb8 --- /dev/null +++ b/rules @@ -0,0 +1,90 @@ +#!/usr/bin/make -f +# spice-gtk debian/rules using debhelper +# Copyright (C) 2011 Liang Guo + +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CXXFLAGS += -g +endif + +ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + +build-arch: build +build-indep: build + +build: build-stamp +build-stamp: build-gtk3-stamp + touch build-stamp + +build-gtk3-stamp: + mkdir build-gtk3 + ls |egrep -v '(debian|build-gtk)'|xargs -i cp -r {} build-gtk3/ + cp .version .tarball-version build-gtk3/ + rm build-gtk3/spice-common/common/generated_* + rm build-gtk3/spice-common/tests/generated_* + cd build-gtk3 && autoreconf + cd build-gtk3 && ./configure --prefix=/usr --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \ + --enable-smartcard=yes --with-gtk=3.0 --disable-static \ + --enable-introspection --enable-vala --disable-celt051 \ + --enable-usbredir=yes --enable-polkit=yes --enable-dbus=yes \ + --enable-lz4=yes --enable-python-checks \ + --with-usb-acl-helper-dir=/usr/lib/spice-gtk + $(MAKE) -C build-gtk3 + touch build-gtk3-stamp + +clean: clean-patched +clean-patched: + dh_testdir + dh_testroot + [ ! -d $(CURDIR)/build-gtk3 ] || rm -rf $(CURDIR)/build-gtk3 + dh_clean + +install: install-stamp +install-stamp: build-stamp + dh_testdir + dh_testroot + dh_prep + dh_installdirs + $(MAKE) -C $(CURDIR)/build-gtk3 install DESTDIR=$(CURDIR)/debian/tmp + dh_install --sourcedir=debian/tmp + touch install-stamp + +binary-arch: build install + dh_testdir + dh_testroot + dh_install --list-missing + dh_installchangelogs + dh_installdocs + dh_installexamples + dh_installman + dh_python2 --no-guessing-versions + dh_link + dh_strip -pspice-client-gtk --ddeb-migration='spice-client-gtk-dbg (<< 0.30~)' + dh_strip -pspice-client-glib-usb-acl-helper --ddeb-migration='spice-client-glib-usb-acl-helper-dbg (<< 0.30~)' + dh_strip -plibspice-client-glib-2.0-8 --ddeb-migration='spice-gtk-dbg (<< 0.30~)' + dh_strip -plibspice-client-gtk-3.0-5 --ddeb-migration='spice-gtk-dbg (<< 0.30~)' + dh_compress + dh_fixperms + dh_makeshlibs + dh_girepository + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install + diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/spice-client-glib-usb-acl-helper.install b/spice-client-glib-usb-acl-helper.install new file mode 100644 index 0000000..a4e50ae --- /dev/null +++ b/spice-client-glib-usb-acl-helper.install @@ -0,0 +1,2 @@ +usr/lib/spice-gtk/spice-client-glib-usb-acl-helper +usr/share/polkit-1/actions/org.spice-space.lowlevelusbaccess.policy diff --git a/spice-client-glib-usb-acl-helper.postinst b/spice-client-glib-usb-acl-helper.postinst new file mode 100644 index 0000000..167183a --- /dev/null +++ b/spice-client-glib-usb-acl-helper.postinst @@ -0,0 +1,7 @@ +#!/bin/sh +set -e +#DEBHELPER# +if ! dpkg-statoverride --list /usr/lib/spice-gtk/spice-client-glib-usb-acl-helper >/dev/null 2>&1 +then + dpkg-statoverride --update --add root root 4755 /usr/lib/spice-gtk/spice-client-glib-usb-acl-helper +fi diff --git a/spice-client-glib-usb-acl-helper.postrm b/spice-client-glib-usb-acl-helper.postrm new file mode 100644 index 0000000..5a27f73 --- /dev/null +++ b/spice-client-glib-usb-acl-helper.postrm @@ -0,0 +1,7 @@ +#!/bin/sh +set -e +#DEBHELPER# +if dpkg-statoverride --list /usr/lib/spice-gtk/spice-client-glib-usb-acl-helper >/dev/null 2>&1 +then + dpkg-statoverride --remove /usr/lib/spice-gtk/spice-client-glib-usb-acl-helper +fi diff --git a/spice-client-gtk.install b/spice-client-gtk.install new file mode 100644 index 0000000..f0c7047 --- /dev/null +++ b/spice-client-gtk.install @@ -0,0 +1,5 @@ +usr/share/locale/* +usr/bin/spicy-screenshot +usr/bin/spicy +usr/bin/spicy-stats +usr/share/man/man1/spice-client.1 diff --git a/spice-client-gtk.manpages b/spice-client-gtk.manpages new file mode 100644 index 0000000..bfec80d --- /dev/null +++ b/spice-client-gtk.manpages @@ -0,0 +1,3 @@ +debian/spicy-screenshot.1 +debian/spicy.1 +debian/spicy-stats.1 diff --git a/spicy-screenshot.1 b/spicy-screenshot.1 new file mode 100644 index 0000000..35aae04 --- /dev/null +++ b/spicy-screenshot.1 @@ -0,0 +1,66 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH SPICY-SCREENSHOT 1 "August 15, 2011" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +spicy-screenshot \- Spice screen-shot capture tool +.SH SYNOPSIS +.B spicy-screenshot +.RI [ \-\-uri\= ] +.RI [ \-h,\ \-\-host\= ] +.RI [ \-p,\ \-\-port\= ] +.RI [ \-s,\ \-\-secure\-port\= ] +.RI [ \-w,\ \-\-password\= ] +.RI [ \-o,\ \-\-out\-file\= ] +.RI [ \-\-version ] +.RI [ \-?,\ \-\-help ] +.SH DESCRIPTION +spicy-screenshot connects to Spice server and capture screen-shot to a ppm format file, the default file name is snappy.ppm +.SH OPTIONS +.TP +.B \-\-uri\= +Spice server uri. +.TP +.B \-h,\ \-\-host\= +Spice server address. +.TP +.B \-p,\ \-\-port\= +Spice server port +.TP +.B \-s,\ \-\-secure\-port\= +Spice server secure port +.TP +.B \-w,\ \-\-password\= +Spice server password +.TP +.B \-o,\ \-\-out\-file\= +Output file name (default snappy.ppm) +.TP +.B \-\-version +Display spicy-screenshot version +.TP +.B \-?,\ \-\-help +Display help information +.SH SEE ALSO +.BR spicec (1) +.BR spicy (1) +.TP +Spice related documents can be found at http://www.spice-space.org/documentation.html +.SH AUTHOR +Spice project +.PP +This manual page was written by Liang Guo , for the Debian project (and may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. +. diff --git a/spicy-stats.1 b/spicy-stats.1 new file mode 100644 index 0000000..aef9b82 --- /dev/null +++ b/spicy-stats.1 @@ -0,0 +1,62 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH SPICY-STATS 1 "August 15, 2011" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +spicy-stats \- Spice client used for testing and measurements +.SH SYNOPSIS +.B spicy-stats +.RI [ \-\-uri\= ] +.RI [ \-h,\ \-\-host\= ] +.RI [ \-p,\ \-\-port\= ] +.RI [ \-s,\ \-\-secure\-port\= ] +.RI [ \-w,\ \-\-password\= ] +.RI [ \-\-version ] +.RI [ \-?,\ \-\-help ] +.SH DESCRIPTION +spicy-stats connects to Spice server and writes out a summary of connection details, amount of bytes transferred... +.SH OPTIONS +.TP +.B \-\-uri\= +Spice server uri. +.TP +.B \-h,\ \-\-host\= +Spice server address. +.TP +.B \-p,\ \-\-port\= +Spice server port +.TP +.B \-s,\ \-\-secure\-port\= +Spice server secure port +.TP +.B \-w,\ \-\-password\= +Spice server password +.TP +.B \-\-version +Display spicy-stats version +.TP +.B \-?,\ \-\-help +Display help information +.SH SEE ALSO +.BR spicec (1) +.BR spicy (1) +.TP +Spice related documents can be found at http://www.spice-space.org/documentation.html +.SH AUTHOR +Spice project +.PP +This manual page was written by Liang Guo , for the Debian project (and may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. +. diff --git a/spicy.1 b/spicy.1 new file mode 100644 index 0000000..958c28c --- /dev/null +++ b/spicy.1 @@ -0,0 +1,70 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH SPICY 1 "August 15, 2011" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +spicy \- Spice client test application +.SH SYNOPSIS +.B spicy +.RI [ \-\-uri\= ] +.RI [ \-h,\ \-\-host\= ] +.RI [ \-p,\ \-\-port\= ] +.RI [ \-s,\ \-\-secure\-port\= ] +.RI [ \-w,\ \-\-password\= ] +.RI [ \-f,\ \-\-full\-screen ] +.RI [ \-\-version ] +.RI [ \-\-display\= ] +.RI [ \-?,\ \-\-help ] +.RI [GTK\ Generic\ Options] +.RI [Spice \ Generic\ Options] +.SH DESCRIPTION +spicy is a Gtk+ test client to connect to Spice servers +.SH OPTIONS +.TP +.B \-\-uri\= +Spice server uri. +.TP +.B \-h,\ \-\-host\= +Spice server address. +.TP +.B \-p,\ \-\-port\= +Spice server port +.TP +.B \-s,\ \-\-secure\-port\= +Spice server secure port +.TP +.B \-w,\ \-\-password\= +Spice server password +.TP +.B \-f,\ \-\-full\-screen[\=auto\-conf] +Open in a full screen mode. Optional automatic configuration of the remote display settings +according to the client display settings. A guest agent must be installed and started for this +option. +.TP +.B \-\-version +Display spicy version +.TP +.B \-?,\ \-\-help +Display help information +.SH SEE ALSO +.BR spicec (1) +.TP +Spice related documents can be found at http://www.spice-space.org/documentation.html +.SH AUTHOR +Spice project +.PP +This manual page was written by Liang Guo , for the Debian project (and may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. +. diff --git a/watch b/watch new file mode 100644 index 0000000..3440334 --- /dev/null +++ b/watch @@ -0,0 +1,3 @@ +version=3 +http://www.spice-space.org/download/gtk/spice-gtk-(\d.*).tar.bz2 + -- 2.30.2