summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add missing includes of config.hDaniel P. Berrange2012-01-1314-1/+14
| | | | Not all files were including config.h
* Remove bogus include of strings.hDaniel P. Berrange2012-01-134-4/+0
| | | | The tests include strings.h but don't need any of its functions
* 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-13182-184/+1
| | | | Remove any blank lines at the end of all source files
* Remove 'the the' typosDaniel P. Berrange2012-01-132-2/+2
|
* Remove unused assert.h includeDaniel P. Berrange2012-01-131-1/+0
| | | | The assert.h include was never used in any code
* Always quote first arg to AC_DEFINEDaniel P. Berrange2012-01-131-4/+4
| | | | The first arg to AC_DEFINE should always be quoted
* 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
* Improve usefulness of README fileDaniel P. Berrange2012-01-131-9/+77
| | | | | | | The COPYING file already contains the license text, so the README file need not repeat it. Instead put in a description of what SPICE is, simple install instructions & pointers to mailing lists and bug trackers
* Fill out the AUTHORS file with some contentDaniel P. Berrange2012-01-131-0/+33
| | | | | | The AUTHORS file is empty, fill it in with a list of present and past maintainers, and email addresses of all people who have contributed patches
* 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
* Rewrite code to avoid triggering warning about casting param to free()Daniel P. Berrange2012-01-131-1/+2
| | | | | | | | Since free() takes a void* parameters do not need to be cast. The existing code here is actally fine, but it trips up the syntax-check rule, so tweak it to an equivalent construct which passes the syntax check
* Remove useless if() before free()Daniel P. Berrange2012-01-1311-42/+16
| | | | | 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-1319-877/+877
| | | | | | 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-132-17/+10
|
* client/windows: arraysize(inf.bmiColors) == 1 in mingw32Alon Levy2012-01-132-0/+6
|
* client/windows: fix typo, make error messages uniqueAlon Levy2012-01-131-2/+2
|
* client/windows/main: mingw32 provides PACKAGE_VERSIONAlon Levy2012-01-131-0/+8
|
* client/common: mingw32: workaround HAVE_STDLIB_H redefined in jconfig.hAlon Levy2012-01-133-0/+9
|
* client: mingw32 build needs the jpeg_boolean defineAlon Levy2012-01-133-3/+3
|
* client/common.h: mingw32 fixAlon Levy2012-01-131-2/+2
| | | | | | define PACKAGE_VERSION only ifndef __GNUC__ Since it is defined by autoconf and so it kinda comes with using the GNU compilers.
* client/Makefile.am: mingw32 fixesAlon Levy2012-01-131-1/+14
| | | | | | * build resource file with windres * include client/windows and not client/x11 * use CXIMAGE_CFLAGS (it's already set to -DDISABLE_CXIMAGE correctly)
* client: log command line (rhbz 767581)Alon Levy2012-01-131-0/+7
|
* client-x11: Fix building with gcc-4.7Hans de Goede2012-01-132-4/+4
| | | | | | | | | | Without this change gcc says: x11/res.cpp:31:1: error: narrowing conversion of ‘(((unsigned int)_alt_image.<anonymous struct>::width) * 4u)’ from ‘unsigned int’ to ‘int’ inside { } is ill-formed in C++11 [-Werror=narrowing] x11/res.cpp:61:1: error: narrowing conversion of ‘_red_icon.<anonymous struct>::width’ from ‘const uint32_t {aka const unsigned int}’ to ‘int’ inside { } is ill-formed in C++11 [-Werror=narrowing] x11/res.cpp:61:1: error: narrowing conversion of ‘_red_icon.<anonymous struct>::height’ from ‘const uint32_t {aka const unsigned int}’ to ‘int’ inside { } is ill-formed in C++11 [-Werror=narrowing] cc1plus: all warnings being treated as errors Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* smartcard handling: Fix compilation when ASSERT-s are turned onHans de Goede2012-01-131-1/+1
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* server: add support for SPICE_COMMON_CAP_MINI_HEADERYonit Halperin2012-01-124-127/+378
| | | | | | | | | Support for a header without a serial and without sub list. red_channel: Support the two types of headers. Keep a consistent consecutive messages serial. red_worker: use urgent marshaller instead of sub list. snd_worker: Sound channels need special support since they still don't use red_channel for sending & receiving.
* configure: spice-protocol >= 0.10.1 (mini header support)Yonit Halperin2012-01-121-1/+1
|
* server: Limit the access to SpiceDataHeader of messages - only via red_channel.Yonit Halperin2012-01-128-71/+99
|
* server/red_worker: pass remote caps to display/cursor red_channel_client'sYonit Halperin2012-01-123-12/+68
|
* server/red_channel: introduce urgent marshallerYonit Halperin2012-01-122-6/+85
| | | | | | | | | | When red_channel::red_channel_client_begin_send_message is called, the message that is pending in the urgent marshaller will be sent before the one in the main channel. The urgent marshaller should be used if in the middle of marshalling one message, you find out you need to send another message before. This functionality is equivalent to the sub_list messages. It will replace them in the following patches, when sub_list is removed from Spice data header.
* spice.proto: add SPICE_MSG_LIST to base channelYonit Halperin2012-01-121-0/+1
|
* codegen: Fix enums.h generationHans de Goede2012-01-122-2/+7
| | | | | | | | | | | | | 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@redhat.com>
* Do not assume that SPICE is using a TCP socketDaniel P. Berrange2012-01-091-2/+4
| | | | | | | | | | If setting the TCP_NODELAY socket option fails with ENOTSUP, then don't treat this is a fatal error. SPICE is likely just running over a UNIX socket instead. * server/inputs_channel.c: Ignore TCP_NODELAY socket opt fails Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Allow auth to be skipped when attaching to pre-accepted clientsDaniel P. Berrange2012-01-092-10/+15
| | | | | | | | | | | When an applications passes in a pre-accepted socket for a client, they may well have already performed suitable authentication out of band. They should thus have the option to request that any spice authentication is skipped. * server/reds.c, spice.h: Add flag for skipping auth Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Add APIs for injecting a client connection socketDaniel P. Berrange2012-01-093-4/+33
| | | | | | | | | | | Allow applications to pass a pre-accepted client socket file descriptor in. The new APIs are spice_server_add_ssl_client and spice_server_add_client * server/reds.c: Implement new APIs * server/spice.h: Define new APIs Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Move SSL setup out of reds_accept_ssl_connectionDaniel P. Berrange2012-01-091-10/+21
| | | | | | | | | | | To allow setup of an SSL client, from a passed in client socket, move all the SSL client initialization code out of reds_accept_ssl_connection and into a new method called reds_init_client_ssl_connection * server/reds.c: Introduce reds_init_client_ssl_connection Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Rename __reds_accept_connection into reds_init_client_connectionDaniel P. Berrange2012-01-091-13/+18
| | | | | | | | | | | | Remove the accept() call from __reds_accept_connection and rename it to reds_init_client_connection. The caller is now responsible for accepting the new socket. The method reds_init_client_connection merely initializes it for usage. * server/reds.c: Add reds_init_client_connection Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* Merge reds_accept_connection into reds_acceptDaniel P. Berrange2012-01-091-18/+8
| | | | | | | | | | Neither reds_accept_connection or reds_accept are very long, so the split is pointless & increases code size for no gain. Merge them together to reduce code size * server/reds.c: Merge reds_accept_connection into reds_accept Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
* spicevmc: Set sockopt nodelay for usbredir channelsHans de Goede2011-12-221-0/+15
| | | | | | We want as little latency as possible with usb channels. Signed-off-by: Hans de goede <hdegoede@redhat.com>
* server: don't reset the display channel when disconnecting all its clients ↵Yonit Halperin2011-12-221-12/+6
| | | | | | | | | | | | ,FDBZ #43977 The display channel was unnecessarily set to NULL when we disconnect all the clients (on flush display commands timeout). As a result, we recreated the display channel when a new client was connected. The display channel was created with default red_channel.client_cbs, while its correct client_cbs are the ones that are set by the red_dispatcher when it creates the first display_channel. This fix enforces a single creation of the display channel (per qxl), via the red_dispatcher.
* client: screen: fix typo _forec_update_timerUri Lublin2011-12-222-6/+6
| | | | sed -i 's/_forec_update_timer/_force_update_timer/' screen.cpp screen.h
* client: RedScreen::RedScreen: fix initialization order of _menu_needs_updateUri Lublin2011-12-221-1/+1
| | | | Related to a91b0b3ff712eb2a7d91a951f2af7842495357c3
* client: foreign-menu: pass "active" param when creating a ForeignMenu (#769020)Uri Lublin2011-12-203-4/+4
| | | | | | | | | | | | | | | | The default stays the same -- false. A race could prevent setting ForeignMenu::_active correctly. That happened when Application::on_app_activated was called before _foriegn_menu was created. When foriegn_menu was created its _active defaults to false, and that has not changed, until focus was taken out and back in spice-client window. This caused usbrdr to sometimes not auto-share devices, unless the user switched focus to a different application and back to spicec. The fix updates ForiegnMenu::_active upon creation.
* client: update menu if needed when exiting full-screen mode (#758260)Uri Lublin2011-12-202-1/+7
|
* client: menu: make RedWindow::set_menu() return an error-code (#758260)Uri Lublin2011-12-203-5/+14
| | | | | | | | RedWindow::set_menu() can fail (on Windows when in fullscreen mode). For Windows spice-client, when in fullscreen mode, the system-menu is NULL. Returns 0 upon success, non-0 (currently only -1) upon failure.
* client controller/foreign_menu: use memmove instead of memcpy in readersUri Lublin2011-12-202-2/+2
| | | | When src/dst memory areas may overlap, it's safer to use memmove.
* spicevmc: Fix assert when still connected on session disconnect (fdo#43903)Hans de Goede2011-12-181-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Currently when the main channel disconnects while a spicevmc channel (such as a usbredir channel) is still connected, qemu will abort with the following message: ring_remove: ASSERT item->next != NULL && item->prev != NULL failed This is caused by red_client_destroy() first calling: rcc->channel->client_cbs.disconnect(rcc); And then calling: red_channel_client_destroy(rcc); For each channel. This is fine, but the spicevmc disconnect code does a red_channel_client_destroy(rcc) itself since as usb devices are added / removed, the channels carrying their traffic get connected / disconnected and they get re-used for new devices, which won't work if the old channel is still there when the new connection comes in. This patch fixes the double destroy when there are still spicevmc channels connected by not doing the red_channel_client_destroy from the spicevmc disconnect code when not just the channel, but the entire client is disconnecting. Signed-off-by: Hans de Goede <hdegoede@redhat.com>