[Spice-commits] Changes to 'wip2'
Marc-André Lureau
elmarco at kemper.freedesktop.org
Tue Mar 20 10:01:56 PDT 2012
New branch 'wip2' available with the following commits:
commit 644912222fa769d09fd051848ab41b2879c6ff51
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Tue Mar 20 12:53:30 2012 +0100
build-sys: make it a seperately buildable spice-common library
- autotoolize
- fix headers inclusion
- generate gitignores
commit 3df7798413bd554d97f1351c1dba16961f32c6fe
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jun 22 13:54:55 2011 +0200
use new @ifdef directive for smartcard messages
We don't want to conditionally compile the smartcard messages
depending on whether USE_SMARTCARD is set or not, we can now use
the @ifdef attribute for that.
commit 7f86151f18ae59376401085066e19fdd244dae18
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu May 5 16:39:23 2011 +0200
add smartcard bits to spice.proto
commit 69aecfc1bc4a957d6fa0edec5d65f7e0ed4cb0ad
Author: Hans de Goede <hdegoede at redhat.com>
Date: Fri Sep 30 11:19:38 2011 +0200
spice_codegen: Always write a channels entry for an ifdef-ed channel
Before this patch, if a channel is defined conditionally in spice.proto
(because it depends on external headers like the smartcard channel),
spice_codegen would write an entry to the channels array in
spice_get_*_channel_parser which would only take up a place in the array
if the ifdef condition is true, thus moving up all other intializers
one place when it is not true. This was causing issues (crashes) when building
spice-gtk with the combination of usbredir support enabled and smartcard
support disabled.
This patch fixes this by adding #else { NULL, 0 }, to the generated code.
Thanks to coolper chen <lixin.chen at saicocch.com> for reporting this!
Signed-off-by: Hans de Goede <hdegoede at redhat.com>
commit a7cc3c6a5661d1b7bd632b55161c219684419f83
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jun 22 13:26:15 2011 +0200
handle @ifdef on messages and channels
commit 7307fccb71ad55911800d2e183d4a8f879ffdb01
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jun 22 13:23:47 2011 +0200
allow attributes on channel elements in .proto files
We want to be able to add an @ifdef annotation to optional messages
For example, we want to compile in the smartcard messages only if
libcacard is available
commit eb01d2fc46430bcd6dd9f9017b0c7f0e9169285d
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jun 22 13:22:22 2011 +0200
add ifdef/endif methods to spice code generator
These methods will be needed to be able to make some fields optional
in spice.proto
commit 51cf6fce726bf1ebbfbbe7b01eda008bc6fa8ab5
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu May 5 17:57:33 2011 +0200
fix copy & paste error in ptypes.py
commit f7af6264eac996f0119acc92d809a43601d8fe40
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Tue Mar 20 02:28:20 2012 +0100
Add SPICE_ATTR_NORETURN and use it for a few functions
commit a1df67b3c576b6791a836ae58fde76bdf2ab58f7
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Thu Mar 15 15:57:04 2012 +0100
Fix build with SPICE_DISABLE_ABORT
commit 13fb823795c8e015bdace23edcda1715b60828df
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 23:22:46 2012 +0100
Remove need for SPICE_CANVAS_INTERNAL
Why is this useful?
commit 61c30fcdcf392465de67f4ac21799863cb584263
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 23:07:15 2012 +0100
fix void* arithmetic
marshaller.c:528:50: error: pointer of type 'void *' used in arithmetic [-Werror=pointer-arith]
commit f87bb23ad2a5caf5c1823367dc2248a83d91f3c0
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 22:40:53 2012 +0100
build: replace INCLUDES with AM_CPPFLAGS
Fix warning `INCLUDES' is the old name for `AM_CPPFLAGS' (or `*_CPPFLAGS')
commit fbb6b9984afc8983ce1fa1db6bdee2b1150631b5
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Fri Feb 10 15:03:31 2012 +0000
Add missing includes & make some functions static
A number of functions were used without prior declaration. In
some cases this was due to missing include files. In other cases
the functions should have just been static.
Ideally this would allow -Wmissing-declarations to be enabled, but
the files generated by spice_codegen.py will still trip up on this.
commit 985ec9d6ec56f15a72ec974ff2fd1f7bab68cd91
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Fri Feb 10 14:30:56 2012 +0000
Add printf format annotations to all '...' functions
To allow the compile to detect incorrect printf formats, any
var-args function should have a format annotation
* common/macros.h: Helper to define ATTR_PRINTF for code
which can't depend on glib
* common/canvas_base.c, common/lz.h, common/macros.h: Annotate
some var-args methods
commit 9f7d6175e7f8af3cb8b3556affe04d49d35be663
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Fri Feb 10 14:05:27 2012 +0000
Fix some integer range checks which always evaluate false
There are some integer range checks which always evaluate false
due to use of unsigned integer types. One of these would prevent
detection of encoding errors from celt. The others are simply
no-ops.
* common/pixman_utils.c: SpiceROP is an enum & thus unsigned
commit 3bc7d096b61983c7b6d8334bf79b8bc64933fe6e
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Fri Feb 10 13:56:04 2012 +0000
Avoid warnings about empty conditional statement bodies
Add extra {} braces around if/else statements which only
call SPICE_DEBUG to avoid:
../common/ssl_verify.c: In function 'verify_pubkey':
../common/ssl_verify.c:87:50: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
../common/ssl_verify.c: In function 'verify_hostname':
../common/ssl_verify.c:254:53: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
../common/ssl_verify.c: In function 'verify_subject':
../common/ssl_verify.c:381:41: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
commit 0a96fe9364c5e5056abc1069a142fc2a8da052e1
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Thu Dec 22 01:33:48 2011 +0100
build: remove 'win' directory
Let's use the only included file directly instead.
commit 4feaffad8ef7544bc6bddd94a3b0eca129302339
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu May 5 16:39:23 2011 +0200
messages.h: add smartcard bits
commit 508547c100cee6f21fe7f06356d525f76a18740a
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 21:09:31 2012 +0100
Add client_marshallers.h client_demarshallers.h from spice-gtk
spice-gtk uses a more up to date version of client/marshallers.h and client/demarshallers.h
commit c4482c7ff2bf441e6a9e06f30f1b247171bb0738
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 21:01:48 2012 +0100
Use SPICE_{BEGIN,END}_DECLS
commit e800e51d4ecbae0b0023bd829d0cf9082381fc00
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri May 6 16:40:43 2011 +0200
add const to arrays in marshalling functions
commit c968e76f967f19830e4eca83c555fc05ae31ca1b
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Sat Apr 30 18:20:23 2011 +0200
ssl_verify: include <string.h>
ssl_verify.c is using memcmp which comes from string.h, this was
breaking compilation with -Werror -Wall on Mac OS X
commit 3e4b2571a2908ac6a4bd8c48e985ad8d8fd009cb
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 20:50:52 2012 +0100
ssl_verify: comment X509_NAME undef
commit c1403ee6bf4dfdd8f614f84ef145083b06a9f23e
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Sun Apr 3 15:49:36 2011 +0200
Use a log handler to modify abort() behaviour
Be more library friendly, by not aborting in library errors.
spice_common now includes a proper log handler that will abort by
default when reaching a warning.
SPICE_ABORT_LEVEL can be changed to modify run-time abort level.
SPICE_DEBUG_LEVEL can be changed to be more verbose. By default, only
log level more importants than WARNING.
Only memory-related functions are allowed to abort(), since they are
not recoverable errors in the library.
commit bb133148d85e66349b34375dd849d5d8c422da67
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Wed Mar 14 18:01:38 2012 +0100
update gitignore
commit cf705650d42364cf2b611086a20c322f77b74de1
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Sun Apr 3 02:29:14 2011 +0200
common: remove unnecessary outdated c++ debug
commit 124f767b94403fdde6c7ebc082e314e2f1364003
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Mon Jan 24 21:09:52 2011 +0100
common: ring.h should include stddef for NULL usage
commit 1a9f61dd176b0c7b4139f231498bc8f72e81712f
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Fri Mar 2 13:45:15 2012 +0100
Send name & uuid to capable clients
Add spice_server_set_name() and spice_server_set_uuid() that allows
the client to identify a Spice server (useful to associate settings
with a particular server)
The SPICE_MSG_MAIN_NAME and SPICE_MSG_MAIN_UUID messages are only sent
to capable clients, announcing SPICE_MAIN_CAP_NAME_AND_UUID.
commit 71faf12d810cfebfc066fffa912ccdd173cf8764
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Fri Mar 2 13:42:10 2012 +0100
demarshal: fixed-size array are missing __nelements
A message with a fixed-size array, such as uint8 uuid[16] will
generate an invalid code, missing the __nelements variable. Make sure
that variable is defined.
commit 5d02123499ff68f8584384aac7b7a715a3a76a1b
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Feb 29 19:01:59 2012 +0100
mingw: workaround weird openssl build failure
If X509_NAME isn't undefined before including x509v3.h, very
weird compilation error occurs. It seems to be caused by duplicate
definitions for this symbols coming from wincrypto.h
commit ea9e91cd8dd2ca8a441eaaae951ddffd0bf0a800
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Feb 29 19:01:58 2012 +0100
mingw: don't try to redefine alloca
mingw already has a #define alloca __builtin_alloca so trying to
redefine it triggers a warning.
commit a107b62a745fa1e9755c4c0edd6ede32011eace3
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Feb 29 19:01:54 2012 +0100
mingw: use uintptr_t when converting a pointer to an int
win64 uses 32 bit long, so we cannot use a long to hold a 64 bit
pointer. Thankfully, there's a [u]intptr_t type available exactly
for these uses.
commit a14a8c83e0781155255bc5e8677017cf6c6a2df3
Author: Dan McGee <dpmcgee at gmail.com>
Date: Tue Feb 14 09:57:54 2012 -0600
Remove extra '\n' from red_printf() calls
red_printf() takes care of adding a newline to all messages; remove the
extra newline from all messages and macros that were doubling them up.
Signed-off-by: Dan McGee <dpmcgee at gmail.com>
commit df2dcb496e24bdc173bb9572c3cde5a2d606bd10
Author: Dan McGee <dpmcgee at gmail.com>
Date: Mon Feb 13 13:53:32 2012 -0600
Add casts for compatibility purposes
Some non-Linux platforms return a (caddr_t *) result for the return
value of mmap(), which is very unfortunate. Add a (void *) cast to
explicitly avoid the warning when compiling with -Werror.
For the IO vector related stuff, signed vs. unsigned comes into play so
adding a (void *) cast here is technically correct for all platforms.
Signed-off-by: Dan McGee <dpmcgee at gmail.com>
commit e571bd02c93bfe7db683dab5d656332ef56d1222
Author: Dan McGee <dpmcgee at gmail.com>
Date: Thu Jan 19 14:10:00 2012 -0600
Update .gitignore with a few more generated files
Signed-off-by: Dan McGee <dpmcgee at gmail.com>
commit 95f2f77839f0c2a5e3450356c41eb53324cb765f
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 15:26:55 2012 +0000
Remove trailing whitespace from end of lines
commit 14ca077df38122d3fd75ee356fc5ca121f21e188
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 15:16:03 2012 +0000
Add missing includes of config.h
Not all files were including config.h
commit 4930ef723912e3dabda277a82eca06feda0c5dd5
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 15:03:51 2012 +0000
Remove unused backup file
The common/glc.c.save file appears to be a obsolete copy of
glc.c
commit f83432a68564a46b76dda39fac187f1a6c9e57d4
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 15:03:38 2012 +0000
Remove trailing blank lines
Remove any blank lines at the end of all source files
commit 457892cb9f87d637237c7b58b07d7ea4a1abf294
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 14:44:16 2012 +0000
Fix up copyright decl to always use 'Copyright (C) Red Hat, Inc.'
A couple of files were missing '(C)' in the copyright header
commit 6142b84cd4c85a5b19ec9001fcbfbb5e4d4a0521
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Tue Jan 10 11:39:16 2012 +0000
Remove casts from void * with xrealloc() calls
The xrealloc() function returns void*, so the return value
never needs to be cast
commit 4a9f7971fceb1296922740aab27df819fce101bf
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Mon Dec 12 17:53:04 2011 +0000
Remove useless if() before free()
The free() function allows NULL to be passed in, so any
code which puts a if() before free() is wasting time
commit bcdf929c79e681eedd757a9bf2219f6607dac0fd
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Mon Dec 12 17:48:51 2011 +0000
Death to all TABs
Source files should all use spaces instead of tabs for
indentation. Update the few files not already in
compliance
commit a2e0db03a95de1aab268a41a5496a1c09a7be4e2
Author: Alon Levy <alevy at redhat.com>
Date: Fri Jan 13 12:58:08 2012 +0200
common/ssl_verify: special case to WIN32 that isn't MINGW32
commit 533358acf551028eb72babdf9a57209f169694ee
Author: Alon Levy <alevy at redhat.com>
Date: Fri Jan 13 12:57:35 2012 +0200
common/bitops: mingw32: reorder so __GNUC__ define is checked first
commit db2057fa4cccc80f1f92e61a7512490029e8153a
Author: Alon Levy <alevy at redhat.com>
Date: Fri Jan 13 12:56:59 2012 +0200
common/backtrace: for mingw32 no pipe/wait_pid, just disable
commit a2cc577747191aa5fa3bdb9b671775b03d806426
Author: Alon Levy <alevy at redhat.com>
Date: Fri Jan 13 12:56:07 2012 +0200
client/windows: fix several assigned but not used errors
commit e8efd344c0aff13efc1576aade87b34712a7a7cd
Author: Alon Levy <alevy at redhat.com>
Date: Fri Jan 13 12:41:18 2012 +0200
client/common: mingw32: workaround HAVE_STDLIB_H redefined in jconfig.h
commit ec119c67f31802d00191e6502379b7765980e695
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Tue Jan 10 09:29:27 2012 +0200
spice.proto: add SPICE_MSG_LIST to base channel
commit 9ef008e5c3b1b3194ecf5e4f90d7e79ca76ff3d9
Author: Hans de Goede <hdegoede at redhat.com>
Date: Thu Jan 12 13:24:52 2012 +0100
codegen: Fix enums.h generation
With the new usbredir code we have the new concept of the abstract /
generic spicevmc channel type (which just tunnels data from a qemu chardev),
and we've the usbredir channel, which is the only current user of this.
This was reflected in the protocols enum in spice-protocol.h by a manual
edit done by me, my bad. This patch teaches spice.proto about the relation
between the abstract spicevmc channel and the usbredir channel and
modifies codegen to deal with this.
Signed-off-by: Hans de Goede <hdegoede at redhat.com>
commit 5846dec251099eb11fcca2c10ab3d7d546475506
Author: Alon Levy <alevy at redhat.com>
Date: Sun Nov 6 16:09:35 2011 +0200
server: add prefix argument to red_printf_debug
printed before function name. No central location for prefixes.
Adding "WORKER", "ASYNC", "MAIN" since those were the current users.
commit cc30c6d833fe21f7f824a84d7174f9db44ea8157
Author: Alon Levy <alevy at redhat.com>
Date: Sun Nov 6 14:29:20 2011 +0200
common/spice_common.h: red_printf_debug: fix wrong sign
commit 4b1c0afd7d16339984c229c947ef1017331eddd6
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Sun Sep 18 11:10:44 2011 +0300
spice.proto: add SPICE_MSG_MAIN_MIGRATE_END & SPICE_MSGC_MAIN_MIGRATE_END
(cherry picked from commit cfbd07710562e522179ae5a7085a789489a821bb branch 0.8)
commit 9cf6d39b369f9c22615fc329e307126721125ecd
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Sun Sep 18 10:31:38 2011 +0300
server,proto: tell the clients to connect to the migration target before migraton starts
(1) send SPICE_MSG_MAIN_MIGRATE_BEGIN upon spice_server_migrate_connect
(to all the clients that support it)
(2) wait for SPICE_MSGC_MAIN_MIGRATE_(CONNECTED|CONNECT_ERROR) from all the relevant clients,
or a timeout, in order to complete client_migrate_info monitor command
(cherry picked from commit 5560c56ef05c74da5e0e0825dc1f134019593cad branch 0.8;
Was modified to support the separation of main channel from reds, and multiple clients)
Conflicts:
server/reds.c
commit 264ccc73f1dd95a36bc1ffa9b99a3741f6a97ecc
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Mon Sep 5 02:54:20 2011 +0200
server: fix function prototypes
Several functions in server/ were not specifying an argument list,
ie they were declared as void foo(); When compiling with
-Wstrict-prototypes, this leads to:
test_playback.c:93:5: erreur: function declaration isn’t a prototype
[-Werror=strict-prototypes]
commit 6130d4602d12399492200028e76f117b3d9466e9
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Mon Aug 8 11:24:03 2011 +0200
add C++ guards to backtrace.h
Without these, spice_backtrace() can't be used from the C++ client
code.
commit 40c06459e51401b94569196618551c65d0d36f97
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Aug 25 14:35:01 2011 +0200
fix memory leak in error path
Issue found by the Coverity scanner
commit 4f60889f23fc710f4266bee9e455bc08d3695323
Author: Alon Levy <alevy at redhat.com>
Date: Sat Jul 2 04:23:45 2011 +0200
spice.proto: add comment for origin of STYLED and START_WITH_GAP
commit ed77ce6dbf97580a8859f7b4042c29003ce72fd6
Author: Alon Levy <alevy at redhat.com>
Date: Tue Aug 9 23:07:39 2011 +0300
common: introduce red_printf_debug
commit e5b2086eb58ff35268cf23936127358564c5e052
Author: Alon Levy <alevy at redhat.com>
Date: Mon Aug 22 16:17:28 2011 +0100
common/ring: RING_FOREACH_SAFE: use shorter version from qemu
commit d69f4ccea2b278361b2b49e02b8407961bb9502a
Author: Hans de Goede <hdegoede at redhat.com>
Date: Mon Jul 25 11:09:12 2011 +0200
server: Add a usbredir channel
commit 82ed7626378a83782c11c5b75b71e5b2d9027466
Author: Alon Levy <alevy at redhat.com>
Date: Wed Jul 20 16:19:51 2011 +0300
common/backtrace.h: disable for WIN32
This also catches mingw32 which is probably fine, but at least it fixes
the build on visual studio.
commit ec5f0c2e99d9f052766ff79494ea51bc59bcdd92
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jul 27 17:20:13 2011 +0200
fix integer marshalling helpers on big endian
They were trying to convert the destination pointer to an integer before
trying to dereference it. The initial conversion was meant to be a cast
to a pointer of the right size, not to an integer.
commit 303ac1c9dec062407e3b7001f3e0f6c100b67769
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jul 27 17:02:39 2011 +0200
fix typo in big endian code path
uint63_t should be uint64_t
commit 673ab9b950c49a636f3be5e4830b7dfc0cabddfd
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Jul 21 18:48:28 2011 +0200
fix make distcheck
commit cb4c660655cb3f1f82598a4424049552de431d52
Author: Alon Levy <alevy at redhat.com>
Date: Thu Jul 14 10:50:49 2011 +0300
common: add backtrace via gstack or glibc backtrace
Add a backtrace printing function copied from xserver os/backtrace.c
that uses gstack, and if that isn't found then glibc's backtrace.
Used in ASSERT, tested on F15.
commit da4768ae2b36df3acf650e95eb9d17bbf201bb8e
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Jun 22 10:58:57 2011 +0200
don't #include config.h in generated header files
7e30572ab adds a #include <config.h> to the beginning of generated
files. It also does this for generated headers and enums files,
which is not wanted, especially if it's an installed file. This
commit only adds this include for the non-header non-enum case
(hopefully, enums are only generated for use in a .h file).
commit e0a8d6625c7676acb1afd1d814b0920a5fbbfac1
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu May 19 15:59:07 2011 +0200
add check for pyparsing
Check both in configure.ac (after checking if we need to rebuild
the marshalling files) and in the python script using pyparsing
(for people modifying .proto files in tarballs)
commit 85a49d512a7d7dbe5c1e3be26916c6e3cafa6252
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Mon May 23 12:20:17 2011 +0200
sndworker: add AudioVolume/AudioMute messages
These messages allow the guest to send the audio device volume to the
client. It uses an arbitrary scale of 16bits, which works good enough
for now.
Save VolumeState in {Playback,Record}State, so that we can send the
current volume on channel connection.
Note about future improvements:
- add exact dB support
- add client to guest volume change
Updated since v2:
- bumped record and playback interface minor version to allow
conditional compilation
Updated since v1:
- sync record volume on connection too
commit 5ae49c0d5bde642e3485e007a9948b12ee68841e
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Tue Jun 21 13:20:33 2011 +0200
python: remove c-ism trailing ;
commit 7f9e2cb1f7cdae2695486ea34f862f1832a14010
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Sat Jun 18 00:08:35 2011 +0200
codegen: typedef the protocol enums
Commit 9d5ef9beeca722b2ceff7d15aaa3aaaaf07ecfbf in spice-protocol
introduced a typedef manually in the generated enums.h header.
This patch adds them automatically to all enums during enums.h generation.
commit f492c12364d7b751e9e2f480b977d2275eb8a75f
Author: Arnon Gilboa <agilboa at redhat.com>
Date: Sun May 22 14:53:13 2011 +0300
common: add WIN64 ifdef for spice_bit_find_msb (fix broken windows x64 build)
inline __asm is not supported in x64, so use the naive implementation
until x64 asm implemented.
commit 88f7e2b32d7ca6c54378b23e0ff14cdb946167bf
Author: Arnon Gilboa <agilboa at redhat.com>
Date: Thu May 12 15:09:12 2011 +0300
common: use INLINE instead of inline
needed for spice/common files used by the client, server & qxl driver.
in windows _inline works for both c/c++, while inline is c++ only.
compiling the client with mixed c/c++ code required this define.
commit 4cb26e06f7a5425f84eaafbdc57f7087e184a92d
Author: Arnon Gilboa <agilboa at redhat.com>
Date: Thu May 12 12:12:09 2011 +0300
common: fix ssl_verify windows build errors
commit 5de42c768d788c02083cc4455ddc796261419f84
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Tue Jan 25 13:00:33 2011 +0100
common: add ssl_verify.c common code
Code adapter from RedPeer::ssl_verify_callback() and used by
spice-gtk.
Since v1:
- fixed Makefile.am
- added config.h include
- autoconf alloca added in patch series
- moved int escape inside for loop
- added a failed case when missing assignment
- replaced strlen () by -1
- skip spaces after comma
- c++ guards
I didn't use bool, because openSSL uses int, and it is more future
proof for error reporting.
commit a472bdff0d9dfff162d460e6b75191551bb08876
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Tue May 3 13:53:59 2011 +0200
common: add ring_get_length() for debugging purposes
Please notice it has a "static" modifier, like the rest of the inlined
functions in ring.h, so it won't warn if it isn't used.
commit 3349946ab21ed3d90a3e5600a8f8719bd0cb02e0
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Tue May 3 13:39:38 2011 +0200
common: mem.h add alloca definition
We don't support the autoconf ALLOCA/C_ALLOC fallback. If one day,
someone cares for a weird platform, he can fix it.
commit 55e936b9fd3c3796c89342d2fa98998d81f621d5
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Tue Jan 25 16:17:12 2011 +0100
common: spice_memdup could accept NULL
(this patch is not to solve a crash fix, but to align with glib API)
commit f0ce9c8433d8a0b672e1c09b79c076493956c7ac
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Wed Dec 15 18:39:14 2010 +0100
common: add windows.h where required, make gdi_handlers static
This patch has not been verified with VS/brew. It should be safe
hopefully. Compilation is fine with mingw32/spice-gtk.
commit c04b58bf7abc542453bdd59bcd927d3e236e107d
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 16:43:48 2011 +0200
move get_time_stamp to main_channel.c
There is only one user of get_time_stamp from spice_common.h so
it's not really useful to keep it there.
commit 62ef19f8c7f9f5e4ec4fdb5ad5aeb30818c58d2d
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 16:41:28 2011 +0200
use standard do { } while (0) for spice_common.h macros
commit 09453dcd43217c8e2546c245f4e198f221824f77
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 16:39:29 2011 +0200
move WARN and WARN_ONCE to spice_common.h
commit 56f2e9648e7df5082f1574bb709b062219d4a4bf
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 16:23:38 2011 +0200
common: use PANIC from spice_common.h
commit 50fc5bc747b77a7624853bd05ef21ae966e05a2b
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 16:17:14 2011 +0200
common,server: use ASSERT from spice_common.h
spice_common.h provides an ASSERT macro, no need to duplicate it
in many places. For now client/debug.h keeps its own copy since
debug.h and spice_common.h have clashes on other macros which are
trickier to unify.
commit 29e175bb06bc8d9bf2cc2553d7b9715076db61ce
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 12:55:21 2011 +0200
common: don't duplicate find_msb implementation
commit 8db40f4ae779783b221467185d4b17641af90aa5
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 22 11:48:53 2011 +0200
add missing static
commit 90f32ab823024fef6b44602077b78110e7aa1c23
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Apr 21 13:25:19 2011 +0200
add comment to beginning of autogenerated files
commit 61b344d7742c5e92154fdb85b7eecefd6d4993e3
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Apr 21 13:16:18 2011 +0200
add config.h to autogenerated files too
Modify the python (de)marshaller generator to add #include
<config.h> at the beginning of the C files it generates
commit 08326f733a2311ad241fad7146516c69840b675e
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Apr 21 12:35:34 2011 +0200
add #include <config.h> to all source files
When using config.h, it must be the very first include in all source
files since it contains #define that may change the compilation process
(eg libc structure layout changes when it's used to enable large file
support on 32 bit x86 archs). This commit adds it at the beginning
of all .c and .cpp files
commit d88b144f1bc450b00c1b78ac58d88ef2e46a5868
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Apr 20 17:50:22 2011 +0200
autotools: correctly build canvas-related code
spice client and spice server shares code from
common/{gdi,gl,sw}_canvas.[ch]. However, while most of the code is
shared, the server code wants a canvas compiled with
SW_CANVAS_IMAGE_CACHE defined while the client code wants a canvas
compiled with SW_CANVAS_CACHE.
The initial autotools refactoring didn't take that into account,
this is now fixed by this commit. After this commit, the canvas
files from common/ are no longer compiled as part of the
libspice-common.la convenience library. Instead, there are "proxy"
canvas source files in client/ and server/ which #include the
appropriate C files after defining the relevant #define for the
binary that is being built.
To prevent misuse of the canvas c files and headers in common/,
SPICE_CANVAS_INTERNAL must be set when including the canvas headers
from common/ or when building the c files from common/ otherwise
the build will error out.
commit 4fafa210df5b106614246b04e4d31877bb47476a
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Wed Apr 20 11:09:55 2011 +0200
autotools: refactor the whole build machinery
spice Makefile.am setup is a bit confusing, with source file
names being listed several times in different Makefile.am
(generally, once in EXTRA_DIST and another time in another
Makefile.am in _SOURCES). The client binaries are built
by client/x11/Makefile.am, which means recursing into client,
then into x11 to finally build spicec. This Makefile.am is
also referencing files from common/ and client/, which is
a bit unusual with autotools.
This patch attempts to simplify the build process to get
something more usual from an autotools point of view.
The source from common/ are compiled into a libtool convenience
library, which the server and the client links against which avoids
referencing source files from common/ when building the server and
the client. The client is built in client/Makefile.am and directly
builds files from x11/ windows/ and gui/ if needed (without
recursing in these subdirectories).
This makes the build simpler to understand, and also makes it
possible to list source files once, which avoids potential
make distcheck breakage when adding new files.
There is a regression in this patch with respect to
sw_canvas/gl_canvas/gdi_canvas. They should be built with
different preprocessor #defines resulting in different behaviour
of the canvas for the client and the server. However, this is not
currently the case, both the client and the server will use the same
code for now (which probably means one of them is broken). This will
be fixed in a subsequent commit.
make distcheck passes, but compilation on windows using the
autotools build system hasn't been tested, which means it's likely
to be broken. It shouldn't be too hard ot fix it though, just let
me know of any issues with this.
commit eda7b8938a15ee2a5fcde5b201258403d2287644
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Thu Apr 21 12:05:19 2011 +0200
common: don't try to redefine PANIC if it already exists
canvas_base.c tries to define PANIC, but it might already be set
if eg client/debug.h has been included before. All the other
macros in this file are guarded by #ifndef, this commit adds
the missing #ifndef to PANIC. Note that this is just a bandaid,
ideally common/ would contain a logging frameword, and these
macros would only be defined once instead of being defined in
several places.
commit 57b6e08160ea1a0f7623310d5ed3c018ab5ee39c
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Tue Apr 19 23:23:18 2011 +0200
use foo(void) instead of foo() in prototypes
In C, the latter isn't a prototype for a function with no arg,
but declares a function with an undefined number of args.
commit c1530facf4971748b0635c24ae3ab5c0dddd710f
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Tue Apr 19 23:37:12 2011 +0200
common: add missing header guards to gl_canvas.h
commit c15c5050afa972a8918427e213a2500b44328b85
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Tue Apr 19 22:58:36 2011 +0200
common: add extern "C" guards to headers
Since some spice C++ code is using code from common/, the C
functions need to be marked as such for the C++ compiler, otherwise
we'll get linkage issues.
commit 5b0b6d2f8431f55394b0766f0cbe5c26f89fd6cd
Author: Alon Levy <alevy at redhat.com>
Date: Sat Apr 9 21:41:12 2011 +0300
spice.proto: Fill.rop_descriptor type s/uint16/ropd (10x atiti)
commit 116965471d2fc42082a7d6ab9fe66be836c4138f
Author: Christophe Fergeau <cfergeau at redhat.com>
Date: Fri Apr 15 13:55:55 2011 +0200
draw: remove SPICE_ADDRESS
This commit removes the typedef for SPICE_ADDRESS which was no
longer used. This is the last thing that was missing to close
fdo bug #28984
commit a0acff58c6089906bd9a382468bb6b4be9c16919
Author: Christophe Fergeau <cfergeau at gmail.com>
Date: Tue Mar 22 11:48:54 2011 +0100
common/pixman: remove dead assignments
They were detected using clang-static-analyzer. Don't initialize
the variable to a value to override it with a different value
a few lines after.
commit ecce34db5274055ae2c3c0e8ab32d03b4c02b72e
Author: Christophe Fergeau <cfergeau at gmail.com>
Date: Tue Mar 22 17:22:08 2011 +0100
common/gl: remove unused variable
clang static analyzer warned that 'len' was computed but never
used in glc_vertex2d. glc_stroke_line_dash has side effects so
we have to call it, but we don't need to save its return value
since it's not used.
commit 63703e43492b638a6adb78a0d514503a0a6271a9
Author: Alon Levy <alevy at redhat.com>
Date: Sat Dec 11 15:55:19 2010 +0200
python_modules/codegen.py: fix indent error in an unused function
commit bd84cda1fe0054abac40c68fcd0a0a4fe8474273
Author: Alon Levy <alevy at redhat.com>
Date: Tue Nov 9 23:01:39 2010 +0200
ring: add RING_FOREACH{,_SAFE,_REVERSED}
commit 2890d418eed2e206a96df784250af2a21c9e3356
Author: Alon Levy <alevy at redhat.com>
Date: Mon Feb 28 18:56:16 2011 +0200
server/common: introduce common/spice_common.h
move all the ASSERT/PANIC/PANIC_ON/red_error/red_printf* macros
to a common file to be used with ring.h that is going to be used externally
(by spice-gtk).
commit 99a225c87a586264a6d1b61269cb3a3c0cea0afd
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Wed Feb 9 15:11:22 2011 +0100
common: add SpiceBuffer - based on qemu-vnc Buffer
https://bugs.freedesktop.org/show_bug.cgi?id=34795
commit 7c98f5c94625e774c7b406d9f53922d476e2898d
Author: Uri Lublin <uril at redhat.com>
Date: Sun Jan 9 10:17:49 2011 +0200
spice-client migration: fix minor for old migration support.
For not too old spice-migration, minor is 1.
For older (ancient) spice-migration, minor is 0.
Affects only VM migration while a spice client is connected.
commit 01580185e907cccd612a96908372dad2b2b9a90e
Author: Alon Levy <alevy at redhat.com>
Date: Mon Jan 24 23:32:43 2011 +0200
demarshaller/marshaller fix gcc 4.6.0
python_modules/demarshal.py and marshal.py fixes for gcc 4.6.0
warning about set but unused variables. The fixes disable creating
of variables mem_size when they are not used (demarshall) and
declaring a src variable when the message doesn't use it (marshal).
You need to touch *.proto after applying this (should add a Makefile
dependency).
commit 67ace54dbc64e5080d1b71d701993a3744948e1f
Author: Alon Levy <alevy at redhat.com>
Date: Mon Jan 24 22:07:55 2011 +0200
codegen: avoid creating out if not used (fix gcc 4.6.0 warning)
commit 248c08768d896abde1bdb66b4527f0ea7409ef64
Author: Alon Levy <alevy at redhat.com>
Date: Tue Jan 25 00:38:16 2011 +0200
common/sw_canvas: remove unused error val
This is the only unused var change I'll want to revisit eventually,
I'm submitting anyway since it doesn't change current behavior. I'm
talking about ignoring the return value from canvas creation. Adding
a print is possible but I didn't test (may be too verbose, also
preferable to be a debug print if so, and we don't have that option
in the code atm - probably an environment variable will do, or adding
some spice_server_set_logging_level api, maybe even
spice_server_set_logging_fd?)
commit b48fee5d7c5e6688a1da20fa5fccbeb9c229e137
Author: Alon Levy <alevy at redhat.com>
Date: Tue Jan 25 00:37:45 2011 +0200
common/canvas_base.c: remove unused variables
commit 9db2743262048c7520c3418d62961080bee0eff7
Author: Alon Levy <alevy at redhat.com>
Date: Wed Jan 5 15:31:46 2011 +0200
common, canvas_get_jpeg_alpha: let top_down be any value
Allow top_down flag to have any value, only ASSERT it is positive
when needs to be positive and zero otherwise. Allows older server
bug of sending 4 instead of 1 in top down flag to not affect newer
clients (previous patch fixes server).
commit a99c9149b6e252c5b9916e4ef6e368aaa0340706
Author: Alon Levy <alevy at redhat.com>
Date: Mon Dec 6 18:02:34 2010 +0200
mingw32 build: python_modules/marshal: use unsigned for for_loop index variable
commit c309d923aa9cd84a94bf865a1765d6ee3b330d55
Author: Alon Levy <alevy at redhat.com>
Date: Mon Dec 6 18:02:01 2010 +0200
mingw32 build: various fixes
commit f5bfbff82fcaed15a86d11f055eecd3f2671b73c
Author: Alon Levy <alevy at redhat.com>
Date: Mon Dec 6 18:01:14 2010 +0200
mingw32 build: fix two functions
commit f4f40a3a30017e0c0038df4514d16281657374d1
Author: Alon Levy <alevy at redhat.com>
Date: Mon Dec 6 17:55:16 2010 +0200
mingw32 build: fix signed/unsigned warnings as errors
commit 2e2dbb547909c5ba50aa0931450f331807fba7b2
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Jul 8 11:40:57 2010 +0200
mingw32 build: fix build errors
Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
commit 8bea72b751c3983b2e26d685a9af4f4106522d73
Author: Alon Levy <alevy at redhat.com>
Date: Mon Sep 13 20:02:42 2010 +0200
smartcard: add to spice.proto
commit 00a7b6ff3be5c3d5162c80c7893679bff955ece1
Author: Alon Levy <alevy at redhat.com>
Date: Mon Oct 4 22:02:41 2010 +0200
spice codegen: fix copy-o, no such variable value
commit a95a9fe41cf9d4da55736a9c48cab97480e6ef5e
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Sep 29 12:47:15 2010 +0200
Initialize variable to avoid compiler warning
Seems the OSX gcc warns on saveRight not being initialzied.
commit c3d7a087e4df722d42fa95a59f1c10755e686461
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Sep 22 14:36:40 2010 +0200
Handle surface images in DrawOpaque
commit 49c6fca7cf4d429c9c5bf356aff42f0a50a22bcf
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Sep 21 20:08:46 2010 +0200
Fix crash when resetting pixman image transform
Resetting the transform is done by setting it to the identity
transform, not passing in NULL. Passing in NULL causes a crash.
commit 96faad998e72b0bac20a59e002ea469b3410dced
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Aug 31 12:07:31 2010 +0200
Fix scaling with large magnification
When scaling part of an image we need to specify the source
coordinates in transformed coordinates. For large magnifications this
means we will get pretty large values.
Now, if e.g. src_x * transform is larger than 32765, then the
coordinate ends up outside the pixman 16bit image size, so the
rendering will not work.
The fix is to make the src_x/y offset part of the transformation.
This means its automatically transformed by the correct scaling, and
the coordinates passed into pixman are not (typically) over 16bit.
commit 4b0da43949da1205f99316ea09f4ec54e2a88f07
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Aug 31 11:48:13 2010 +0200
Revert "Fix scaling with large magnification"
This reverts commit e13be77f33609cb3fdae354ce1f2686ae865f9e0.
commit deaf22e9bc78cd3d2a51205a98a46e2dce17521a
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Aug 30 15:33:36 2010 +0200
Fix scaling with large magnification
When scaling part of an image we need to specify the source coordinates
in transformed coordinates. For large magnifications this means
we will get pretty large values.
Now, if e.g. src_x * transform is larger than 32765, then the coordinate
ends up outside the pixman 16bit image size, so the rendering
will not work.
In order to work around this we generate a "sub-image" of the pixman
image such that the src_x/y values we have to specify are zero (or near
zero).
commit b0fe22b6ff3bb3f5d7bbf63826c869e9ba7232ea
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Aug 27 16:33:35 2010 +0200
canvas: Better coordinate rounding in scaling
When scaling in pixman you give the source coordinates in transformed
space rather than in the source coordinates. This is a bit problematic
when both source and destination coordinates are at integer positions, but
the scaling factor is not an exact 16.16 fixed point value. We used
to calculate the transformed source based on the floating point
transformation, which gave the wrong answer sometimes. Now we do the
calculations based on the fixed point transform that we give pixman.
However, even with this patch I can still sometimes see issues related
to this, although they are less bad.
commit 6264783c53f67958f141a474ec00edf1c5fffda1
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Aug 25 16:44:16 2010 +0200
server: Fix alloc_lz_image_surface stride allocations
All lz surfaces are not 4 bytes per pixel, calculate the right stride
based on the pixman format.
commit c74a845198e8a90a195309b8f97e5ec61648563b
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Aug 18 16:33:20 2010 +0200
Stride can be negative, so don't use size_t for it
commit c5e79b421587b5ee36c9d8744ba29b2f6f4d5cd0
Author: Alon Levy <alevy at redhat.com>
Date: Thu Jul 29 09:03:15 2010 -0400
support python 2.5.4+ for marshaller/demarshallers
Patch adds a "from __future__" import that doesn't affect newer python's but
allows python 2.5.4 to run the code (tested under scratchbox, n900 build environment)
commit f5c2e64f820ebe61472afe12a7e2f61dabd16c4d
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jul 20 11:34:23 2010 +0200
demarshaller: Fix palette marshalling
It turns out that using base + sizeof(struct) is not a good way to
access an array at the end of a struct. For SpicePalette sizeof is 16, but
offset of ents is 12. Using this calculation in the demarshaller breaks
things badly, so now we use the actual array member.
commit 68d204f649a5573a9c0005e4b8ca5586093adf49
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jul 20 11:33:57 2010 +0200
Don't send padding over the network with video data
commit 3f2739ebc9dad12fafa2a8b8e7369cae99bd361f
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 20:24:25 2010 +0200
Fix uninitialized variable warnings
commit 7897a338db23c29746dbd6062cbc615a3f15dbb4
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 16:27:42 2010 +0200
Don't send CursorHeader if cursor_flags is NONE
commit efba88ce725d91d9c33e44332b64f737cc1a07b6
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 15:48:20 2010 +0200
Send Clip.rects inline rather than using a pointer
commit bcf9b8acf2c567195647c9f6796735630f84c5fb
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 15:47:40 2010 +0200
codegen: Allow @to_ptr to make inline structs demarshal as pointers
commit bdcfb2c83dd31e1a1fdd75944f632b76504cdb5d
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 14:10:16 2010 +0200
codegen: Various cleanups
Remove all uses of @end in the marshaller, instead just using
the C struct array-at-end-of-struct. To make this work we also remove
all use of @end for switches (making them C unions).
We drop the zero member of the notify message so that we can avoid this
use of @end for a primitive in the marshaller (plus its useless to send
over the wire).
We change the offsets and stuff in the migration messages to real pointers.
commit bfffc11787124bd85a363e7e5a5fd561ae6f2f7b
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 10:12:41 2010 +0200
codegen: Pass member to SubMarshallingSource rather than name
This way we can check attributes on the member.
commit be1c38df3e1228fc05b57da0692e9188e99713e3
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 19 09:45:45 2010 +0200
codegen: Remove unused methos has_pointer()
commit f43de528fa946d26b4c318fe0bfd8a1a69686e0f
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Thu Jul 15 11:50:28 2010 +0300
canvas_base jpeg_alpha: supply the correct size to jpeg_decoder
commit 7b3d801f51ffa06acb2164dd8a9c14f7c580e04e
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jul 9 16:52:36 2010 +0200
Don't marshall bitmap data as pointer, instead send inline
commit 7c8a4e1ac60bb9c3221c1023f055fb04749acf8c
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jul 9 11:57:09 2010 +0200
Add files i forgot to commit
commit 1b8f3388b0aedd411409d2386ed372af0b5c4dc9
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 19:22:39 2010 +0200
Make distcheck work
commit f6735d7d9fb7fdde908636be1d25b294344cf235
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 18:26:37 2010 +0200
Fix various misspellings
letancy -> latency
compund -> compound
SpicedSubMessage -> SpiceSubMessage
modifaiers -> modifiers
massage -> message
outgoiong -> outgoing
AlphaBlnd -> AlphaBlend
remoth -> remote
modifires -> modifiers
secore -> secure
commit 58d52d5ec7fa06f35baa17279fcd2103f46b8ab7
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 15:44:39 2010 +0200
Fix sign warnings from win32 compiler
commit 24c2e3c85f95d0a57875470889f401affc5231a3
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 15:44:15 2010 +0200
Fix inclusion of common files, no need for common/ part
commit fb935fe73b324a3c8cfda5916920f0ee3a0de2ce
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 14:46:04 2010 +0200
Simplify spice_pixman_region32_init_rects with new types
Don't manually of SpiceRects to pixman_box32_t now that they are compatible
and SpiceRect is internal.
commit 12a734e33627b1e0c0aee7b26fc1ef510584f5f0
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 14:30:01 2010 +0200
Make all internal structures not be packed
commit 69c1444add928496813e048fabb50589e8d3120f
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 14:17:24 2010 +0200
Move SpiceChunks to mem.h
commit c471990a9f3aba734d87c9835449b24607e07f55
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 13:56:01 2010 +0200
Move in spice/draw.h from spice-protocol to common/
commit 199c710a088c3a54bd320d167b3dcafd661fa281
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 13:07:17 2010 +0200
codegen: No SPICE_ADDRESS types left, drop @c_ptr
commit 4bcb58cc9fb957235b5dc92c55c6a0e4c203733b
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 8 12:43:33 2010 +0200
Properly parse QXLLineAttrs.style
commit e37ce72809d4bf114ff69bf600d943b43e510137
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Thu Jul 1 17:55:33 2010 +0200
Properly parse QXLImage to the new-world SpiceImage
SpiceImage now replaces RedImage and has all image types in it.
All image data are now chunked (and as such not copied when demarshalling).
commit 4b6605fc4214de1ec31148f4a7d34ac110bc9504
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jul 7 20:40:06 2010 +0200
codegen: support @chunk on non-pointer arrays
This is similar to @as_ptr, but generates a single chunk of data.
commit 601d1be843cb58c169af34a8094d69281826e867
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jul 6 22:13:18 2010 +0200
Add support for @chunk
commit 0df81d33f6424db0b46ebc8cab7bd8768927f2d9
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jul 6 22:12:26 2010 +0200
marshaller: Make get_nw_offset() handle deep member references
commit cd9b3dac8b3ccfe1b62697562ef00688c521457b
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jul 7 22:40:16 2010 +0200
Add spice_marshaller_add_ref_chunks
commit 8f568a4073bd423b8ae7e5a8d102e4c4db811abd
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jul 6 14:39:15 2010 +0200
Add spice_chunks_* helpers
commit 09d9a18702a48e83ec9b2c6f7c2cd47e6a5b87a1
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 20:45:13 2010 +0200
Convert SpicePath.segments to a pointer array
commit bc8d26bfc0ba349889bedcb25e3af1eafd106fd5
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 13:13:39 2010 +0200
Handle extra size for switch and array the right way
Even for is_extra_size() we should calculate the mem_size for
arrays, its just that the parent type (in this case switch) should
request mem_size if the type is_extra_size.
commit 8c2ff07518f62734a1d9b8ba655bdb8df6ac1272
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 13:13:09 2010 +0200
marshaller: Add some docs describing the types of sizes
commit ad7e75325d0d2bd92e5f6e862f8b435b4dab09f9
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 12:13:45 2010 +0200
marshaller: Make @nonnull a propagated attribute
This cleans up some stuff
commit 71bf95171d488fa13dfc88a102612dd9f2e8cd85
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 12:09:08 2010 +0200
marshaller: Make @c_ptr a propagated attribute
This simplifies some code
commit 1d5c7d1d79d040be7473161485eaa730c55d246e
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jul 5 12:03:34 2010 +0200
marshaller: Add generic way to handle propagating attributes
Also switches @ptr_array to use this
commit c5d06102b77d20600303ff636b095c82be29f0dc
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Jun 30 22:19:12 2010 +0200
Properly parse and marshall SpiceString
commit dabdea4fac8de901b4af2c61178097c2d3f5f78d
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 1 16:46:12 2010 +0200
Fix build on win32
commit e3fadaef86f01ca93074df2176cb2d7bf6cb4acb
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 1 16:45:04 2010 +0200
Fix 32bit failure in demarshaller
Due to a typo we always read offsets as pointers, never as SPICE_ADDRESS.
commit f90b89d521ad9753378c9135f6f592529f0c1a34
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jul 1 16:07:02 2010 +0200
Update for the SpicePath.segments type change
commit bef8a0cf19da59d1bd370487d58f81db2ee7a7d6
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 30 16:49:50 2010 +0200
Simplify SpiceLineAttr by removing unsed stuff
Also in new protocol don't send style data if not needed.
commit fcb5eb4629455403de723e2a254e07c8ee46c5d0
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 30 14:05:14 2010 +0200
Automatically marshall SpiceClipRects
commit 53a75604811d0d6a80c9b78824be28819632e288
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 30 14:05:04 2010 +0200
Automatically marshall SpicePath
commit 930458ea50bfa6a05772a505ec74b2295e9a73b9
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 30 13:24:59 2010 +0200
Support @marshall to automatically marshall pointers
commit e6eb19e7522dda4587a629ef6ba2541b6f61877a
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 29 21:42:59 2010 +0200
Store SpicePath segment count rather than size
Internally and in the network protocol (for the new version) we
now store the actual number of segments rather than the size of the
full segments array in bytes. This change consists of multiple changes
to handle this:
* Make the qxl parser calculate num_segments
* Make the canvas stroke code handle the new SpicePath layout.
* Fix up is_equal_path in red_worker.c for the new layout
* replace multiple calls to spice_marshall_PathSegment with a single
spice_marshall_Path call
* Make the byte_size() array size handling do the conversion from
network size to number of elements when marshalling/demarshalling.
* Update the current spice protocol to send the segment count rather than
the size
* Update the old spice protocol to use the new byte_size functionallity
to calculate the size sent and the number of elements recieved
commit 93405abac7558af26cbdb492df4327c358dd03dc
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 29 21:23:55 2010 +0200
Add spice_marshaller_set_uint32
With this function you can update an added uint32 after it being added.
To make this possible all the spice_marshaller_add_add_foo functions
now return a pointer that can be used as a reference when later
setting a value.
commit eaeb65c53e4bbb718074adf70b92cbcf68e145c5
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 29 18:17:35 2010 +0200
Update client and protocol to support the new SpiceClipRects
commit 18a11d6be01875d959872ebd253ad5c6527dc5b9
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 29 18:14:49 2010 +0200
demarshaller: Support @c_ptr attributes for pointers
A @c_ptr pointer is stored in memory as a real pointer rather than a
SPICE_ADDRESS. This is a temporary thing that will be removed again
when all SPICE_ADDRESSes have been converted to real pointer.
commit 2feb07a7b85b4081271a79bfe092037bc8eefe8c
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 29 18:13:07 2010 +0200
demarshaller: Don't parse @zero members
These just write zeros at the right place in the network protocol
typically for old back-compat things. We don't want to read these
back in.
commit 51c71e6883e927b893d73ced23a6208a2e77265e
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Fri Jun 25 16:20:25 2010 +0200
qxl-abi: handle clip rect and path references.
red_parse_qxl.c starts to follow QXLPHYSICAL references and build up
data structures. Can zap a bunch of get_virt calls in red_worker.c,
followed by cleanups.
(de-) marshaller needs updates to deal with that. Also I suspect with
the get_virt() calls being gone we can offload more work to generated
marshaller code.
client doesn't build.
commit 908c8415638c4f36044871340973a6daa489755d
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Jun 23 14:46:23 2010 +0200
qxl abi: parse QXLCopy + QXLBlend.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
commit 6ba331f45eb23b0a2763c24fccb3c99ffe34e3e1
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Jun 23 09:49:35 2010 +0200
qxl abi: parse QXLOpaque.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
commit bc1c2837f38a3f0f2cb45697b63e756506d5653f
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Jun 23 08:53:04 2010 +0200
qxl abi: parse QXLFill.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
commit a45758117b1e384e64419089f4ce07acd08abb7e
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jun 28 12:45:07 2010 +0200
Fix build error due to member "SpiceMsgEmpty" same name as type
commit 49aeb85dc1b74c56084aa633be66a1dbf02a95e6
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 24 14:33:06 2010 +0200
spice.proto: surface_create.format is of type surface_fmt
commit fb5463fe9bb1826d0dc6c57aca46629ebb5f1c72
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 24 14:31:01 2010 +0200
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.
commit 90193bf1603b165cf017c320a4f8d2203b3b459b
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 24 14:30:00 2010 +0200
Remove support for clip by path
This is not supported currently anyway and was not generated before.
commit 2e8aecc2a56e5b7690d77516e41436b697921b1b
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 16:35:09 2010 +0200
spice.proto: No need for @ptr32 as that is now the default
commit ee597577e160ca0456a6e4cef0c6ff4e0c1bc494
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 16:30:29 2010 +0200
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.
commit 5b7fb4db45b6f81c15c42d7af8a96533d1293cf5
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 16:20:55 2010 +0200
Don't send zero data item for clips with no data
commit 13d9b32acc82fc517be83abeb15e4052c65586e0
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 16:20:33 2010 +0200
Make pointers 32bit in new protocol format
commit 8b5726ecfae65b923bee3e5055efa31ae13a52c6
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 16:18:21 2010 +0200
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.
commit 21c7a6d278570adc7cabdf08b75d35cd85bd4ca6
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 13:37:25 2010 +0200
Fix handling of @ptr32 network size
commit ce0f0032f461cc054946773598b7486d676a00dc
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Jun 23 12:25:16 2010 +0200
Remove minor markup in unstable protocol as we're resetting minor to 0
commit d21786473732952ece81adc20136f616aac77019
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Wed Jun 23 09:49:04 2010 +0200
fix use-after-free in spice_marshaller_reset
commit e9d10ef1d5361d9749a498e94797484c7c60e48b
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 16:31:40 2010 +0200
Add spice1.proto describing the 0.4 version of the network protocolx
commit 9e8883a1f815ffc31061434870958595c13b24e1
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 16:03:34 2010 +0200
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.
commit 7022f4d2485eae35a70231c6fe80dd6691f25384
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 16:03:02 2010 +0200
Make internal generated marshaller functions static
commit bcc5cc0d9162c8193d175ad5c45fe6d52721cc52
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 16:01:57 2010 +0200
Support extra prefix in code generators
This is require when we add a new spice.proto for the old (major 1)
protocol description.
commit 0349d2249dbbd8cc0da344709ce7dd4e638db4ab
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 10:32:08 2010 +0200
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.
commit eded86ec1ec8f7d52cf0cc3c79051662da6e0107
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 22 10:53:24 2010 +0200
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.
commit 9c906e0c2f6598a460c7335d0c53770e6aac1fbc
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Sun Jun 20 17:18:56 2010 +0300
Lossy compression of RGBA images (on WAN connection)
The RGB channels are compressed using JPEG.
The alpha channel is compressed using LZ.
commit e48d14df78319c69f03563a2c009bb4a6a857873
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Sun Jun 20 15:24:49 2010 +0300
applying zlib compression over glz on WAN connection
commit 075087b180909a88ee3605d2255da665c605516b
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 21:10:25 2010 +0200
Make generated marshallers build on win32
commit 08d94f60b1d03e3bcf15cb2a6c880d1229a6b30f
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 17:12:31 2010 +0200
Make sound data @as_ptr to avoid copying data
commit ebd34a42913132f80decb6aa89b1c3cb2e2666ec
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 17:12:07 2010 +0200
Make ping data @as_ptr to avoid copying data
commit 101ceba71773879f065b0a6fe3a6aa1b8a5c1648
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 17:11:39 2010 +0200
Make cursor data @as_ptr to avoid copying data
commit 53f8a1a7baf35d67b29ab9a9acbaf72a5a92bfa3
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 17:09:58 2010 +0200
Support @as_ptr in demarshaller to avoid copying data unnecessary
commit cc71d4989b327f33dec397611d5ed19a7518416f
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 15:44:04 2010 +0200
Make pointer types in messages be 64bit in memory
Right now we always assume pointers are stored as SPICE_ADDRESS,
i.e. 64bit, independent on the size sent on the network.
This is required for 64bit architectures of course, but slightly overkill
on 32bit architectures, so needs fixing when all SPICE_ADDRESS elements
can be made internal.
commit 6ebdf5679704cfb5c0c0ab23f7d5142565b64605
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 15:10:57 2010 +0200
Don't pack the message structures
commit c09f1ef5bec222b56c8f73a29fa126c91ddbe246
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 14:05:59 2010 +0200
Make all message structs internal to spice
We move all message structs from spice-protocol to spice as
we want to be able to change these as needed internally. The
on-network format is no longer defined by these structures anyway,
but rather by the spice protocol description.
commit 9a9f1b8081e2b5271ebe346f47efc3287841bca5
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 18 13:43:45 2010 +0200
Allow multiple --include args
commit 212bf0ddee9432ae01004bdeb4ae1c796e7ec905
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 17 11:19:31 2010 +0200
Make tunnel_service_add members be of cstring array size
commit 35c482dad22014fb3593c25c392c590985d40cb1
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 17 10:07:36 2010 +0200
Use @ptr32 for 32bit offsets in spice.proto
commit 8065944cdbbbc7d6fbfa69657dc8ee45b78d6d43
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Jun 11 16:39:27 2010 +0200
Add @nomarshal in a few places where we're marshalling manually
commit ac49057d02d092c6090efb3deca43142833bdccc
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Jun 1 21:54:16 2010 +0200
spice.proto: add @outvar markup
With this we can reference pointer member with no naming conflicts
commit e83ff054d72496582aa9185199d54eb07b713a6b
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jun 14 16:11:39 2010 +0200
Add support for generating message and structure marshallers
commit d6a4cad947761204431e6f8012514419560dddd3
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Jun 14 16:11:04 2010 +0200
Add SpiceMarshaller for easy marshalling
commit 3645036d7e9c75b35d5f653b68d5061b415b98ef
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue May 25 16:01:18 2010 +0200
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.
commit e9b33a194e2eb2a99a6daba16311c88237578697
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed May 26 12:24:48 2010 +0200
Add python code to automake system
commit 522dc931e8b0c447072bf75b39f54e58bef4eb4f
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed May 26 12:19:58 2010 +0200
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.
commit 7e8a81f49f08a91166daaa7f69fa2c5bc740b71f
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed May 26 21:16:25 2010 +0200
There are multiple line attribute flags enums, use only one
commit d4361e12d0e876a67179e70a1a7d2223854d3c1a
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Jun 17 11:18:27 2010 +0200
Add spice_strnlen
commit f3d77c3e84c46934906507cbe67df4837e0a3e58
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Tue Jun 1 10:30:51 2010 +0300
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
commit 19bca5b373d9b8fa983f723a8daea54178b0a3ed
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Wed Jun 9 11:40:25 2010 +0200
JPEG support: introducing jpeg encoding for spice bitmaps
commit 41171d081d821278e002b3699517bf3a177046ff
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri May 21 10:51:03 2010 +0200
Fix spelling errors in comments and strings
commit 4640fbccf6011cb7570fb4a976789aec1895152e
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed May 19 16:03:32 2010 +0200
Use the new byteswap macros from spice-protocol
commit 1c4cfe30221e208398cc8f64bf2ae2251a4ffd53
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Mon May 3 11:32:35 2010 +0200
Add C version of find_msb()
This patch allows people to build the spice-client on any 32bit/64bit
architecture.
by Bryan Stillwell <bryan at bokeoa.com>
commit f8167076710f49f6ddc94280021bc7cf27d09a59
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon May 3 12:08:00 2010 +0200
Remove all mentions of "cairo" from the code
The command line option is renamed from "cairo" to "sw", and
similarly all filenames and types from Cairo to Sw (and similar).
commit 4d086a580dcb8568a2cdb9dee5f17805a93f273e
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Apr 29 11:40:07 2010 +0200
win32 client: Remove unnecessary GDIImage type
We just use pixman_image_t as the "information about image data" structure.
commit af81d101885a1c2057a09f18e1466b928eb44346
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Apr 28 15:43:41 2010 +0200
Add support for SPICE_IMAGE_FLAGS_HIGH_BITS_SET
commit 9d2e9eb1907504f9fbb81963f070e76f743df928
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Apr 28 12:15:24 2010 +0200
Clear alpha in xRGB destination to avoid pixman setting it to 0xff
Pixman sometimes sets the ignored high byte to 0xff during alpha
blending. This is correct according to pixman specs, as the high
byte is ignored. However its not what windows expects, and it causes
unnecessary regions with non-zero high byte, causing us to
send rgba data instead of rgb which compresses worse.
So, we detect this and clear the high byte.
commit b8da4097b1c5a37174eefa689e21dd7487e22f8c
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Apr 28 12:00:25 2010 +0200
Fix line lengths and tabs
commit 3579157721998b957ff86b20fbfb090837d866cb
Author: Gerd Hoffmann <kraxel at redhat.com>
Date: Mon Apr 26 13:47:15 2010 +0200
fix two warnings
commit 7cd708c510f6a0ac66be7682210333ddfa0c731c
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Apr 23 21:02:59 2010 +0200
Remove surface format workaround now that win32 driver is fixed
The win32 driver makes all 32bit surfaces be xRGB now, so we
can remove this old workaround.
commit d6bb2568f0ef998052737521e465275299abb396
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Apr 23 16:33:36 2010 +0200
Win32 canvas fixes
commit 733787209841aa465934a36ef52f22d083dc2b3a
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Apr 23 15:15:40 2010 +0200
Support alpha surface sources and destinations
commit 419dcf949c3bb6a26de7182745162490941a23cc
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Apr 22 17:48:21 2010 +0200
Localize palettes for LZ PLT format
This is needed since they always decode to 32bit mode.
commit f5508e3c231c51e7d1b4c396ec501d6b5496b2c0
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Apr 19 16:31:45 2010 +0200
Make each surface its own depth/format
Surface creation now specifies the exact format, not only the bit depth
of each surface which is used for rendering.
Additionally we now actually store the surfaces in that format, instead
of converting everything to 32bpp when drawing or e.g. handling palettes.
commit 5fc47f848c115702cf4110041fc34800e563536d
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Apr 19 16:19:43 2010 +0200
Make client canvas and pixmaps handle more formats and simplify
We now support 16bit format pixmaps as well as the old ones. Including
both 555 and 565 modes.
We drop the palette argument for pixmap construction as it was only
used for black/white anyway.
Canvas creation is simplified so that there is no separate set_mode
state. Canvases are already created in the right mode and never change.
commit fbcc890794405181b3cd1ba1c201b67443f40824
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Apr 21 17:45:07 2010 +0200
common: Add lookaside storage for pixman image format
Ideally we should just read this from the pixman image, but
there is no API to do so in stable pixman, so we store it.
commit eb14443bf253ed4bd6866e001f9336678f56d219
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Apr 19 15:49:20 2010 +0200
Add pixman utilities for bitmap to pixman_image_t conversion
commit f8ca7a37f6810ce219dbf1b07c3bb97cb9707ce8
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Apr 19 15:43:54 2010 +0200
Add support for 16bit rop3
commit 76ba080d8b8ff25e0719b4b2433347d6817c07bc
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Apr 21 18:42:58 2010 +0200
Remove unused method canvas_surf_to_invers
commit 61fdf6bf0d4d1aa4471d10a80ec98ccb596851d0
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Apr 23 16:33:19 2010 +0200
Fix warnings breaking win32 build
commit b080f39fd1ef8decc6d673915f1a3e6506ceeb4e
Author: Izik Eidus <ieidus at redhat.com>
Date: Wed Apr 14 19:38:49 2010 +0300
spice: server: change update_area command
The new command return dirty area to be used
by users that want spice to render localy or
into some framebuffer (sdl / vnc)
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit 92e30df45c80822ed09ce7ce6c7c4f7e09a69c0e
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Apr 13 22:22:15 2010 +0200
Relicense everything from GPL to LGPL 2.1+
commit ff34dbe28cb1a9362737c0d56770ebed805e3e9c
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Apr 8 12:05:10 2010 +0200
Fix win32 build with pixman 0.18.0
commit 8eff6d69215cb6c33c4bcedbd42ed109d0b9cb87
Author: Izik Eidus <ieidus at redhat.com>
Date: Mon Apr 12 11:57:34 2010 +0300
fix 16bpp support on cairo_canvas
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit f97d483281c3ee005fbd693883c962b6a4abafd9
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Apr 12 10:29:42 2010 +0200
Always tread depth 24 (i.e. non alpha) as depth 32 when blitting
When blitting we don't really care about alpha mismatches, we just copy bits
anyway.
commit 8b6acdea07dd585ebdf36e0ed79f04a7dda07ccf
Author: Izik Eidus <ieidus at redhat.com>
Date: Fri Apr 9 05:06:32 2010 +0300
spice: win32 client: fix gdi locking
While the fix could have been more effective,
it seems like this patch stream better with the coding
logic that was there..., maybe later we will want to change
the locking into more effective way.
(There is just the primary surface to protect in reiality)
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit 2f0bc9d38e82bdf99c53a3095ef5e28852b871c6
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Apr 8 17:09:32 2010 +0200
Initialize _kill_mark so we don't get spurious valgrind warnings
commit 093e660191f057a026d36427cc804a341c699cf4
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 31 15:27:08 2010 +0200
Remove non-used lookup3.[ch]
commit c442c54c5173a09ac3040a983867ad2cdebe06a2
Author: Izik Eidus <ieidus at redhat.com>
Date: Mon Apr 5 22:57:37 2010 +0300
spice: common: gdi_canvas fix gdi objects leak
BitmapMask was used by the draw_text function as well
therefore we need to mark from_surface = 0 if we want
it to release the boject...
(Was evil, took me few hours to understand from where
the leak come...)
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit e66440d5637e4ac6bf4cf3b20cd73465ee812aba
Author: Izik Eidus <ieidus at redhat.com>
Date: Sat Apr 3 05:35:31 2010 +0300
libspice: add off screens support
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit 998bf873bf25fc8e8a326b03fdda11e79ed8b83c
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 24 17:02:20 2010 +0100
Add spice_strndup
Also, make str(n)dup handle NULL correctly
commit a12f3fe2421f121656f7a142873c278ee72be10c
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Mar 18 08:57:42 2010 +0100
Fix uninitilized memory read in stroke_fill_spans()
y2 was not initialized
commit 4594833a1b2d1fd33291fe01c252a5030cdc30ed
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 17 20:08:59 2010 +0100
Use nearest scaling for DRAW_ALPHA_BLEND since this is what win32 needs
DrvAlphaBlend is the only current user of DRAW_ALPHA_BLEND, and its
defined to do nearest (COLORONCOLOR) scaling, not bilinear.
commit 7bf964b56707a91a185ce3ae6f5e942a85746870
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 17 10:06:40 2010 +0100
Fix up empty region checks in canvas operations
We rely on not passing on empty rects to the drawing operations by
checking for empty regions and exiting early. However the checks
were wrongly using pixman_region32_n_rects(region) == 0, whereas
we should be using pixman_region32_not_empty().
commit 7653380e7e3ba4bf6593e473244b1d069f6ffbd3
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 10 21:11:46 2010 +0100
Use the spice allocator in common/
commit 59b330b4d2fbfd410bf5ade59a7939017e9e3659
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 9 12:23:49 2010 +0100
New memory allocators that exit on OOM and handle multiplication overflow
Every place that does a regular malloc/calloc and aborts on failure
should use spice_malloc/spice_mallo0 instead, which is leaner and cleaner.
Allocations of dynamically sized arrays can use g_malloc_n or g_new etc
which correctly handle multiplication overflow if some of the arguments
are not trusted.
commit 1327d81492a8780ec1dcd18da0fb6a0d079fad21
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 10 21:26:13 2010 +0100
Define GL_GLEXT_PROTOTYPES in CFLAGS not in random places in the source
commit a537adc6210305d71acf9e8f50647317daf30a32
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 9 16:01:12 2010 +0100
Update gdi canvas wrt latest changes
ALIGN -> SPICE_ALIGN
commit 29b01c2c16b2522c1b8428b06bc3dfe7a379ad8a
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 9 11:10:00 2010 +0100
Use macros from <spice/macros.h> rather than duplicate them
commit a64e487d78d48fd1e5f142970b9e431a81b7321d
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Mar 8 17:49:18 2010 +0100
Move draw_rop3 to canvas_base
commit f01c1dac362a465ea03f884e34a66b4235e64322
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Mar 8 17:29:59 2010 +0100
Move canvas_draw_stroke to canvas_base
commit b6ba1e0138d54a398709b4f077becc5a778f73a3
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Mar 4 14:23:08 2010 +0100
Move most of the shared draw_xyz() methods from CairoCanvas to CanvasBase
This adds a set of virtual methods for low-level operations. A subclass
can choose to implement those and let the default CanvasBase implementations
handle the highlevel stuff.
commit c0e6bd560e3560e0672c89f7671ff6372a521d46
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 3 16:43:36 2010 +0100
Move canvas_region and group_start/end to canvas_base
commit 3b73f93cf2f623b52595a62e48d3a705f21496cc
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Mar 3 15:08:58 2010 +0100
Move virtualization of canvas drawing into common/canvas_base
Instead of having two virtualizations of the canvas we push the
virtualization into the canvas code itself. This not only avoids
the duplication of this code, it also makes the exposed API for the
canvas much smaller (in terms of exported API).
It also lets us use the virtualization to implement basic support
for operations in canvas_base which is then overridden by each canvas
implementation.
commit 981270d38a77ce54e9ba3cc7403de27d157692a1
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 2 16:25:22 2010 +0100
Make virt mapping an interface
commit 5912af45f071330da684ea357635695999afed88
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 2 15:51:12 2010 +0100
Make glz_decoder non-optional canvas_base in canvas constructors
It can still be NULL, but we simplify the headers by always including it.
There is no practical performance difference here.
commit a8e126f5240ae2bc73cb39c504e8af38cc0d2d51
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Mar 2 15:41:08 2010 +0100
Make canvas Glz decoder integration nicer
We use a dynamic interface similar to e.g. SpiceImageCache instead
of passing both function and opaque
commit 2f29c42fbf7d490b95e0026deb42911ab9c0fa2f
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Mar 8 19:41:34 2010 +0100
Fix colorkeying in pixman_utils.c
We were masking out the alpha bit in the key color not int
the source pixel, so colorkeying didn't work when the high byte
was != 0. For instance in the shutdown dialog in XP.
commit a5eccd6cdbbdd3853d4aef9f1c6eb2f1586be7c6
Author: Larsson at .(none) <Larsson at .(none)>
Date: Fri Feb 26 08:58:07 2010 +0100
Make gdi canvas build in the new pixman world
commit 561ffc8fa49b4677cfdc8bcad0fdc69d30c15402
Author: Larsson at .(none) <Larsson at .(none)>
Date: Fri Feb 26 08:56:15 2010 +0100
Always include spice/types.h before pixman so standard int types exist
commit 196e75a55f69783cf770c917daaaa59ffddffc0b
Author: Larsson at .(none) <Larsson at .(none)>
Date: Fri Feb 26 08:55:36 2010 +0100
Fix warnings from visual studio compiler
commit 61e27b04a1cbf56577aa9e84b305b8f2442d3888
Author: Larsson at .(none) <Larsson at .(none)>
Date: Fri Feb 26 08:52:38 2010 +0100
Have only one copy of ROUND macro and cast to int explicitly
commit 6daf94a2bc25d8f91d470787b63e15b0635bac0c
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 18 20:44:28 2010 +0100
Remove last cairo use from canvas_base
commit 82454573d1e491833e3596f85386bf32924607f6
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 18 20:42:58 2010 +0100
Remove cairo_t from cairo canvas
commit 2192cc5e893a7fec4b72eafc07b1ad4b6901aa0d
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 18 19:04:35 2010 +0100
Covert cairo canvas put_image() to pixman
commit 2afb5544da35c4ff86ad8b49679cd18d8be5efe6
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 21:33:23 2010 +0100
Replace custom region implementation with pixman_region32_t
pixman_region32_t is an efficient well tested region implementation (its
the one used in X) that we already depend on via pixman and use in
some places. No need to have a custom region implementation.
commit 962bc74ed911df84464e1a925ec920ae53396c6b
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 16:11:18 2010 +0100
Convert cairo canvas clear() to pixman
commit 62a6c2513d63a326b131c9c766341b429b70dd7f
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 16:09:27 2010 +0100
Convert cairo canvas group_start/end to pixman
commit f6f84f518c5c939097a3996f98e4217b0bc9209c
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 16:09:06 2010 +0100
Convert cairo canvas read_bits() to pixman
commit f853baae92a74ec6bd31907fef22a2568ad0cdbe
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Feb 23 12:02:29 2010 +0100
Remove unused cairo helper functions
commit bbf8b18b850c9996d0d25aed0ac8e737c8793c0f
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 15:51:29 2010 +0100
Convert cairo canvas to use pixman for draw_stroke
commit 2685407da33200198584eb9355c0d1703004248f
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Feb 15 11:42:26 2010 +0100
Convert cairo canvas draw_transparent to use pixman
commit d2d7d6a8067b9071d2d52bb7bdc7912a40518ab0
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Feb 12 17:02:23 2010 +0100
Convert cairo canvas draw_rop3 to using pixman
commit 2e3a63a6dda1b0976b80146b904bf0baf4393185
Author: Alexander Larsson <alexl at redhat.com>
Date: Fri Feb 12 16:22:01 2010 +0100
Convert draw_blackness/whiteness/invers to using pixman
commit 1f1f32d4c80af34fa72216d773232e0769b60846
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 11 17:25:12 2010 +0100
Convert cairo canvas alpha_blend to using pixman
commit 45d546118309b4d9670109abf154f8a6bab444f1
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 11 16:43:08 2010 +0100
Convert cairo canvas draw_text to using pixman
commit 0671b02dbcf27a2a6462b8c217861270616375b0
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 10 14:00:42 2010 +0100
Convert cairo canvas copy bits to pixman
commit fd80e8a0e8ae2e35915e0f11a2c7541b97619158
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 10 12:09:52 2010 +0100
Convert cairo canvas draw_copy() to using pixman
This is just identical to draw_blend().
commit 2275b25c94314356bbe2efa4222f4300504559e8
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 10 11:22:19 2010 +0100
Convert cairo canvas draw_blend() to using pixman
commit 2be667e8a39cc910dfb78d280450b69bab846130
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Feb 9 20:33:04 2010 +0100
Convert cairo canvas draw_opaque() to using pixman
commit de3d6525e921dad3397f57d9788a538883b7e60d
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Feb 9 17:08:18 2010 +0100
Convert cairo canvas draw_fill() to using pixman
commit 5784e86202bd3971634ef66f10e79228a4f7b88a
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Feb 9 17:02:36 2010 +0100
Add possibility to not invert bitmask in canvas_get_mask()
This allows the pixman implementation to instead invert the (generally
smaller) region instead of duplicating the bitmap to invert it.
commit f4b7a9d00451455505f4fb8dc3516eb893ae41b0
Author: Alexander Larsson <alexl at redhat.com>
Date: Tue Feb 9 16:39:35 2010 +0100
Use pixman_image_t instead of cairo_surface_t as the generic pixman container
This allows us to use the simpler dependency of pixman outside of the
cairo backend, and it later lets us move the cairo backend to using
pixman only.
commit f9e187c619dea25079c6b4499aedf1ce65d4511a
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Feb 8 15:38:24 2010 +0100
Turn image and palette cache into c style dynamic interface
Instead of passing a bunch of function pointer and an opaque
pointer we make a real type and add a vtable pointer to it.
This means we can simplify all the canvas constructors, etc.
commit 517e38ad0fcfdd2063c74f1d4958045a1fbd0b5d
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Feb 8 12:14:45 2010 +0100
Add pixman_image_t referencing the cairo_canvas bits
This references the same data as the cairo surface and can be used
for drawing to the surface using direct pixman calls instead.
commit 639b6b5b26668ad43d103e397218f43196659a7c
Author: Alexander Larsson <alexl at redhat.com>
Date: Wed Feb 17 15:50:44 2010 +0100
Add line rasterizer
commit 98f2dfbf2f9d771e1d16132cc11894679ddd5100
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Feb 8 11:48:12 2010 +0100
Add pixman utilities
This includes:
* pixman region from SpiceRects
* rop2 enum
* solid fill
* solid fill with rop
* tiled fill
* tiled fill with rop
* blit
* blit with rop
* copy rect
commit 9d9a3e12c0d2d631cde3620685ea3f7150ba0ebe
Author: Alexander Larsson <alexl at redhat.com>
Date: Mon Feb 8 11:54:02 2010 +0100
Add emacs settings for indent according to spice styleguide
commit 5ead2f51a20c2cd141867f21d702a8473b77570b
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 4 18:46:22 2010 +0100
Use standard int types and <spice/types.h>
commit 87d0104241bc16840a51b448ef1f0c7b679b8671
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 4 18:13:02 2010 +0100
Use the new header names
I just ran:
find -name "*.[ch]" | xargs sed -i -f ../spice-protocol/includes.sed
find -name "*.cpp" | xargs sed -i -f ../spice-protocol/includes.sed
commit 2637b1ac76971d2e96f7e859dde5c9fba5e980b1
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 4 18:04:26 2010 +0100
Rename symbols that were changed in spice-protocol
This is an automatic change using:
$ find -name "*.[ch]" | xargs ../spice-protocol/rename-identifiers.sh ../spice-protocol/renames
$ find -name "*.cpp" | xargs ../spice-protocol/rename-identifiers.sh ../spice-protocol/renames
commit 3fb8b84103469ae2285907d13dc4a9d857c4338e
Author: Alexander Larsson <alexl at redhat.com>
Date: Thu Feb 4 17:56:42 2010 +0100
Remove headers that were moved to spice-protocol
commit a940ecc40b5d477dbbcd4c733086640c95057519
Author: Izik Eidus <ieidus at redhat.com>
Date: Thu Jan 28 04:44:43 2010 +0200
libspice: add surface 0 support
This include alot of infestracture for off screens.
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit 89b1b0e8971be98c200daa7e13340b9d005be8ee
Author: Yaniv Kamay <ykamay at redhat.com>
Date: Sun Jan 10 13:37:05 2010 +0200
client: change rerror code to be positive
commit d6ee10057e8daa303e4e95c5cb83a17db3d4c8cb
Author: Yaniv Kamay <ykamay at redhat.com>
Date: Mon Jan 11 19:57:29 2010 +0200
client: add Platform::term_printf
Platform::term_printf is a variant of printf that
on windows dynamically opens console in order to
have visible output during command line processing.
commit f7016f367f4dad01767b4a37fb34a1132eccbdef
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Sun Jan 10 09:48:38 2010 +0200
server,client: server authentication for secured channels.
3 available mechanisms: by public key, by host name, and by certificate subject name.
In the former method, chain of trust verification is not performed.
The CA certificate files are looked for under <spice-config-dir>/spice_truststore.pem
windows <spice-config-dir>=%APPDATA%\spicec\
linux <spice-config-dir>=$HOME/.spicec/
commit f40720e7803b332141b09082a90484caaf668747
Author: Izik Eidus <ieidus at redhat.com>
Date: Wed Dec 23 17:43:12 2009 +0200
spice client: fix wrong gdi-canvas handling of blend_alpha
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit 8d3823c46a88f69b34f9db20aea8ab8f8aae7e63
Author: Izik Eidus <ieidus at redhat.com>
Date: Sat Nov 21 22:42:38 2009 +0200
spice: server: add memslots support.
Signed-off-by: Izik Eidus <ieidus at redhat.com>
commit ee15aef4bca80195f00e5b9f96c4b59c6d2bb0cf
Author: Yaniv Kamay <ykamay at redhat.com>
Date: Mon Oct 26 23:30:41 2009 +0200
fix build on Debian
commit 5d6ebd5f1fefe4d0f0532e370ac1c95fb8510aee
Author: Yonit Halperin <yhalperi at redhat.com>
Date: Fri Oct 16 00:21:43 2009 +0200
tunnel
commit a9ae774c901269c55b7ce8ccf5c26483bedeea58
Author: Yaniv Kamay <ykamay at redhat.com>
Date: Sat Sep 19 21:25:46 2009 +0300
fresh start
More information about the Spice-commits
mailing list