Commit Graph

384 Commits

Author SHA1 Message Date
Gerd Hoffmann
e03e4f0fc9 qxl abi: parse QXLSurfaceCmd. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
5de492e930 qxl abi: parse QXLMessage. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
fada35a173 qxl abi: parse QXLUpdateCmd. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
b081ec4b04 qxl abi: parse QXLClip. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
948806b583 qxl abi: parse QXLLineAttr. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
49f77eec2e qxl abi: parse QXLPattern. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
4de61f2dd8 qxl abi: parse QXLBrush. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
45ba74c795 qxl abi: parse QXLQMask. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
387f80422f qxl abi: parse QXLBlackness+QXLInvers+QXLWhiteness. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
21fffa15e1 qxl abi: parse QXLText. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
b39b130a84 qxl abi: parse QXLStroke. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
c26b574b40 qxl abi: parse QXLRop3. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
dffb0401e7 qxl abi: parse QXLTransparent. 2010-06-29 12:30:20 +02:00
Gerd Hoffmann
e81c6ef7c4 qxl abi: parse QXLCopy + QXLBlend.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
63e07be145 qxl abi: add missing QXLCopyBits 2010-06-29 12:30:19 +02:00
Gerd Hoffmann
08cfd6beaf qxl abi: parse QXLOpaque.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
ef3e20e29f qxl abi: parse QXLFill.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
85155b3f44 qxl abi: parse QXLAlphaBlnd (+Compat) 2010-06-29 12:30:19 +02:00
Gerd Hoffmann
856e2ba355 qxl abi: parse QXLCompatDrawable. 2010-06-29 12:30:19 +02:00
Gerd Hoffmann
11034dda42 qxl abi: parse QXLDrawable. 2010-06-29 12:30:19 +02:00
Gerd Hoffmann
c17fdfd053 improve memory slot error logging. 2010-06-29 12:30:19 +02:00
Alexander Larsson
7e26ff3c26 Replace log4cpp with custom log function
Also prints a simpler error to stderr for WARN or above so that
we print something on the commandline if something go wrong.
2010-06-28 21:54:53 +02:00
Alexander Larsson
b08b80d13f Fix build error due to member "SpiceMsgEmpty" same name as type 2010-06-28 12:45:07 +02:00
Alexander Larsson
897e5633c2 spice.proto: surface_create.format is of type surface_fmt 2010-06-24 14:33:06 +02:00
Alexander Larsson
7a9c42704f Use smaller size for enums and flags on the network
This makes the protocol more compact. This was mainly done for the commonly
used types. Some seldom used ones are still 32bit for future compatibility.
2010-06-24 14:31:01 +02:00
Alexander Larsson
9655dc30e9 Remove support for clip by path
This is not supported currently anyway and was not generated before.
2010-06-24 14:30:00 +02:00
Alexander Larsson
9c504f23ef spice.proto: No need for @ptr32 as that is now the default 2010-06-23 16:35:09 +02:00
Alexander Larsson
054c88b125 spice.proto: Don't use @fixedsize for Brush
There is no reason to send the maximum size on the network, that is just
a waste of space most of the time.
2010-06-23 16:33:07 +02:00
Alexander Larsson
0c0b4f9e84 Don't send zero data item for clips with no data 2010-06-23 16:33:07 +02:00
Alexander Larsson
dc8625c7e1 Make pointers 32bit in new protocol format 2010-06-23 16:33:07 +02:00
Alexander Larsson
929245bacd marshaller: Correctly determine if switches are fixed size
Switches are fixed size only if all cases have the same size *and*
it has a default case or all the valid cases are listed.
2010-06-23 16:33:07 +02:00
Alexander Larsson
06fe6a91c2 Fix handling of @ptr32 network size 2010-06-23 16:33:07 +02:00
Alexander Larsson
10c16b3c82 Remove minor markup in unstable protocol as we're resetting minor to 0 2010-06-23 16:33:07 +02:00
Gerd Hoffmann
899a9df0e6 fix use-after-free in spice_marshaller_reset 2010-06-23 13:49:21 +02:00
Gerd Hoffmann
b6efc72001 drop bogous get_virt_delta calls 2010-06-23 13:49:21 +02:00
Alexander Larsson
eb3fe11d94 Fix version mismatch error on connect
Protocol is 0 (auto), 1 (old), or 2 (new). This is (apart from 0) the
same as the major number for the stable protocol. However, the current major
is ~(-1) to signify it being unstable, so don't use the major number as source
for setting or comparing protocol.
2010-06-23 12:18:41 +02:00
Alexander Larsson
f35ac2049a Fix screen resolution changes on old servers
* Correctly check for existing canvas 0
* Don't try to unlock the screen size if there is no active screen
2010-06-23 11:37:01 +02:00
Alexander Larsson
72cf104c28 client: Support connecting to a major==1 server 2010-06-22 17:34:45 +02:00
Alexander Larsson
652c13e71b Implement display_mode message needed for backwards compat 2010-06-22 17:34:45 +02:00
Alexander Larsson
2788b2ec46 Generate marshaller/demarshallers for old protocol 2010-06-22 17:34:39 +02:00
Alexander Larsson
ededfd7ebb Add spice1.proto describing the 0.4 version of the network protocolx 2010-06-22 16:31:40 +02:00
Alexander Larsson
381025b1c3 Add support for @virtual markup in spice protocol
This means the member is not sent on the network at all.
Instead its initialized to the attribute argument when demarshalled.

This is useful for backwards compatibility support.
2010-06-22 16:03:34 +02:00
Alexander Larsson
759a3d5446 Make internal generated marshaller functions static 2010-06-22 16:03:02 +02:00
Alexander Larsson
c621b2bdf1 Support extra prefix in code generators
This is require when we add a new spice.proto for the old (major 1)
protocol description.
2010-06-22 16:01:57 +02:00
Alexander Larsson
36fd22a9db Add more emacs mode headers 2010-06-22 12:03:21 +02:00
Alexander Larsson
5c05a24ba1 Convert client to use indirect calls for message marshalling
This is required to support multiple versions
2010-06-22 10:54:59 +02:00
Alexander Larsson
5341b632e2 Support creating marshallers that are called indirectly
This is needed if we want to switch marshallers depending on what
major version the remote side has.
2010-06-22 10:54:59 +02:00
Alexander Larsson
9123e24e7b Add destructor for demarshalled messages
This is required because we don't want to free messages that just
refer to the unparsed message (like SpiceMsgData).

Also, in the future we might need it for more complex demarshalling.
2010-06-22 10:53:24 +02:00
Yonit Halperin
ae1de849ac fix for not reseting client palette caches on migration 2010-06-21 15:18:46 +02:00
Yonit Halperin
537280f183 Lossy compression of RGBA images (on WAN connection)
The RGB channels are compressed using JPEG.
The alpha channel is compressed using LZ.
2010-06-21 15:18:26 +02:00