summaryrefslogtreecommitdiffstats
path: root/common
Commit message (Collapse)AuthorAgeFilesLines
* Update .gitignore with a few more generated filesDan McGee2012-01-231-0/+1
| | | | Signed-off-by: Dan McGee <dpmcgee@gmail.com>
* Remove trailing whitespace from end of linesDaniel P. Berrange2012-01-1310-38/+37
|
* Add missing includes of config.hDaniel P. Berrange2012-01-131-1/+1
| | | | Not all files were including config.h
* Remove unused backup fileDaniel P. Berrange2012-01-131-1413/+0
| | | | | The common/glc.c.save file appears to be a obsolete copy of glc.c
* Remove trailing blank linesDaniel P. Berrange2012-01-1319-19/+0
| | | | Remove any blank lines at the end of all source files
* Fix up copyright decl to always use 'Copyright (C) Red Hat, Inc.'Daniel P. Berrange2012-01-134-4/+4
| | | | A couple of files were missing '(C)' in the copyright header
* Remove casts from void * with xrealloc() callsDaniel P. Berrange2012-01-131-12/+10
| | | | | The xrealloc() function returns void*, so the return value never needs to be cast
* Remove useless if() before free()Daniel P. Berrange2012-01-137-31/+12
| | | | | The free() function allows NULL to be passed in, so any code which puts a if() before free() is wasting time
* Death to all TABsDaniel P. Berrange2012-01-137-90/+90
| | | | | | Source files should all use spaces instead of tabs for indentation. Update the few files not already in compliance
* common/ssl_verify: special case to WIN32 that isn't MINGW32Alon Levy2012-01-131-1/+1
|
* common/bitops: mingw32: reorder so __GNUC__ define is checked firstAlon Levy2012-01-131-14/+14
|
* common/backtrace: for mingw32 no pipe/wait_pid, just disableAlon Levy2012-01-132-4/+23
|
* client/windows: fix several assigned but not used errorsAlon Levy2012-01-131-15/+9
|
* client/common: mingw32: workaround HAVE_STDLIB_H redefined in jconfig.hAlon Levy2012-01-132-0/+6
|
* server: add prefix argument to red_printf_debugAlon Levy2011-11-071-2/+2
| | | | | printed before function name. No central location for prefixes. Adding "WORKER", "ASYNC", "MAIN" since those were the current users.
* common/spice_common.h: red_printf_debug: fix wrong signAlon Levy2011-11-071-1/+1
|
* server,proto: tell the clients to connect to the migration target before ↵Yonit Halperin2011-11-021-0/+2
| | | | | | | | | | | | | | | 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
* server: fix function prototypesChristophe Fergeau2011-09-052-5/+5
| | | | | | | | 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]
* add C++ guards to backtrace.hChristophe Fergeau2011-09-011-0/+6
| | | | | Without these, spice_backtrace() can't be used from the C++ client code.
* fix memory leak in error pathChristophe Fergeau2011-08-251-1/+2
| | | | Issue found by the Coverity scanner
* common: introduce red_printf_debugAlon Levy2011-08-231-0/+10
|
* common/ring: RING_FOREACH_SAFE: use shorter version from qemuAlon Levy2011-08-231-5/+3
|
* common/backtrace.h: disable for WIN32Alon Levy2011-07-311-0/+4
| | | | | This also catches mingw32 which is probably fine, but at least it fixes the build on visual studio.
* fix integer marshalling helpers on big endianChristophe Fergeau2011-07-281-6/+6
| | | | | | 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.
* fix typo in big endian code pathChristophe Fergeau2011-07-281-2/+2
| | | | uint63_t should be uint64_t
* fix make distcheckChristophe Fergeau2011-07-221-1/+1
|
* common: add backtrace via gstack or glibc backtraceAlon Levy2011-07-194-0/+142
| | | | | | 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.
* sndworker: add AudioVolume/AudioMute messagesMarc-André Lureau2011-06-221-0/+9
| | | | | | | | | | | | | | | | | | | 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
* common: add WIN64 ifdef for spice_bit_find_msb (fix broken windows x64 build)Arnon Gilboa2011-05-221-2/+2
| | | | | inline __asm is not supported in x64, so use the naive implementation until x64 asm implemented.
* common: use INLINE instead of inlineArnon Gilboa2011-05-127-38/+20
| | | | | | 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.
* common: fix ssl_verify windows build errorsArnon Gilboa2011-05-122-2/+8
|
* common: add ssl_verify.c common codeMarc-André Lureau2011-05-033-0/+543
| | | | | | | | | | | | | | | | | | 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.
* common: add ring_get_length() for debugging purposesMarc-André Lureau2011-05-031-0/+13
| | | | | 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.
* common: mem.h add alloca definitionMarc-André Lureau2011-05-031-0/+30
| | | | | We don't support the autoconf ALLOCA/C_ALLOC fallback. If one day, someone cares for a weird platform, he can fix it.
* common: spice_memdup could accept NULLMarc-André Lureau2011-05-031-0/+4
| | | | (this patch is not to solve a crash fix, but to align with glib API)
* common: add windows.h where required, make gdi_handlers staticMarc-André Lureau2011-05-033-1/+8
| | | | | This patch has not been verified with VS/brew. It should be safe hopefully. Compilation is fine with mingw32/spice-gtk.
* move get_time_stamp to main_channel.cChristophe Fergeau2011-05-031-7/+0
| | | | | There is only one user of get_time_stamp from spice_common.h so it's not really useful to keep it there.
* use standard do { } while (0) for spice_common.h macrosChristophe Fergeau2011-05-031-11/+11
|
* move WARN and WARN_ONCE to spice_common.hChristophe Fergeau2011-05-034-15/+7
|
* common: use PANIC from spice_common.hChristophe Fergeau2011-05-033-20/+0
|
* common,server: use ASSERT from spice_common.hChristophe Fergeau2011-05-037-36/+3
| | | | | | | 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.
* common: don't duplicate find_msb implementationChristophe Fergeau2011-05-034-67/+95
|
* add missing staticChristophe Fergeau2011-05-031-2/+2
|
* add #include <config.h> to all source filesChristophe Fergeau2011-05-0320-5/+63
| | | | | | | | 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
* autotools: correctly build canvas-related codeChristophe Fergeau2011-05-039-14/+39
| | | | | | | | | | | | | | | | | | | | | 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.
* autotools: refactor the whole build machineryChristophe Fergeau2011-05-031-31/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* common: don't try to redefine PANIC if it already existsChristophe Fergeau2011-05-021-0/+2
| | | | | | | | | | 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.
* use foo(void) instead of foo() in prototypesChristophe Fergeau2011-05-0211-11/+11
| | | | | In C, the latter isn't a prototype for a function with no arg, but declares a function with an undefined number of args.
* common: add missing header guards to gl_canvas.hChristophe Fergeau2011-05-021-0/+5
|
* common: add extern "C" guards to headersChristophe Fergeau2011-05-0223-2/+182
| | | | | | 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.