[Spice-devel] Demarshaller work landed on master

Alexander Larsson alexl at redhat.com
Fri Jun 18 12:37:14 PDT 2010


After a lot of work I finally got the marshaller/demarshaller work in a
state where its interesting for others to look at and test. It works in
my testing on both linux and win32, between both pre-marshaller versions
(both ways) and between post-marshaller versions.

Python is now an additional dependency when building from git (not when
building from tarballs though). You also need the pyparsing module.

With this change all the enums in spice-protocol are autogenerated from
the spice.proto protocol description in spice, and all the spice message
structures have moved into spice as non-packed normal, private
structures as the network protocol is now described by the protocol
description rather than the C structures.

There are some things that are still not ideal due to all the types in
spice/draw.h being used in the qxl PCI ABI, so those could not be
internalized and changed. For instance, some of the image type use
inline data arrays which are unnecessarily copied in the current setup.
This will be fixed when we the qxl ABI is split out from the
spice-private structures and those can be changed.

Also, with this infrastructure in place we can now begin to use it to
make the network protocol better. Some obvious things I plan to do:

* Make all 64bit offsets 32bit
* Really leave out optional parts of messages (clip, mask, etc) on the
network when not used
* Drop use of offsets in some places and just put data inline

Some other changes we want to make are listed on
http://spice-space.org/page/ProtocolChanges

Anyway, please take a look at this, test it and look at the protocol
description to get a hang of how it works.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       alexl at redhat.com            alexander.larsson at gmail.com 
He's a world-famous bohemian cowboy who dotes on his loving old ma. She's a 
warm-hearted red-headed pearl diver with the power to see death. They fight 
crime! 



More information about the Spice-devel mailing list