* Non-maintainer upload.
* Fix flexible array buffer overflow (CVE-2018-10873) (Closes: #906316)
[dgit import unpatched spice-gtk 0.33-3.3+deb9u1]
--- /dev/null
--- /dev/null
++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 <carnil@debian.org> 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 <intrigeri@debian.org> 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 <intrigeri@debian.org> 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 <wrar@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <bigon@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <guoliang@debian.org> 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 <bluestonechina@gmail.com> 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 <bluestonechina@gmail.com> 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 <bluestonechina@gmail.com> 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 <bluestonechina@gmail.com> 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 <bluestonechina@gmail.com> Tue, 16 Aug 2011 18:24:32 +0800
++
++spice-gtk (0.7-1) unstable; urgency=low
++
++ * Initial release (Closes: #632866)
++
++ -- Liang Guo <bluestonechina@gmail.com> Sun, 14 Aug 2011 15:36:28 +0800
--- /dev/null
--- /dev/null
++9
--- /dev/null
--- /dev/null
++Source: spice-gtk
++Section: misc
++Priority: optional
++Maintainer: Liang Guo <guoliang@debian.org>
++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.
++
--- /dev/null
--- /dev/null
++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 <bluestonechina@gmail.com>
++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 <dan@berrange.com>
++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 <anthony@codemonkey.ws>
++ Copyright (C) 2009-2010 Daniel P. Berrange <dan@berrange.com>
++License: LGPL-2.0+
++
++Files: src/vncdisplaykeymap.c src/spice-grabsequence.h
++ src/vncdisplaykeymap.h
++Copyright: Copyright (C) 2006, 2008 Anthony Liguori <anthony@codemonkey.ws>
++ Copyright (C) 2009-2010 Daniel P. Berrange <dan@berrange.com>
++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 <anthony@codemonkey.ws>
++License: LGPL-2.0+
++
++Files: src/coroutine_winfibers.c
++Copyright: Copyright (C) 2011 Marc-André Lureau <marcandre.lureau@redhat.com>
++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 <kay.sievers@vrfy.org>
++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 <jwhite@codeweavers.com>
++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 <http://www.gnu.org/licenses/>.
++ .
++ 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 <http://www.gnu.org/licenses/>.
++ .
++ 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.
++
--- /dev/null
--- /dev/null
++usr/lib/*/girepository-1.0/SpiceClientGLib-2.0.typelib usr/lib/girepository-1.0
--- /dev/null
--- /dev/null
++usr/lib/*/girepository-1.0/SpiceClientGtk-2.0.typelib usr/lib/girepository-1.0
--- /dev/null
--- /dev/null
++usr/lib/*/girepository-1.0/SpiceClientGtk-3.0.typelib usr/lib/girepository-1.0
--- /dev/null
--- /dev/null
++usr/lib/*/libspice-client-glib-2.0.so.*
++usr/lib/*/libspice-controller.so.*
--- /dev/null
--- /dev/null
++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
--- /dev/null
--- /dev/null
++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
--- /dev/null
--- /dev/null
++usr/lib/*/libspice-client-gtk-3.0.so.*
--- /dev/null
--- /dev/null
++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
--- /dev/null
--- /dev/null
++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
--- /dev/null
--- /dev/null
++From: Frediano Ziglio <fziglio@redhat.com>
++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 <fziglio@redhat.com>
++Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
++[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:
--- /dev/null
--- /dev/null
++commit 03c016bea939ee4a26e90d80fa1012a993a8ea47
++Author: Victor Toso <me@victortoso.com>
++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 <victortoso@redhat.com>
++ Acked-by: Pavel Grunt <pgrunt@redhat.com>
++
++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);
--- /dev/null
--- /dev/null
++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 = \
--- /dev/null
--- /dev/null
++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
--- /dev/null
--- /dev/null
++From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
++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;
++ }
--- /dev/null
--- /dev/null
++From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
++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 <cfergeau@redhat.com>
++Acked-by: Pavel Grunt <pgrunt@redhat.com>
++---
++ 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++;
++ }
++ }
--- /dev/null
--- /dev/null
++From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
++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);
--- /dev/null
--- /dev/null
++#!/usr/bin/make -f
++# spice-gtk debian/rules using debhelper
++# Copyright (C) 2011 Liang Guo <bluestonechina@gmail.com>
++
++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
++
--- /dev/null
--- /dev/null
++3.0 (quilt)
--- /dev/null
--- /dev/null
++usr/lib/spice-gtk/spice-client-glib-usb-acl-helper
++usr/share/polkit-1/actions/org.spice-space.lowlevelusbaccess.policy
--- /dev/null
--- /dev/null
++#!/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
--- /dev/null
--- /dev/null
++#!/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
--- /dev/null
--- /dev/null
++usr/share/locale/*
++usr/bin/spicy-screenshot
++usr/bin/spicy
++usr/bin/spicy-stats
++usr/share/man/man1/spice-client.1
--- /dev/null
--- /dev/null
++debian/spicy-screenshot.1
++debian/spicy.1
++debian/spicy-stats.1
--- /dev/null
--- /dev/null
++.\" 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 <n> 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\=<uri> ]
++.RI [ \-h,\ \-\-host\=<host> ]
++.RI [ \-p,\ \-\-port\=<port> ]
++.RI [ \-s,\ \-\-secure\-port\=<port> ]
++.RI [ \-w,\ \-\-password\=<password> ]
++.RI [ \-o,\ \-\-out\-file\=<filename> ]
++.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\= <uri>
++Spice server uri.
++.TP
++.B \-h,\ \-\-host\=<host>
++Spice server address.
++.TP
++.B \-p,\ \-\-port\=<port>
++Spice server port
++.TP
++.B \-s,\ \-\-secure\-port\=<port>
++Spice server secure port
++.TP
++.B \-w,\ \-\-password\=<password>
++Spice server password
++.TP
++.B \-o,\ \-\-out\-file\=<filename>
++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 <bluestonechina@gmail.com>, 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.
++.
--- /dev/null
--- /dev/null
++.\" 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 <n> 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\=<uri> ]
++.RI [ \-h,\ \-\-host\=<host> ]
++.RI [ \-p,\ \-\-port\=<port> ]
++.RI [ \-s,\ \-\-secure\-port\=<port> ]
++.RI [ \-w,\ \-\-password\=<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\= <uri>
++Spice server uri.
++.TP
++.B \-h,\ \-\-host\=<host>
++Spice server address.
++.TP
++.B \-p,\ \-\-port\=<port>
++Spice server port
++.TP
++.B \-s,\ \-\-secure\-port\=<port>
++Spice server secure port
++.TP
++.B \-w,\ \-\-password\=<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 <bluestonechina@gmail.com>, 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.
++.
--- /dev/null
--- /dev/null
++.\" 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 <n> 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\=<uri> ]
++.RI [ \-h,\ \-\-host\=<host> ]
++.RI [ \-p,\ \-\-port\=<port> ]
++.RI [ \-s,\ \-\-secure\-port\=<port> ]
++.RI [ \-w,\ \-\-password\=<password> ]
++.RI [ \-f,\ \-\-full\-screen ]
++.RI [ \-\-version ]
++.RI [ \-\-display\=<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\= <uri>
++Spice server uri.
++.TP
++.B \-h,\ \-\-host\=<host>
++Spice server address.
++.TP
++.B \-p,\ \-\-port\=<port>
++Spice server port
++.TP
++.B \-s,\ \-\-secure\-port\=<port>
++Spice server secure port
++.TP
++.B \-w,\ \-\-password\=<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 <bluestonechina@gmail.com>, 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.
++.
--- /dev/null
--- /dev/null
++version=3
++http://www.spice-space.org/download/gtk/spice-gtk-(\d.*).tar.bz2
++