Hello community,

here is the log from the commit of package spice-protocol for openSUSE:Factory 
checked in at 2019-05-22 10:51:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/spice-protocol (Old)
 and      /work/SRC/openSUSE:Factory/.spice-protocol.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "spice-protocol"

Wed May 22 10:51:38 2019 rev:25 rq:703828 version:0.14.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/spice-protocol/spice-protocol.changes    
2019-03-01 20:30:05.954001539 +0100
+++ /work/SRC/openSUSE:Factory/.spice-protocol.new.5148/spice-protocol.changes  
2019-05-22 10:51:39.727316375 +0200
@@ -1,0 +2,10 @@
+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
+
+-------------------------------------------------------------------

Old:
----
  spice-protocol-0.12.15.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.SIe78m/_old  2019-05-22 10:51:42.167314978 +0200
+++ /var/tmp/diff_new_pack.SIe78m/_new  2019-05-22 10:51:42.191314964 +0200
@@ -17,13 +17,15 @@
 
 
 Name:           spice-protocol
-Version:        0.12.15
+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
+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
@@ -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.15.tar.bz2 -> spice-protocol-0.14.0.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spice-protocol-0.12.15/CHANGELOG.md 
new/spice-protocol-0.14.0/CHANGELOG.md
--- old/spice-protocol-0.12.15/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' old/spice-protocol-0.12.15/INSTALL 
new/spice-protocol-0.14.0/INSTALL
--- old/spice-protocol-0.12.15/INSTALL  2019-01-11 18:00:22.000000000 +0100
+++ 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' old/spice-protocol-0.12.15/Makefile.am 
new/spice-protocol-0.14.0/Makefile.am
--- old/spice-protocol-0.12.15/Makefile.am      2018-05-15 16:00:26.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' old/spice-protocol-0.12.15/Makefile.in 
new/spice-protocol-0.14.0/Makefile.in
--- old/spice-protocol-0.12.15/Makefile.in      2019-01-11 18:33:15.000000000 
+0100
+++ new/spice-protocol-0.14.0/Makefile.in       2019-04-12 15:55:07.000000000 
+0200
@@ -186,8 +186,8 @@
 CSCOPE = cscope
 DIST_SUBDIRS = $(SUBDIRS)
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
-       $(srcdir)/spice-protocol.pc.in AUTHORS COPYING ChangeLog \
-       INSTALL NEWS README install-sh missing
+       $(srcdir)/spice-protocol.pc.in AUTHORS COPYING install-sh \
+       missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -326,7 +326,11 @@
        `find "$(srcdir)" -type f -name Makefile.in -print`     \
        $(NULL)
 
-EXTRA_DIST = meson.build
+EXTRA_DIST = \
+       README.md                                               \
+       CHANGELOG.md                                            \
+       meson.build
+
 all: config.h
        $(MAKE) $(AM_MAKEFLAGS) all-recursive
 
@@ -337,15 +341,15 @@
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
-             echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
-             $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
+             echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
+             $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
                && exit 0; \
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
        $(am__cd) $(top_srcdir) && \
-         $(AUTOMAKE) --gnu Makefile
+         $(AUTOMAKE) --foreign Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spice-protocol-0.12.15/NEWS 
new/spice-protocol-0.14.0/NEWS
--- old/spice-protocol-0.12.15/NEWS     2019-01-11 18:06:58.000000000 +0100
+++ new/spice-protocol-0.14.0/NEWS      1970-01-01 01:00:00.000000000 +0100
@@ -1,194 +0,0 @@
-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' old/spice-protocol-0.12.15/README.md 
new/spice-protocol-0.14.0/README.md
--- old/spice-protocol-0.12.15/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' old/spice-protocol-0.12.15/configure 
new/spice-protocol-0.14.0/configure
--- old/spice-protocol-0.12.15/configure        2019-01-11 18:33:15.000000000 
+0100
+++ new/spice-protocol-0.14.0/configure 2019-04-12 15:55:07.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for spice-protocol 0.12.15.
+# Generated by GNU Autoconf 2.69 for spice-protocol 0.14.0.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -576,8 +576,8 @@
 # Identity of this package.
 PACKAGE_NAME='spice-protocol'
 PACKAGE_TARNAME='spice-protocol'
-PACKAGE_VERSION='0.12.15'
-PACKAGE_STRING='spice-protocol 0.12.15'
+PACKAGE_VERSION='0.14.0'
+PACKAGE_STRING='spice-protocol 0.14.0'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1200,7 +1200,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures spice-protocol 0.12.15 to adapt to many kinds of 
systems.
+\`configure' configures spice-protocol 0.14.0 to adapt to many kinds of 
systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1266,7 +1266,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of spice-protocol 0.12.15:";;
+     short | recursive ) echo "Configuration of spice-protocol 0.14.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1343,7 +1343,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-spice-protocol configure 0.12.15
+spice-protocol configure 0.14.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1360,7 +1360,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by spice-protocol $as_me 0.12.15, which was
+It was created by spice-protocol $as_me 0.14.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2228,7 +2228,7 @@
 
 # Define the identity of the package.
  PACKAGE='spice-protocol'
- VERSION='0.12.15'
+ VERSION='0.14.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2905,7 +2905,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by spice-protocol $as_me 0.12.15, which was
+This file was extended by spice-protocol $as_me 0.14.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -2967,7 +2967,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-spice-protocol config.status 0.12.15
+spice-protocol config.status 0.14.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spice-protocol-0.12.15/configure.ac 
new/spice-protocol-0.14.0/configure.ac
--- old/spice-protocol-0.12.15/configure.ac     2019-01-11 18:33:12.000000000 
+0100
+++ 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], 15)
+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' old/spice-protocol-0.12.15/meson.build 
new/spice-protocol-0.14.0/meson.build
--- old/spice-protocol-0.12.15/meson.build      2019-01-11 18:33:12.000000000 
+0100
+++ new/spice-protocol-0.14.0/meson.build       2019-04-12 15:28:38.000000000 
+0200
@@ -2,7 +2,7 @@
 # project definition
 #
 project('spice-protocol', 'c',
-        version : '0.12.15',
+        version : '0.14.0',
         license : 'BSD',
         meson_version : '>= 0.41.0')
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spice-protocol-0.12.15/spice/Makefile.in 
new/spice-protocol-0.14.0/spice/Makefile.in
--- old/spice-protocol-0.12.15/spice/Makefile.in        2019-01-11 
18:33:15.000000000 +0100
+++ new/spice-protocol-0.14.0/spice/Makefile.in 2019-04-12 15:55:08.000000000 
+0200
@@ -274,9 +274,9 @@
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu spice/Makefile'; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign spice/Makefile'; \
        $(am__cd) $(top_srcdir) && \
-         $(AUTOMAKE) --gnu spice/Makefile
+         $(AUTOMAKE) --foreign spice/Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/spice-protocol-0.12.15/spice/enums.h 
new/spice-protocol-0.14.0/spice/enums.h
--- old/spice-protocol-0.12.15/spice/enums.h    2018-07-04 19:13:36.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,
@@ -397,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,
@@ -614,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' old/spice-protocol-0.12.15/spice/stats.h 
new/spice-protocol-0.14.0/spice/stats.h
--- old/spice-protocol-0.12.15/spice/stats.h    2015-11-10 22:44:28.000000000 
+0100
+++ 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' old/spice-protocol-0.12.15/spice/stream-device.h 
new/spice-protocol-0.14.0/spice/stream-device.h
--- old/spice-protocol-0.12.15/spice/stream-device.h    2018-05-15 
16:00:26.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' old/spice-protocol-0.12.15/spice/vd_agent.h 
new/spice-protocol-0.14.0/spice/vd_agent.h
--- old/spice-protocol-0.12.15/spice/vd_agent.h 2018-06-05 14:19:44.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,
 };
 


Reply via email to