Alexander Larsson
c553fafe4b
Use generated demarshallers in server
2010-06-18 20:27:32 +02:00
Alexander Larsson
ec10a1662f
Generate demarshallers on server side
2010-06-18 20:27:32 +02:00
Alexander Larsson
4e44b7cf95
Make tunnel_service_add members be of cstring array size
2010-06-18 20:27:32 +02:00
Alexander Larsson
ee91ed475d
Switch client to use generated marshallers
2010-06-18 20:27:32 +02:00
Alexander Larsson
1302667662
Generate and link marshallers into client
2010-06-18 20:27:32 +02:00
Alexander Larsson
d9772344e6
Re-enable cache freeing
...
I don't know why this was disabled but it seems like a bad idea
2010-06-18 20:27:32 +02:00
Alexander Larsson
04e0c6e5b2
Convert reds.c to use SpiceMarshaller
2010-06-18 20:27:31 +02:00
Alexander Larsson
8418da7ab2
Convert snd_worker.c to use SpiceMarshaller and generated marshallers
2010-06-18 20:27:31 +02:00
Alexander Larsson
cfc86f3340
Convert red_worker.c to use SpiceMarshaller for marshalling
2010-06-18 20:27:31 +02:00
Alexander Larsson
e2728082d0
Generate marshallers in server
2010-06-18 20:27:27 +02:00
Alexander Larsson
c36efa5950
Use @ptr32 for 32bit offsets in spice.proto
2010-06-18 16:32:11 +02:00
Alexander Larsson
635ad37ee9
Add @nomarshal in a few places where we're marshalling manually
2010-06-18 16:32:11 +02:00
Alexander Larsson
a7284761be
spice.proto: add @outvar markup
...
With this we can reference pointer member with no naming conflicts
2010-06-18 16:32:11 +02:00
Alexander Larsson
936b3f01f9
Add support for generating message and structure marshallers
2010-06-18 16:32:11 +02:00
Alexander Larsson
0cca1ed2af
Add SpiceMarshaller for easy marshalling
2010-06-18 16:32:11 +02:00
Alexander Larsson
1a0b3fbdbb
Generate demarshalling code on win32 too
2010-06-18 16:32:11 +02:00
Alexander Larsson
4154d70289
Client: Use the autogenerated demarshallers
...
When a message has been read from the network we now pass it into
the generated demarshaller for the channel. The demarshaller converts
the network data to in-memory structures that is passed on to the
spice internals.
Additionally it also:
* Converts endianness
* Validates sizes of message and any pointers in it
* Localizes offsets (converts them to pointers)
* Checks for zero offsets in messages where they are not supported
Some of this was previously done using custom code in the client, this
is now removed.
2010-06-18 16:32:11 +02:00
Alexander Larsson
17bbef4df3
Generate demarshallers in client
2010-06-18 16:32:11 +02:00
Alexander Larsson
b228d18d5c
Add python code to automake system
2010-06-18 16:32:11 +02:00
Alexander Larsson
0366e7395c
Initial import of spice protocol description and demarshall generator
...
The "spice.proto" file describes in detail the networking prototcol
that spice uses and spice_codegen.py can parse this and generate
demarshallers for such network messages.
2010-06-18 16:32:10 +02:00
Alexander Larsson
aa6b7b5beb
Use the correctly spelled enum values from the new generated enums
2010-06-18 16:32:10 +02:00
Alexander Larsson
1ba1ce52ed
Use the new enums for keyboard modifier flags
2010-06-18 16:32:10 +02:00
Alexander Larsson
ef8a8dae07
There are multiple line attribute flags enums, use only one
2010-06-17 11:21:03 +02:00
Alexander Larsson
1d1792c217
Add spice_strnlen
2010-06-17 11:21:03 +02:00
Yonit Halperin
3d7c1eaa18
server: optimize red_pipe_replace_rendered_drawables_with_images (lossy bitmaps support related)
2010-06-09 11:43:31 +02:00
Yonit Halperin
8b02360033
init/destroy lossy surface region
2010-06-09 11:41:02 +02:00
Yonit Halperin
ba32024ad1
enabling jpeg on low bandwidth connection
2010-06-09 11:41:02 +02:00
Yonit Halperin
1a752e3884
not using jpeg when sending a surface to the client (the whole surface)
...
When a surface is sent to the client using red_send_surface_image, operations were already
performed on it. Thus it may combine, especially if it is a primary surface, both "picture-like" areas
and areas that are more "artificial". In order to avoid noticeable artifacts, such surface will be sent lossless.
2010-06-09 11:41:02 +02:00
Yonit Halperin
0c199b0886
send qxl commands to client: support for resending lossy components when jpeg compression is enabled
2010-06-09 11:41:02 +02:00
Yonit Halperin
c970f41f8e
infrastructure routines for resending to the client part of surfaces that have been sent lossy.
...
The code also handles cases in which the server doesn't hold anymore these surfaces parts, i.e., when
it holds a more updated version of them. This scenario is handled by replacing commands that were rendered, with images.
2010-06-09 11:41:02 +02:00
Yonit Halperin
5d01cae430
introducing lossy and lz compression in red_send_image
2010-06-09 11:41:02 +02:00
Yonit Halperin
2fc2f13be9
lossy surface regions in the client: infrastructure for tracking and updating
2010-06-09 11:41:02 +02:00
Yonit Halperin
5d2ae66f50
support for lossy images in the pixmap cache and fill bits
...
1) add an option to determine if a bitmap can be sent lossy to the client
2) when required, replacing lossy cache items with their correspending
lossless bitmaps
2010-06-09 11:41:01 +02:00
Yonit Halperin
263646a1f7
JPEG support: introducing jpeg encoding for spice bitmaps
2010-06-09 11:40:25 +02:00
Yonit Halperin
ea74fc6454
server: fix bitmap flags assignment in red_send_image
2010-06-09 11:25:44 +02:00
Alexander Larsson
3e989a361c
client: Only invalidate on screen if drawing to the primary surface
2010-06-09 11:16:48 +02:00
Gerd Hoffmann
b0bb395576
sound: code style fixups
2010-05-26 08:41:24 +02:00
Alexander Larsson
f9da2720ae
Fix some misspelled identifiers
...
severty -> severity
SpiceResorceID -> SpiceResourceID
SpiceResorceList -> SpiceResourceList
resorces -> resources
ped_size -> pad_size
postition -> position
2010-05-21 11:14:29 +02:00
Alexander Larsson
d69b0829a6
RedWorkeMessage -> RedWorkerMessage
2010-05-21 10:56:05 +02:00
Alexander Larsson
012bd25779
Fix spelling errors in comments and strings
2010-05-21 10:51:28 +02:00
Gerd Hoffmann
d351bb35ce
sound channels: restart audio on client reconnect.
2010-05-21 09:28:25 +02:00
Alexander Larsson
45e62d5368
Use the new byteswap macros from spice-protocol
2010-05-19 16:03:32 +02:00
Alexander Larsson
0b76eae6eb
Change leftover VD_INTERFACE_RECORD to SPICE_INTERFACE_RECORD
2010-05-19 14:55:41 +02:00
Alexander Larsson
2f10d6db46
Add missing backslash continuation in makefile
2010-05-19 12:30:00 +02:00
Gerd Hoffmann
d9084bfb64
Revert "[debug] migration troubleshooting"
...
This reverts commit 08927fabe5 .
2010-05-19 12:09:22 +02:00
Gerd Hoffmann
f67b2e7488
complete NetWireInterface redesign, make red_tunnel_worker.c build.
2010-05-19 11:44:40 +02:00
Gerd Hoffmann
9204a5903a
add spice-experimental.h
...
Supposed to be used for work-in-progress bits,
where interfaces are not finalized yet.
Moved over vdi port interface, tunnel interface
and spice client migration functions.
2010-05-19 11:22:08 +02:00
Gerd Hoffmann
981abd3fee
zap vd_interface.h
...
move over content to spice.h
2010-05-19 11:22:07 +02:00
Gerd Hoffmann
3f4d6c6ad6
vd_interface.h cleanups.
...
Drop leftover bits which are not used any more.
Rename DrawArea to QXLDrawArea.
2010-05-19 11:22:07 +02:00
Gerd Hoffmann
5b0bc279c9
NetWireInterface: redesign
2010-05-19 11:22:07 +02:00