spice/server
Christophe Fergeau edce17a574 Fix spice-server/qemu channel version checks
When qemu creates a channel, reds.c contains code to check the
minor/major channel versions known to QEMU (ie the ones that were
current in spice-server when QEMU was compiled) and to compare these
versions against the current ones the currently installed spice-server
version.

According to kraxel [1], the rules for these interface numbers are:

"The purpose of the versions is exactly to avoid the need for a new
soname.  The rules are basically:

   (1) You add stuff to the interface, strictly append-only to not break
       binary compatibility.
   (2) You bump the minor version of the interface.
   (3) You check the minor version at runtime to figure whenever the
       added fields contain valid stuff or not.

An example is here (core interface, minor goes from 2 to 3, new
channel_event callback):

http://cgit.freedesktop.org/spice/spice/commit/?id=97f33fa86aa6edd25111b173dc0d9599ac29f879
"

The code currently refuses to create a channel if QEMU minor version is
less than the current spice-server version. This does not correspond
to the intended behaviour, this patch changes to fail is qemu was compiled
with a spice-server that is *newer* than the one currently installed. This
case is something we cannot support nicely.

[1] http://lists.freedesktop.org/archives/spice-devel/2011-July/004440.html
2011-07-21 15:09:29 +03:00
..
tests server/tests remove useless assignment 2011-07-21 15:09:27 +03:00
.gitignore gitignore: add generated_*, vim temps, pyc 2010-11-08 16:06:55 +02:00
agent-msg-filter.c server: add discard all option to agent message filter 2011-04-01 14:22:44 +02:00
agent-msg-filter.h server: add discard all option to agent message filter 2011-04-01 14:22:44 +02:00
char_device.h server: add char_device.h header, use in reds.c 2010-12-06 18:09:14 +02:00
demarshallers.h Add destructor for demarshalled messages 2010-06-22 10:53:24 +02:00
glz_encode_match_tmpl.c Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encode_tmpl.c Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encoder_config.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
glz_encoder_dictionary_protected.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encoder_dictionary.c Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encoder_dictionary.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encoder.c Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_encoder.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
jpeg_encoder.c client/server: warning fixes (gcc 4.6.0) 2011-01-27 12:48:25 +02:00
jpeg_encoder.h JPEG support: introducing jpeg encoding for spice bitmaps 2010-06-09 11:40:25 +02:00
Makefile.am build: add --with-sasl 2011-07-21 15:09:26 +03:00
mjpeg_encoder.c Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
mjpeg_encoder.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
red_bitmap_utils.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
red_channel.c server: rename s/peer/stream 2011-07-21 15:09:26 +03:00
red_channel.h server: rename s/peer/stream 2011-07-21 15:09:26 +03:00
red_client_cache.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
red_client_shared_cache.h support for lossy images in the pixmap cache and fill bits 2010-06-09 11:41:01 +02:00
red_common.h Make all message structs internal to spice 2010-06-18 20:27:32 +02:00
red_dispatcher.c server: rename s/peer/stream 2011-07-21 15:09:26 +03:00
red_dispatcher.h QXL: redesign. 2010-05-19 11:22:06 +02:00
red_memslots.c improve memory slot error logging. 2010-06-29 12:30:19 +02:00
red_memslots.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
red_parse_qxl.c client/server: warning fixes (gcc 4.6.0) 2011-01-27 12:48:25 +02:00
red_parse_qxl.h move command flags handling to the qxl parser 2010-09-14 10:41:49 +02:00
red_tunnel_worker.c server: rename s/peer/stream 2011-07-21 15:09:26 +03:00
red_tunnel_worker.h server: Unset executable bit of red_tunnel_worker.h 2011-07-21 15:09:28 +03:00
red_worker.c server: fix access to a released drawable. RHBZ #713474 2011-07-21 15:09:28 +03:00
red_worker.h server: enabling/disabling jpeg and zlib-over-glz via spice command line args 2010-07-14 12:16:23 +03:00
reds.c Fix spice-server/qemu channel version checks 2011-07-21 15:09:29 +03:00
reds.h server: add SASL support 2011-07-21 15:09:27 +03:00
smartcard.c server/smartcard: register channel only when hardware is available 2011-07-21 15:09:28 +03:00
smartcard.h add missing "LGPLv2.1 or later" header to source files 2011-07-21 15:09:28 +03:00
snd_worker.c server: add reds_channel_dispose() 2011-07-21 15:09:26 +03:00
snd_worker.h zap vd_interface.h 2010-05-19 11:22:07 +02:00
spice-experimental.h move chardevs out of experimental 2010-12-16 09:17:42 +01:00
spice-server.syms server: add symbol versioning to the spice server shared library. 2011-07-19 14:41:10 +02:00
spice.h server: add SASL support 2011-07-21 15:09:27 +03:00
stat.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
zlib_encoder.c add missing "LGPLv2.1 or later" header to source files 2011-07-21 15:09:28 +03:00
zlib_encoder.h applying zlib compression over glz on WAN connection 2010-06-21 15:05:37 +02:00