Hello community,
here is the log from the commit of package spice-protocol for
openSUSE:Leap:15.2 checked in at 2020-01-30 14:50:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/spice-protocol (Old)
and /work/SRC/openSUSE:Leap:15.2/.spice-protocol.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spice-protocol"
Thu Jan 30 14:50:02 2020 rev:13 rq:758323 version:0.14.0
Changes:
--------
--- /work/SRC/openSUSE:Leap:15.2/spice-protocol/spice-protocol.changes
2020-01-15 16:03:43.667935236 +0100
+++
/work/SRC/openSUSE:Leap:15.2/.spice-protocol.new.26092/spice-protocol.changes
2020-01-30 14:50:59.950921571 +0100
@@ -1,0 +2,22 @@
+Tue Apr 16 20:21:17 UTC 2019 - Bruce Rogers <[email protected]>
+
+- Update to version 0.14.0:
+ + Add: VDAgentGraphicsDeviceInfo and StreamMsgGraphicsDeviceInfo
+ messages, and SpiceStat structure padding
+ + Remove: SpicePubkeyType, SpiceTunnelServiceType,
+ SpiceTunnelIpType, SPICE_MSG_TUNNEL_* and SPICE_MSGC_TUNNEL_*
+- Add keyring and tarball signature files
+
+-------------------------------------------------------------------
+Thu Feb 28 12:05:50 UTC 2019 - [email protected]
+
+- Require meson >= 0.41.0 per meson.build
+- Use autosetup -p1, in case we require patches in the future
+
+-------------------------------------------------------------------
+Sat Jan 19 15:17:11 UTC 2019 - Bruce Rogers <[email protected]>
+
+- Update to version 0.12.15:
+ + add support for h265 video codec
+
+-------------------------------------------------------------------
Old:
----
spice-protocol-0.12.14.tar.bz2
New:
----
spice-protocol-0.14.0.tar.bz2
spice-protocol-0.14.0.tar.bz2.sig
spice-protocol.keyring
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ spice-protocol.spec ++++++
--- /var/tmp/diff_new_pack.ehSKrz/_old 2020-01-30 14:51:00.362921790 +0100
+++ /var/tmp/diff_new_pack.ehSKrz/_new 2020-01-30 14:51:00.366921792 +0100
@@ -1,7 +1,7 @@
#
# spec file for package spice-protocol
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,19 +12,21 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: spice-protocol
-Version: 0.12.14
+Version: 0.14.0
Release: 0
Summary: SPICE-protocol definitions
License: BSD-3-Clause
Group: Development/Languages/C and C++
URL: https://www.spice-space.org/
Source:
https://www.spice-space.org/download/releases/%{name}-%{version}.tar.bz2
-BuildRequires: meson
+Source1:
https://www.spice-space.org/download/releases/%{name}-%{version}.tar.bz2.sig
+Source2: %{name}.keyring
+BuildRequires: meson >= 0.41.0
BuildRequires: pkgconfig
Requires: python-pyparsing
Requires: python-six
@@ -41,7 +43,7 @@
Headers defining the SPICE-protocol
%prep
-%setup -q
+%autosetup -p1
%build
%meson
@@ -52,7 +54,7 @@
%files devel
%license COPYING
-%doc NEWS
+%doc CHANGELOG.md README.md
%{_datadir}/pkgconfig/spice-protocol.pc
%{_includedir}/spice-1/
++++++ spice-protocol-0.12.14.tar.bz2 -> spice-protocol-0.14.0.tar.bz2 ++++++
++++ 1818 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/CHANGELOG.md new/spice-protocol-0.14.0/CHANGELOG.md
--- old/spice-protocol-0.12.14/CHANGELOG.md 1970-01-01 01:00:00.000000000
+0100
+++ new/spice-protocol-0.14.0/CHANGELOG.md 2019-04-12 15:54:46.000000000
+0200
@@ -0,0 +1,206 @@
+Major changes in 0.14.0
+=======================
+* Bumping minor to show that some types and values were removed
+* Regenerate enums.h (from spice.proto) which removes:
+ * SpicePubkeyType;
+ * SpiceTunnelServiceType;
+ * SpiceTunnelIpType;
+ * SPICE_MSG_TUNNEL_* and SPICE_MSGC_TUNNEL_*
+* Add VDAgentGraphicsDeviceInfo message
+* Add StreamMsgGraphicsDeviceInfo message
+* Add padding to SpiceStat structure
+
+Major changes in 0.12.15
+========================
+* Add support for h265 video codec
+* qxl_dev: Align QXLRam to 4 bytes
+* meson: fix spice-protocol as subproject
+
+Major changes in 0.12.14
+========================
+* add stream-device protocol
+* add SPICE_SURFACE_FLAGS_STREAMING_MODE flag
+* add e2k (Elbrus 2000) architecture
+* add SPICE_MAX_NUM_STREAMS
+* add meson support
+* add bult-ins byte swapping for Visual C++
+* switch to built-ins byte swapping in GCC
+
+Major changes in 0.12.13
+========================
+* add DISPLAY_PREFERRED_VIDEO_CODEC_TYPE
+* add VP9 codec type
+* add VD_AGENT_CLEAR_CAPABILITY() macro
+* add VD_AGENT_CAP_FILE_XFER_DISABLED
+* add VD_AGENT_FILE_XFER_STATUS_NOT_ENOUGH_SPACE
+* add new file-xfer statuses for detailed error
+* Change enums.h license to MIT
+
+Major changes in 0.12.12
+========================
+* protocol: Add lz4 compression support to the SpiceVMC channel
+
+Major changes in 0.12.11
+========================
+* protocol: add support for the VP8 and h264 video codecs
+* protocol: add unix GL scanout messages
+* remove code generation scripts, moved back to spice-common
+* macros improvements, more type safety
+
+Major changes in 0.12.10
+========================
+* Add VD_AGENT_CAP_MONITORS_CONFIG_POSITION to handle multi-monitor
+ configurations that are not multi-head
+* Add protocol code generation scripts from spice-common
+* Endianness and compiler portability fixes (clang)
+
+Major changes in 0.12.9
+=======================
+* rename newly introduced SpiceImageCompress enum to SpiceImageCompression
+ as otherwise it was clashing with the definition used by older spice-server
+ releases, breaking QEMU build
+
+Major changes in 0.12.8
+=======================
+* add LZ4 support
+* add audio volume synchronization
+* deprecate unused vdi-dev
+* add 'preferred-compression' message/capability
+* add a new Windows driver escape code to send
+ monitors capability from guest to client
+
+Major changes in 0.12.7
+=======================
+* add support for Webdav channel
+* add support for the Opus codec
+
+Major changes in 0.12.6
+=======================
+* add adaptive video streaming support:
+ control playback latency and receive playback
+ reports from the client.
+* add agent capabilities for signaling guest line ending.
+
+Major changes in 0.12.5
+=======================
+* Add agent file xfer success status
+* Add a client-disconnected agent message
+
+Major changes in 0.12.4
+=======================
+* Add agent file copy support.
+* Add agent sparse monitors capability.
+* Add controller proxy message.
+
+Major changes in 0.12.3
+=======================
+* Add a generic "port" channel
+
+Major changes in 0.12.2
+=======================
+* Add A8 surface capability in display channel.
+* Add to qxl device support for:
+ * client present
+ * client capabilities
+ * client monitors configuration
+
+Major changes in 0.12.1
+=======================
+* Support seamless migration.
+* New QXLComposite message for better X support.
+* Support arbitrary scancode message INPUTS_KEY_SCANCODE.
+
+Major changes in 0.12.0
+=======================
+* Add support for arbitrary resolution on Windows QXL with
+ QXL_ESCAPE_SET_CUSTOM_DISPLAY
+* Add support for arbitrary resolution and multiple monitor per
+ display channel with QXLMonitorsConfig and co
+* build cleanup
+
+Major changes in 0.10.3 (0.10.2 was never released)
+===================================================
+* Add support for video streams with differently sized (wxh) data
+* Add controller messages for USB redirection, COLOR_DEPTH, DISABLE_EFFECTS,
+ and ENABLE_SMARTCARD
+* Add name & uuid messages on main channel
+* some cleanups
+* Fixes RHBZ#815422, RHBZ#807295, RHBZ#787447
+
+Major changes in 0.10.1
+=======================
+* Add support for a header without sublist and serial (mini header)
+
+Major changes in 0.10.0
+=======================
+* no changes, released to match version with spice
+
+Major changes in 0.9.1 (same as 0.8.2 in 0.8 branch)
+======================
+* Add support for semi-seamless migration
+
+Major changes in 0.9.0
+======================
+* Add support for generic spicevmc chardev passthrough messages
+* Add USB redirection channel
+
+Major changes in 0.8.1
+======================
+* Add support for volume change
+* Add support for async guest io writes and interrupt
+* Add support for suspend related guest io writes
+* Add support for interrupt indicating guest bug
+
+Major changes in 0.8.0
+======================
+* Add support for different clipboards (selections) to vd_agent copy paste
+* Add support for using different authentication mechanisms (just SASL for now)
+
+Major changes in 0.7.1
+======================
+* Add some enums for the xorg qxl driver
+* Some other small fixes
+
+Major changes in 0.7.0
+======================
+* Add smartcard channel
+
+Major changes in 0.6.4
+======================
+* Make controller client protocol menu text UTF8 rather then 16 bit unicode
+
+Major changes in 0.6.3:
+=======================
+* Add support for copy and paste to the agent protocol
+* Add foreign-menu and external controller client protocol headers
+
+Major changes in 0.6.2:
+=======================
+* Skipped to stay in sync with spice
+
+Major changes in 0.6.1:
+=======================
+* Added compat flag for 16bpp commands
+
+Major changes in 0.6.0:
+=======================
+* Initial messages for clipboard sharing
+* Move agent protocol structs from spice to spice-protocol
+* Add capabilities to agent protocol
+
+Major changes in 0.5.3:
+=======================
+
+Network major number changed to 2 to reflect that the network
+protocol is now stable and backwards compatible from this point.
+
+Some vdagent messages for display settings and clipboard sharing
+were added.
+
+Major changes in 0.5.2:
+=======================
+
+This is the first release of the unstable 0.5.x series leading up to 0.6.
+This module was split out of spice so that e.g. drivers and qemu can
+get the types and constants they need without using the full spice
+codebase.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/INSTALL new/spice-protocol-0.14.0/INSTALL
--- old/spice-protocol-0.12.14/INSTALL 2018-06-01 10:10:31.000000000 +0200
+++ new/spice-protocol-0.14.0/INSTALL 1970-01-01 01:00:00.000000000 +0100
@@ -1,368 +0,0 @@
-Installation Instructions
-*************************
-
- Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
-Foundation, Inc.
-
- Copying and distribution of this file, with or without modification,
-are permitted in any medium without royalty provided the copyright
-notice and this notice are preserved. This file is offered as-is,
-without warranty of any kind.
-
-Basic Installation
-==================
-
- Briefly, the shell command './configure && make && make install'
-should configure, build, and install this package. The following
-more-detailed instructions are generic; see the 'README' file for
-instructions specific to this package. Some packages provide this
-'INSTALL' file but do not implement all of the features documented
-below. The lack of an optional feature in a given package is not
-necessarily a bug. More recommendations for GNU packages can be found
-in *note Makefile Conventions: (standards)Makefile Conventions.
-
- The 'configure' shell script attempts to guess correct values for
-various system-dependent variables used during compilation. It uses
-those values to create a 'Makefile' in each directory of the package.
-It may also create one or more '.h' files containing system-dependent
-definitions. Finally, it creates a shell script 'config.status' that
-you can run in the future to recreate the current configuration, and a
-file 'config.log' containing compiler output (useful mainly for
-debugging 'configure').
-
- It can also use an optional file (typically called 'config.cache' and
-enabled with '--cache-file=config.cache' or simply '-C') that saves the
-results of its tests to speed up reconfiguring. Caching is disabled by
-default to prevent problems with accidental use of stale cache files.
-
- If you need to do unusual things to compile the package, please try
-to figure out how 'configure' could check whether to do them, and mail
-diffs or instructions to the address given in the 'README' so they can
-be considered for the next release. If you are using the cache, and at
-some point 'config.cache' contains results you don't want to keep, you
-may remove or edit it.
-
- The file 'configure.ac' (or 'configure.in') is used to create
-'configure' by a program called 'autoconf'. You need 'configure.ac' if
-you want to change it or regenerate 'configure' using a newer version of
-'autoconf'.
-
- The simplest way to compile this package is:
-
- 1. 'cd' to the directory containing the package's source code and type
- './configure' to configure the package for your system.
-
- Running 'configure' might take a while. While running, it prints
- some messages telling which features it is checking for.
-
- 2. Type 'make' to compile the package.
-
- 3. Optionally, type 'make check' to run any self-tests that come with
- the package, generally using the just-built uninstalled binaries.
-
- 4. Type 'make install' to install the programs and any data files and
- documentation. When installing into a prefix owned by root, it is
- recommended that the package be configured and built as a regular
- user, and only the 'make install' phase executed with root
- privileges.
-
- 5. Optionally, type 'make installcheck' to repeat any self-tests, but
- this time using the binaries in their final installed location.
- This target does not install anything. Running this target as a
- regular user, particularly if the prior 'make install' required
- root privileges, verifies that the installation completed
- correctly.
-
- 6. You can remove the program binaries and object files from the
- source code directory by typing 'make clean'. To also remove the
- files that 'configure' created (so you can compile the package for
- a different kind of computer), type 'make distclean'. There is
- also a 'make maintainer-clean' target, but that is intended mainly
- for the package's developers. If you use it, you may have to get
- all sorts of other programs in order to regenerate files that came
- with the distribution.
-
- 7. Often, you can also type 'make uninstall' to remove the installed
- files again. In practice, not all packages have tested that
- uninstallation works correctly, even though it is required by the
- GNU Coding Standards.
-
- 8. Some packages, particularly those that use Automake, provide 'make
- distcheck', which can by used by developers to test that all other
- targets like 'make install' and 'make uninstall' work correctly.
- This target is generally not run by end users.
-
-Compilers and Options
-=====================
-
- Some systems require unusual options for compilation or linking that
-the 'configure' script does not know about. Run './configure --help'
-for details on some of the pertinent environment variables.
-
- You can give 'configure' initial values for configuration parameters
-by setting variables in the command line or in the environment. Here is
-an example:
-
- ./configure CC=c99 CFLAGS=-g LIBS=-lposix
-
- *Note Defining Variables::, for more details.
-
-Compiling For Multiple Architectures
-====================================
-
- You can compile the package for more than one kind of computer at the
-same time, by placing the object files for each architecture in their
-own directory. To do this, you can use GNU 'make'. 'cd' to the
-directory where you want the object files and executables to go and run
-the 'configure' script. 'configure' automatically checks for the source
-code in the directory that 'configure' is in and in '..'. This is known
-as a "VPATH" build.
-
- With a non-GNU 'make', it is safer to compile the package for one
-architecture at a time in the source code directory. After you have
-installed the package for one architecture, use 'make distclean' before
-reconfiguring for another architecture.
-
- On MacOS X 10.5 and later systems, you can create libraries and
-executables that work on multiple system types--known as "fat" or
-"universal" binaries--by specifying multiple '-arch' options to the
-compiler but only a single '-arch' option to the preprocessor. Like
-this:
-
- ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
- CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
- CPP="gcc -E" CXXCPP="g++ -E"
-
- This is not guaranteed to produce working output in all cases, you
-may have to build one architecture at a time and combine the results
-using the 'lipo' tool if you have problems.
-
-Installation Names
-==================
-
- By default, 'make install' installs the package's commands under
-'/usr/local/bin', include files under '/usr/local/include', etc. You
-can specify an installation prefix other than '/usr/local' by giving
-'configure' the option '--prefix=PREFIX', where PREFIX must be an
-absolute file name.
-
- You can specify separate installation prefixes for
-architecture-specific files and architecture-independent files. If you
-pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
-PREFIX as the prefix for installing programs and libraries.
-Documentation and other data files still use the regular prefix.
-
- In addition, if you use an unusual directory layout you can give
-options like '--bindir=DIR' to specify different values for particular
-kinds of files. Run 'configure --help' for a list of the directories
-you can set and what kinds of files go in them. In general, the default
-for these options is expressed in terms of '${prefix}', so that
-specifying just '--prefix' will affect all of the other directory
-specifications that were not explicitly provided.
-
- The most portable way to affect installation locations is to pass the
-correct locations to 'configure'; however, many packages provide one or
-both of the following shortcuts of passing variable assignments to the
-'make install' command line to change installation locations without
-having to reconfigure or recompile.
-
- The first method involves providing an override variable for each
-affected directory. For example, 'make install
-prefix=/alternate/directory' will choose an alternate location for all
-directory configuration variables that were expressed in terms of
-'${prefix}'. Any directories that were specified during 'configure',
-but not in terms of '${prefix}', must each be overridden at install time
-for the entire installation to be relocated. The approach of makefile
-variable overrides for each directory variable is required by the GNU
-Coding Standards, and ideally causes no recompilation. However, some
-platforms have known limitations with the semantics of shared libraries
-that end up requiring recompilation when using this method, particularly
-noticeable in packages that use GNU Libtool.
-
- The second method involves providing the 'DESTDIR' variable. For
-example, 'make install DESTDIR=/alternate/directory' will prepend
-'/alternate/directory' before all installation names. The approach of
-'DESTDIR' overrides is not required by the GNU Coding Standards, and
-does not work on platforms that have drive letters. On the other hand,
-it does better at avoiding recompilation issues, and works well even
-when some directory options were not specified in terms of '${prefix}'
-at 'configure' time.
-
-Optional Features
-=================
-
- If the package supports it, you can cause programs to be installed
-with an extra prefix or suffix on their names by giving 'configure' the
-option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
-
- Some packages pay attention to '--enable-FEATURE' options to
-'configure', where FEATURE indicates an optional part of the package.
-They may also pay attention to '--with-PACKAGE' options, where PACKAGE
-is something like 'gnu-as' or 'x' (for the X Window System). The
-'README' should mention any '--enable-' and '--with-' options that the
-package recognizes.
-
- For packages that use the X Window System, 'configure' can usually
-find the X include and library files automatically, but if it doesn't,
-you can use the 'configure' options '--x-includes=DIR' and
-'--x-libraries=DIR' to specify their locations.
-
- Some packages offer the ability to configure how verbose the
-execution of 'make' will be. For these packages, running './configure
---enable-silent-rules' sets the default to minimal output, which can be
-overridden with 'make V=1'; while running './configure
---disable-silent-rules' sets the default to verbose, which can be
-overridden with 'make V=0'.
-
-Particular systems
-==================
-
- On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC
-is not installed, it is recommended to use the following options in
-order to use an ANSI C compiler:
-
- ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
-
-and if that doesn't work, install pre-built binaries of GCC for HP-UX.
-
- HP-UX 'make' updates targets which have the same time stamps as their
-prerequisites, which makes it generally unusable when shipped generated
-files such as 'configure' are involved. Use GNU 'make' instead.
-
- On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
-parse its '<wchar.h>' header file. The option '-nodtk' can be used as a
-workaround. If GNU CC is not installed, it is therefore recommended to
-try
-
- ./configure CC="cc"
-
-and if that doesn't work, try
-
- ./configure CC="cc -nodtk"
-
- On Solaris, don't put '/usr/ucb' early in your 'PATH'. This
-directory contains several dysfunctional programs; working variants of
-these programs are available in '/usr/bin'. So, if you need '/usr/ucb'
-in your 'PATH', put it _after_ '/usr/bin'.
-
- On Haiku, software installed for all users goes in '/boot/common',
-not '/usr/local'. It is recommended to use the following options:
-
- ./configure --prefix=/boot/common
-
-Specifying the System Type
-==========================
-
- There may be some features 'configure' cannot figure out
-automatically, but needs to determine by the type of machine the package
-will run on. Usually, assuming the package is built to be run on the
-_same_ architectures, 'configure' can figure that out, but if it prints
-a message saying it cannot guess the machine type, give it the
-'--build=TYPE' option. TYPE can either be a short name for the system
-type, such as 'sun4', or a canonical name which has the form:
-
- CPU-COMPANY-SYSTEM
-
-where SYSTEM can have one of these forms:
-
- OS
- KERNEL-OS
-
- See the file 'config.sub' for the possible values of each field. If
-'config.sub' isn't included in this package, then this package doesn't
-need to know the machine type.
-
- If you are _building_ compiler tools for cross-compiling, you should
-use the option '--target=TYPE' to select the type of system they will
-produce code for.
-
- If you want to _use_ a cross compiler, that generates code for a
-platform different from the build platform, you should specify the
-"host" platform (i.e., that on which the generated programs will
-eventually be run) with '--host=TYPE'.
-
-Sharing Defaults
-================
-
- If you want to set default values for 'configure' scripts to share,
-you can create a site shell script called 'config.site' that gives
-default values for variables like 'CC', 'cache_file', and 'prefix'.
-'configure' looks for 'PREFIX/share/config.site' if it exists, then
-'PREFIX/etc/config.site' if it exists. Or, you can set the
-'CONFIG_SITE' environment variable to the location of the site script.
-A warning: not all 'configure' scripts look for a site script.
-
-Defining Variables
-==================
-
- Variables not defined in a site shell script can be set in the
-environment passed to 'configure'. However, some packages may run
-configure again during the build, and the customized values of these
-variables may be lost. In order to avoid this problem, you should set
-them in the 'configure' command line, using 'VAR=value'. For example:
-
- ./configure CC=/usr/local2/bin/gcc
-
-causes the specified 'gcc' to be used as the C compiler (unless it is
-overridden in the site shell script).
-
-Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
-Autoconf limitation. Until the limitation is lifted, you can use this
-workaround:
-
- CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
-
-'configure' Invocation
-======================
-
- 'configure' recognizes the following options to control how it
-operates.
-
-'--help'
-'-h'
- Print a summary of all of the options to 'configure', and exit.
-
-'--help=short'
-'--help=recursive'
- Print a summary of the options unique to this package's
- 'configure', and exit. The 'short' variant lists options used only
- in the top level, while the 'recursive' variant lists options also
- present in any nested packages.
-
-'--version'
-'-V'
- Print the version of Autoconf used to generate the 'configure'
- script, and exit.
-
-'--cache-file=FILE'
- Enable the cache: use and save the results of the tests in FILE,
- traditionally 'config.cache'. FILE defaults to '/dev/null' to
- disable caching.
-
-'--config-cache'
-'-C'
- Alias for '--cache-file=config.cache'.
-
-'--quiet'
-'--silent'
-'-q'
- Do not print messages saying which checks are being made. To
- suppress all normal output, redirect it to '/dev/null' (any error
- messages will still be shown).
-
-'--srcdir=DIR'
- Look for the package's source code in directory DIR. Usually
- 'configure' can determine that directory automatically.
-
-'--prefix=DIR'
- Use DIR as the installation prefix. *note Installation Names:: for
- more details, including other options available for fine-tuning the
- installation locations.
-
-'--no-create'
-'-n'
- Run the configure checks, but stop before creating any output
- files.
-
-'configure' also accepts some other, not widely useful, options. Run
-'configure --help' for more details.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/Makefile.am new/spice-protocol-0.14.0/Makefile.am
--- old/spice-protocol-0.12.14/Makefile.am 2018-06-01 10:06:28.000000000
+0200
+++ new/spice-protocol-0.14.0/Makefile.am 2019-04-12 15:54:46.000000000
+0200
@@ -22,6 +22,9 @@
`find "$(srcdir)" -type f -name Makefile.in -print` \
$(NULL)
-EXTRA_DIST = meson.build
+EXTRA_DIST = \
+ README.md \
+ CHANGELOG.md \
+ meson.build
-include $(top_srcdir)/git.mk
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/NEWS new/spice-protocol-0.14.0/NEWS
--- old/spice-protocol-0.12.14/NEWS 2018-06-01 10:09:57.000000000 +0200
+++ new/spice-protocol-0.14.0/NEWS 1970-01-01 01:00:00.000000000 +0100
@@ -1,188 +0,0 @@
-Major changes in 0.12.14
-========================
-* add stream-device protocol
-* add SPICE_SURFACE_FLAGS_STREAMING_MODE flag
-* add e2k (Elbrus 2000) architecture
-* add SPICE_MAX_NUM_STREAMS
-* add meson support
-* add bult-ins byte swapping for Visual C++
-* switch to built-ins byte swapping in GCC
-
-Major changes in 0.12.13
-========================
-* add DISPLAY_PREFERRED_VIDEO_CODEC_TYPE
-* add VP9 codec type
-* add VD_AGENT_CLEAR_CAPABILITY() macro
-* add VD_AGENT_CAP_FILE_XFER_DISABLED
-* add VD_AGENT_FILE_XFER_STATUS_NOT_ENOUGH_SPACE
-* add new file-xfer statuses for detailed error
-* Change enums.h license to MIT
-
-Major changes in 0.12.12
-========================
-* protocol: Add lz4 compression support to the SpiceVMC channel
-
-Major changes in 0.12.11
-========================
-* protocol: add support for the VP8 and h264 video codecs
-* protocol: add unix GL scanout messages
-* remove code generation scripts, moved back to spice-common
-* macros improvements, more type safety
-
-Major changes in 0.12.10
-========================
-* Add VD_AGENT_CAP_MONITORS_CONFIG_POSITION to handle multi-monitor
- configurations that are not multi-head
-* Add protocol code generation scripts from spice-common
-* Endianness and compiler portability fixes (clang)
-
-Major changes in 0.12.9
-=======================
-* rename newly introduced SpiceImageCompress enum to SpiceImageCompression
- as otherwise it was clashing with the definition used by older spice-server
- releases, breaking QEMU build
-
-Major changes in 0.12.8
-=======================
-* add LZ4 support
-* add audio volume synchronization
-* deprecate unused vdi-dev
-* add 'preferred-compression' message/capability
-* add a new Windows driver escape code to send
- monitors capability from guest to client
-
-Major changes in 0.12.7
-=======================
-* add support for Webdav channel
-* add support for the Opus codec
-
-Major changes in 0.12.6
-=======================
-* add adaptive video streaming support:
- control playback latency and receive playback
- reports from the client.
-* add agent capabilities for signaling guest line ending.
-
-Major changes in 0.12.5
-=======================
-* Add agent file xfer success status
-* Add a client-disconnected agent message
-
-Major changes in 0.12.4
-=======================
-* Add agent file copy support.
-* Add agent sparse monitors capability.
-* Add controller proxy message.
-
-Major changes in 0.12.3
-=======================
-* Add a generic "port" channel
-
-Major changes in 0.12.2
-=======================
-* Add A8 surface capability in display channel.
-* Add to qxl device support for:
- * client present
- * client capabilities
- * client monitors configuration
-
-Major changes in 0.12.1
-=======================
-* Support seamless migration.
-* New QXLComposite message for better X support.
-* Support arbitrary scancode message INPUTS_KEY_SCANCODE.
-
-Major changes in 0.12.0
-=======================
-* Add support for arbitrary resolution on Windows QXL with
- QXL_ESCAPE_SET_CUSTOM_DISPLAY
-* Add support for arbitrary resolution and multiple monitor per
- display channel with QXLMonitorsConfig and co
-* build cleanup
-
-Major changes in 0.10.3 (0.10.2 was never released)
-===================================================
-* Add support for video streams with differently sized (wxh) data
-* Add controller messages for USB redirection, COLOR_DEPTH, DISABLE_EFFECTS,
- and ENABLE_SMARTCARD
-* Add name & uuid messages on main channel
-* some cleanups
-* Fixes RHBZ#815422, RHBZ#807295, RHBZ#787447
-
-Major changes in 0.10.1
-=======================
-* Add support for a header without sublist and serial (mini header)
-
-Major changes in 0.10.0
-=======================
-* no changes, released to match version with spice
-
-Major changes in 0.9.1 (same as 0.8.2 in 0.8 branch)
-======================
-* Add support for semi-seamless migration
-
-Major changes in 0.9.0
-======================
-* Add support for generic spicevmc chardev passthrough messages
-* Add USB redirection channel
-
-Major changes in 0.8.1
-======================
-* Add support for volume change
-* Add support for async guest io writes and interrupt
-* Add support for suspend related guest io writes
-* Add support for interrupt indicating guest bug
-
-Major changes in 0.8.0
-======================
-* Add support for different clipboards (selections) to vd_agent copy paste
-* Add support for using different authentication mechanisms (just SASL for now)
-
-Major changes in 0.7.1
-======================
-* Add some enums for the xorg qxl driver
-* Some other small fixes
-
-Major changes in 0.7.0
-======================
-* Add smartcard channel
-
-Major changes in 0.6.4
-======================
-* Make controller client protocol menu text UTF8 rather then 16 bit unicode
-
-Major changes in 0.6.3:
-=======================
-* Add support for copy and paste to the agent protocol
-* Add foreign-menu and external controller client protocol headers
-
-Major changes in 0.6.2:
-=======================
-* Skipped to stay in sync with spice
-
-Major changes in 0.6.1:
-=======================
-* Added compat flag for 16bpp commands
-
-Major changes in 0.6.0:
-=======================
-* Initial messages for clipboard sharing
-* Move agent protocol structs from spice to spice-protocol
-* Add capabilities to agent protocol
-
-Major changes in 0.5.3:
-=======================
-
-Network major number changed to 2 to reflect that the network
-protocol is now stable and backwards compatible from this point.
-
-Some vdagent messages for display settings and clipboard sharing
-were added.
-
-Major changes in 0.5.2:
-=======================
-
-This is the first release of the unstable 0.5.x series leading up to 0.6.
-This module was split out of spice so that e.g. drivers and qemu can
-get the types and constants they need without using the full spice
-codebase.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/README.md new/spice-protocol-0.14.0/README.md
--- old/spice-protocol-0.12.14/README.md 1970-01-01 01:00:00.000000000
+0100
+++ new/spice-protocol-0.14.0/README.md 2019-04-12 15:54:46.000000000 +0200
@@ -0,0 +1,27 @@
+spice-protocol
+==============
+
+The protocol definition for [SPICE] project used by:
+* [spice-server]: A server side library used by [QEMU] and [x11spice];
+* [spice-gtk]: A client side library used by [virt-viewer and virt-manager] and
+ [GNOME Boxes];
+* [linux/vd-agent] and [win32/vd-agent]: Guest components for Linux and Windows
+* [xf86-video-qxl], [gpu/drm/qxl], [win32/qxl], [win32/qxl-wddm-dod]: Guest
video
+ drivers;
+
+Please [report bugs] at Freedesktop's instance of Gitlab
+
+[SPICE]: https://spice-space.org
+[spice-server]: https://gitlab.freedesktop.org/spice/spice
+[QEMU]: https://www.qemu.org
+[x11spice]: https://gitlab.com/spice/x11spice
+[spice-gtk]: https://gitlab.freedesktop.org/spice/spice-gtk
+[virt-viewer and virt-manager]: https://virt-manager.org/
+[GNOME Boxes]: https://wiki.gnome.org/Apps/Boxes
+[linux/vd-agent]: https://gitlab.freedesktop.org/spice/linux/vd_agent
+[win32/vd-agent]: https://gitlab.freedesktop.org/spice/win32/vd_agent
+[xf86-video-qxl]: https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl
+[gpu/drm/qxl]:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/qxl
+[win32/qxl]: https://gitlab.freedesktop.org/spice/win32/qxl
+[win32/qxl-wddm-dod]: https://gitlab.freedesktop.org/spice/win32/qxl-wddm-dod
+[report bugs]: https://gitlab.freedesktop.org/spice/spice-protocol/issues/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/configure.ac new/spice-protocol-0.14.0/configure.ac
--- old/spice-protocol-0.12.14/configure.ac 2018-05-14 14:06:48.000000000
+0200
+++ new/spice-protocol-0.14.0/configure.ac 2019-04-12 15:54:46.000000000
+0200
@@ -1,15 +1,15 @@
AC_PREREQ([2.57])
m4_define([SPICE_MAJOR], 0)
-m4_define([SPICE_MINOR], 12)
-m4_define([SPICE_MICRO], 14)
+m4_define([SPICE_MINOR], 14)
+m4_define([SPICE_MICRO], 0)
AC_INIT(spice-protocol, [SPICE_MAJOR.SPICE_MINOR.SPICE_MICRO], [],
spice-protocol)
AC_CONFIG_MACRO_DIR([m4])
AM_CONFIG_HEADER([config.h])
-AM_INIT_AUTOMAKE([dist-bzip2])
+AM_INIT_AUTOMAKE([foreign dist-bzip2])
AM_MAINTAINER_MODE
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/meson.build new/spice-protocol-0.14.0/meson.build
--- old/spice-protocol-0.12.14/meson.build 2018-06-01 10:06:28.000000000
+0200
+++ new/spice-protocol-0.14.0/meson.build 2019-04-12 15:28:38.000000000
+0200
@@ -2,12 +2,14 @@
# project definition
#
project('spice-protocol', 'c',
- version : '0.12.14',
+ version : '0.14.0',
license : 'BSD',
meson_version : '>= 0.41.0')
subdir('spice')
+spice_protocol_dep = declare_dependency(include_directories :
include_directories('.'))
+
#
# spice-protocol.pc generation
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/missing new/spice-protocol-0.14.0/missing
--- old/spice-protocol-0.12.14/missing 2018-06-01 10:10:31.000000000 +0200
+++ new/spice-protocol-0.14.0/missing 2019-04-12 15:55:07.000000000 +0200
@@ -1,9 +1,9 @@
-#!/bin/sh
+#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <[email protected]>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
# 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/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -101,9 +101,9 @@
exit $st
fi
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
+perl_URL=https://www.perl.org/
+flex_URL=https://github.com/westes/flex
+gnu_software_URL=https://www.gnu.org/software
program_details ()
{
@@ -207,7 +207,7 @@
exit $st
# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/Makefile.am
new/spice-protocol-0.14.0/spice/Makefile.am
--- old/spice-protocol-0.12.14/spice/Makefile.am 2018-06-01
10:06:28.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/Makefile.am 2019-02-04 14:48:47.000000000
+0100
@@ -7,7 +7,6 @@
controller_prot.h \
end-packed.h \
enums.h \
- error_codes.h \
foreign_menu_prot.h \
ipc_ring.h \
macros.h \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/controller_prot.h
new/spice-protocol-0.14.0/spice/controller_prot.h
--- old/spice-protocol-0.12.14/spice/controller_prot.h 2018-05-14
14:06:48.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/controller_prot.h 2019-02-04
14:48:47.000000000 +0100
@@ -48,7 +48,7 @@
} ControllerMsg;
enum {
- //extrenal app -> spice client
+ //external app -> spice client
CONTROLLER_HOST = 1,
CONTROLLER_PORT,
CONTROLLER_SPORT,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/end-packed.h
new/spice-protocol-0.14.0/spice/end-packed.h
--- old/spice-protocol-0.12.14/spice/end-packed.h 2018-05-14
14:06:48.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/end-packed.h 2019-02-04
14:48:47.000000000 +0100
@@ -32,6 +32,7 @@
/* See start-packed.h for details */
#undef SPICE_ATTR_PACKED
+#undef SPICE_ATTR_ALIGNED
#if defined(__MINGW32__) || !defined(__GNUC__)
#pragma pack(pop)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/enums.h new/spice-protocol-0.14.0/spice/enums.h
--- old/spice-protocol-0.12.14/spice/enums.h 2018-05-14 14:06:48.000000000
+0200
+++ new/spice-protocol-0.14.0/spice/enums.h 2019-04-04 10:42:57.000000000
+0200
@@ -119,21 +119,6 @@
SPICE_MOUSE_MODE_MASK = 0x3
} SpiceMouseMode;
-typedef enum SpicePubkeyType {
- SPICE_PUBKEY_TYPE_INVALID,
- SPICE_PUBKEY_TYPE_RSA,
- SPICE_PUBKEY_TYPE_RSA2,
- SPICE_PUBKEY_TYPE_DSA,
- SPICE_PUBKEY_TYPE_DSA1,
- SPICE_PUBKEY_TYPE_DSA2,
- SPICE_PUBKEY_TYPE_DSA3,
- SPICE_PUBKEY_TYPE_DSA4,
- SPICE_PUBKEY_TYPE_DH,
- SPICE_PUBKEY_TYPE_EC,
-
- SPICE_PUBKEY_TYPE_ENUM_END
-} SpicePubkeyType;
-
typedef enum SpiceDataCompressionType {
SPICE_DATA_COMPRESSION_TYPE_NONE,
SPICE_DATA_COMPRESSION_TYPE_LZ4,
@@ -162,6 +147,7 @@
SPICE_VIDEO_CODEC_TYPE_VP8,
SPICE_VIDEO_CODEC_TYPE_H264,
SPICE_VIDEO_CODEC_TYPE_VP9,
+ SPICE_VIDEO_CODEC_TYPE_H265,
SPICE_VIDEO_CODEC_TYPE_ENUM_END
} SpiceVideoCodecType;
@@ -396,21 +382,6 @@
SPICE_AUDIO_FMT_ENUM_END
} SpiceAudioFmt;
-typedef enum SpiceTunnelServiceType {
- SPICE_TUNNEL_SERVICE_TYPE_INVALID,
- SPICE_TUNNEL_SERVICE_TYPE_GENERIC,
- SPICE_TUNNEL_SERVICE_TYPE_IPP,
-
- SPICE_TUNNEL_SERVICE_TYPE_ENUM_END
-} SpiceTunnelServiceType;
-
-typedef enum SpiceTunnelIpType {
- SPICE_TUNNEL_IP_TYPE_INVALID,
- SPICE_TUNNEL_IP_TYPE_IPv4,
-
- SPICE_TUNNEL_IP_TYPE_ENUM_END
-} SpiceTunnelIpType;
-
typedef enum SpiceVscMessageType {
SPICE_VSC_MESSAGE_TYPE_Init = 1,
SPICE_VSC_MESSAGE_TYPE_Error,
@@ -613,33 +584,6 @@
};
enum {
- SPICE_MSG_TUNNEL_INIT = 101,
- SPICE_MSG_TUNNEL_SERVICE_IP_MAP,
- SPICE_MSG_TUNNEL_SOCKET_OPEN,
- SPICE_MSG_TUNNEL_SOCKET_FIN,
- SPICE_MSG_TUNNEL_SOCKET_CLOSE,
- SPICE_MSG_TUNNEL_SOCKET_DATA,
- SPICE_MSG_TUNNEL_SOCKET_CLOSED_ACK,
- SPICE_MSG_TUNNEL_SOCKET_TOKEN,
-
- SPICE_MSG_END_TUNNEL
-};
-
-enum {
- SPICE_MSGC_TUNNEL_SERVICE_ADD = 101,
- SPICE_MSGC_TUNNEL_SERVICE_REMOVE,
- SPICE_MSGC_TUNNEL_SOCKET_OPEN_ACK,
- SPICE_MSGC_TUNNEL_SOCKET_OPEN_NACK,
- SPICE_MSGC_TUNNEL_SOCKET_FIN,
- SPICE_MSGC_TUNNEL_SOCKET_CLOSED,
- SPICE_MSGC_TUNNEL_SOCKET_CLOSED_ACK,
- SPICE_MSGC_TUNNEL_SOCKET_DATA,
- SPICE_MSGC_TUNNEL_SOCKET_TOKEN,
-
- SPICE_MSGC_END_TUNNEL
-};
-
-enum {
SPICE_MSG_SMARTCARD_DATA = 101,
SPICE_MSG_END_SMARTCARD
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/error_codes.h
new/spice-protocol-0.14.0/spice/error_codes.h
--- old/spice-protocol-0.12.14/spice/error_codes.h 2018-05-14
14:06:48.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/error_codes.h 1970-01-01
01:00:00.000000000 +0100
@@ -1,51 +0,0 @@
-/*
- Copyright (C) 2009 Red Hat, Inc.
-
- 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.
-*/
-
-#ifndef _H_SPICE_ERROR_CODES
-#define _H_SPICE_ERROR_CODES
-
-#define SPICEC_ERROR_CODE_SUCCESS 0
-#define SPICEC_ERROR_CODE_ERROR 1
-#define SPICEC_ERROR_CODE_GETHOSTBYNAME_FAILED 2
-#define SPICEC_ERROR_CODE_CONNECT_FAILED 3
-#define SPICEC_ERROR_CODE_SOCKET_FAILED 4
-#define SPICEC_ERROR_CODE_SEND_FAILED 5
-#define SPICEC_ERROR_CODE_RECV_FAILED 6
-#define SPICEC_ERROR_CODE_SSL_ERROR 7
-#define SPICEC_ERROR_CODE_NOT_ENOUGH_MEMORY 8
-#define SPICEC_ERROR_CODE_AGENT_TIMEOUT 9
-#define SPICEC_ERROR_CODE_AGENT_ERROR 10
-#define SPICEC_ERROR_CODE_VERSION_MISMATCH 11
-#define SPICEC_ERROR_CODE_PERMISSION_DENIED 12
-#define SPICEC_ERROR_CODE_INVALID_ARG 13
-#define SPICEC_ERROR_CODE_CMD_LINE_ERROR 14
-
-#endif /* _H_SPICE_ERROR_CODES */
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/foreign_menu_prot.h
new/spice-protocol-0.14.0/spice/foreign_menu_prot.h
--- old/spice-protocol-0.12.14/spice/foreign_menu_prot.h 2018-05-14
14:06:48.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/foreign_menu_prot.h 2019-02-04
14:48:47.000000000 +0100
@@ -43,7 +43,7 @@
} FrgMenuMsg;
enum {
- //extrenal app -> spice client
+ //external app -> spice client
FOREIGN_MENU_SET_TITLE = 1,
FOREIGN_MENU_ADD_ITEM,
FOREIGN_MENU_MODIFY_ITEM,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/meson.build
new/spice-protocol-0.14.0/spice/meson.build
--- old/spice-protocol-0.12.14/spice/meson.build 2018-06-01
10:06:28.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/meson.build 2019-02-04 14:48:47.000000000
+0100
@@ -3,7 +3,6 @@
'controller_prot.h',
'end-packed.h',
'enums.h',
- 'error_codes.h',
'foreign_menu_prot.h',
'ipc_ring.h',
'macros.h',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/protocol.h
new/spice-protocol-0.14.0/spice/protocol.h
--- old/spice-protocol-0.12.14/spice/protocol.h 2018-06-01 10:06:28.000000000
+0200
+++ new/spice-protocol-0.14.0/spice/protocol.h 2019-02-04 14:48:47.000000000
+0100
@@ -149,6 +149,7 @@
SPICE_DISPLAY_CAP_CODEC_H264,
SPICE_DISPLAY_CAP_PREF_VIDEO_CODEC_TYPE,
SPICE_DISPLAY_CAP_CODEC_VP9,
+ SPICE_DISPLAY_CAP_CODEC_H265,
};
enum {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/qxl_dev.h
new/spice-protocol-0.14.0/spice/qxl_dev.h
--- old/spice-protocol-0.12.14/spice/qxl_dev.h 2018-05-14 14:06:48.000000000
+0200
+++ new/spice-protocol-0.14.0/spice/qxl_dev.h 2019-02-04 14:48:47.000000000
+0100
@@ -253,7 +253,7 @@
#define QXL_INTERRUPT_CLIENT_MONITORS_CONFIG (1 << 5)
/* qxl-1 compat: append only */
-typedef struct SPICE_ATTR_PACKED QXLRam {
+typedef struct SPICE_ATTR_ALIGNED(4) SPICE_ATTR_PACKED QXLRam {
uint32_t magic;
uint32_t int_pending;
uint32_t int_mask;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/start-packed.h
new/spice-protocol-0.14.0/spice/start-packed.h
--- old/spice-protocol-0.12.14/spice/start-packed.h 2018-05-14
14:06:48.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/start-packed.h 2019-02-04
14:48:47.000000000 +0100
@@ -48,6 +48,7 @@
#ifdef __GNUC__
#define SPICE_ATTR_PACKED __attribute__ ((__packed__))
+#define SPICE_ATTR_ALIGNED(n) __attribute__ ((__aligned__ (n)))
#ifdef __MINGW32__
#pragma pack(push,1)
@@ -58,6 +59,7 @@
#pragma pack(push)
#pragma pack(1)
#define SPICE_ATTR_PACKED
+#define SPICE_ATTR_ALIGNED(n) __declspec (align (n))
#pragma warning(disable:4200)
#pragma warning(disable:4103)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/stats.h new/spice-protocol-0.14.0/spice/stats.h
--- old/spice-protocol-0.12.14/spice/stats.h 2018-05-14 14:06:48.000000000
+0200
+++ new/spice-protocol-0.14.0/spice/stats.h 2019-02-04 14:48:47.000000000
+0100
@@ -62,6 +62,8 @@
uint32_t generation;
uint32_t num_of_nodes;
uint32_t root_index;
+ /* to avoid holes in the structure on some platforms */
+ uint32_t padding;
SpiceStatNode nodes[];
} SpiceStat;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/stream-device.h
new/spice-protocol-0.14.0/spice/stream-device.h
--- old/spice-protocol-0.12.14/spice/stream-device.h 2018-06-01
10:06:28.000000000 +0200
+++ new/spice-protocol-0.14.0/spice/stream-device.h 2019-02-04
14:48:47.000000000 +0100
@@ -90,6 +90,8 @@
STREAM_TYPE_CURSOR_SET,
/* guest cursor position */
STREAM_TYPE_CURSOR_MOVE,
+ /* the graphics device display information message (device address and
display id) */
+ STREAM_TYPE_DEVICE_DISPLAY_INFO,
} StreamMsgType;
typedef enum StreamCapabilities {
@@ -140,6 +142,35 @@
uint8_t data[0];
} StreamMsgData;
+/* This message contains information about the graphics device and monitor
+ * belonging to a particular video stream (which maps to a channel) from
+ * the streaming agent.
+ *
+ * The device_address is the hardware address of the device (e.g. PCI),
+ * device_display_id is the id of the monitor on the device.
+ *
+ * The supported device address format is:
+ * "pci/<DOMAIN>/<SLOT>.<FUNCTION>/.../<SLOT>.<FUNCTION>"
+ *
+ * The "pci" identifies the rest of the string as a PCI address. It is the only
+ * supported address at the moment, other identifiers can be introduced later.
+ * <DOMAIN> is the PCI domain, followed by <SLOT>.<FUNCTION> of any PCI bridges
+ * in the chain leading to the device. The last <SLOT>.<FUNCTION> is the
+ * graphics device. All of <DOMAIN>, <SLOT>, <FUNCTION> are hexadecimal numbers
+ * with the following number of digits:
+ * <DOMAIN>: 4
+ * <SLOT>: 2
+ * <FUNCTION>: 1
+ *
+ * Sent from the streaming agent to the server.
+ */
+typedef struct StreamMsgDeviceDisplayInfo {
+ uint32_t stream_id;
+ uint32_t device_display_id;
+ uint32_t device_address_len;
+ uint8_t device_address[0]; // a zero-terminated string
+} StreamMsgDeviceDisplayInfo;
+
/* Tell to stop current stream and possibly start a new one.
* This message is sent by the host to the guest.
* Allows to communicate the codecs supported by the clients.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/spice-protocol-0.12.14/spice/vd_agent.h
new/spice-protocol-0.14.0/spice/vd_agent.h
--- old/spice-protocol-0.12.14/spice/vd_agent.h 2018-06-01 10:07:49.000000000
+0200
+++ new/spice-protocol-0.14.0/spice/vd_agent.h 2019-02-04 14:48:47.000000000
+0100
@@ -91,6 +91,7 @@
VD_AGENT_CLIENT_DISCONNECTED,
VD_AGENT_MAX_CLIPBOARD,
VD_AGENT_AUDIO_VOLUME_SYNC,
+ VD_AGENT_GRAPHICS_DEVICE_INFO,
VD_AGENT_END_MESSAGE,
};
@@ -248,6 +249,27 @@
uint16_t volume[0];
} VDAgentAudioVolumeSync;
+typedef struct SPICE_ATTR_PACKED VDAgentDeviceDisplayInfo {
+ uint32_t channel_id;
+ uint32_t monitor_id;
+ uint32_t device_display_id;
+ uint32_t device_address_len;
+ uint8_t device_address[0]; // a zero-terminated string
+} VDAgentDeviceDisplayInfo;
+
+
+/* This message contains the mapping of (channel_id, monitor_id) pair to a
+ * "physical" (virtualized) device and its monitor identified by device_address
+ * and device_display_id.
+ *
+ * It's used on the vd_agent to identify the guest monitors for the
+ * mouse_position and monitors_config messages.
+ */
+typedef struct SPICE_ATTR_PACKED VDAgentGraphicsDeviceInfo {
+ uint32_t count;
+ VDAgentDeviceDisplayInfo display_info[0];
+} VDAgentGraphicsDeviceInfo;
+
enum {
VD_AGENT_CAP_MOUSE_STATE = 0,
VD_AGENT_CAP_MONITORS_CONFIG,
@@ -264,6 +286,7 @@
VD_AGENT_CAP_MONITORS_CONFIG_POSITION,
VD_AGENT_CAP_FILE_XFER_DISABLED,
VD_AGENT_CAP_FILE_XFER_DETAILED_ERRORS,
+ VD_AGENT_CAP_GRAPHICS_DEVICE_INFO,
VD_AGENT_END_CAP,
};