Commit Graph

318 Commits

Author SHA1 Message Date
Hans de Goede
15b8252289 x11: Use _exit rather then exit on X errors (rhbz#680763)
This avoids us trying to restore the original resolution when we're fullscreen
and an X error happens. As restoring fullscreen is a bad idea then as this
involves making more X calls, which can get us stuck (in side an XLockDisplay
call for example).
2011-03-01 18:08:20 +02:00
Uri Lublin
e9ee6cf914 client: exit nicely for --controller with no SPICE_XPI_SOCKET (rhbz#644292)
When starting spicec with --controller, SPICE_XPI_SOCKET environment
variable must be defined so spicec and the controller can be connected.
2011-03-01 17:58:47 +02:00
Hans de Goede
0c88a60ecc Fix keyb modifiers not syncing from client to client os (rhbz#679467) 2011-03-01 16:12:32 +02:00
Arnon Gilboa
a76fce5514 client/windows: use SPICE_PROTOCOL_DIR in project include dirs
instead of ..\..\..\spice-protocol. Relative path to another git tree is a bit
ugly, since it requires spice-protocol to be in a specific location.

SPICE_PROTOCOL_DIR should also be used in windows qxl and vdagent instead of
SPICE_COMMON_DIR, which is an old and confusing name, due to the common
directory in spice git repo.
2011-02-13 12:23:47 +02:00
Hans de Goede
81f0f04ddc Drop static_title.bmp from windows/Makefile.am 2011-02-11 15:36:43 +01:00
Alon Levy
85ce53b6be client/smartcard: libcacard dropped ReaderAddResponse
uses VSC_Error with code==VSC_SUCCESS instead. This means that the VSC_Error
message is overloaded. Instead of the other option of adding a message id,
since the connection is TCP so no messages may be dropped or reordered, by
having each message followed by a response there is no ambiguity. Still
this commit adds a queue for messages that we only have one of which outstanding
at a time, i.e. send, wait for response, send the next, etc. This further
simplifies the logic, while not adding much overhead since only when spicec
starts up it has a situation where it needs to send two events (ReaderAdd
and ATR for Card Insert).
2011-02-09 12:14:03 +02:00
Alon Levy
91bf99a1e9 client/smartcard: ignore VSC_Init 2011-02-07 21:32:40 +02:00
Alon Levy
aed4c72a49 client/smartcard: s/reader_id_t/uint32_t/ (libcacard changed) 2011-02-07 21:31:43 +02:00
Alon Levy
bf6f246b2e client: log subject-host mismatch, and raise ssl warnings to errors 2011-02-07 18:49:37 +02:00
Uri Lublin
ed9b8ae69f 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.
2011-01-27 18:26:09 +02:00
Alon Levy
42f83d18b5 client/windows: don't allocate console unless required 2011-01-27 17:19:07 +02:00
Alon Levy
645236df2b client: fix broken vs2008 build 2011-01-27 17:19:06 +02:00
Alon Levy
9394b2c50e client: --help should not need platform initialization
separate initialization into before command line parsing and after,
call later only if command line parsing succeeds (in particular, it
"fails" if --help is given).
2011-01-27 17:19:05 +02:00
Alon Levy
d20c90c7ef client: gcc 4.6.0: two more unused variable fixes 2011-01-25 17:29:31 +02:00
Alon Levy
9076e2e957 client/cegui: cegui 0.6.0 gcc 4.6.0 related fix
cegui doesn't include stddef required for ptrdiff_t type, we
include it for it.
2011-01-25 17:29:31 +02:00
Alon Levy
6fb222e4f3 client/glz_decoder.cpp: gcc 4.6.0 unused fixes 2011-01-25 17:29:31 +02:00
Alon Levy
f899034fd2 client/display_channel: gcc 4.6.0 unused fixes 2011-01-25 17:29:31 +02:00
Alon Levy
46c70521d5 client/server: warning fixes (gcc 4.6.0)
gcc 4.6.0 added "[-Werror=unused-but-set-variable]", this and the next
few fixes tend to that. Mostly harmless.
2011-01-25 17:22:48 +02:00
Alon Levy
d3b22d86f0 client/server: add missing USE_TUNNEL
disable some code that only makes sense when USE_TUNNEL is defined
in client and server channel security level setting.
2011-01-25 17:16:27 +02:00
Alon Levy
5a2ef3b21c client/server: add missing smartchannel channel security handling
The name to channel id mapping for the smartcard channel is missing,
add it in client and server.
2011-01-25 17:16:18 +02:00
Alon Levy
4b81a8c2a5 client/cmd_line_parser: fix wrong reporting of bad argument in --bla=val case
We use get_opt_long, which allows non ambiguous abbreviations, but
since we didn't like that we have code that checks for abbreviations and
issues an error. But that code only handled separate argument and key like:
--bla value
and didn't handle them in the same arguemnts, like:
--bla=value
This patch fixes that, and gives a slightly better error report (it still
contains the =value part though)
2011-01-06 13:17:21 +02:00
Alon Levy
64c330793e client: CEGUI: search for CEGUI-0.6 to work in F15 (rawhide) 2011-01-05 15:02:56 +02:00
Thomas Tyminski
9f93db6f07 Fixes compilation error of Spice Client (Linux/X11) with OpenGL enabled modified: client/x11/red_window.cpp 2011-01-05 09:59:59 +01:00
Alon Levy
742703f641 mingw32: refix to build on mingw.. 2010-12-30 12:16:31 +02:00
Marc-André Lureau
d66c1904f9 client inputs: stop blinking keyboard when out of focus
We could introduce another boolean to prevent changes, or just reuse
_active_modifiers_event = true to prevent further update.

Additionaly this patch restore the keyboard state when focusing out,
which is fine when dealing with full remote desktop, but should be
reconsidered if/when SPICE supports remote windows managed by client
window manager for instance, imho.
2010-12-30 12:08:31 +02:00
Tiziano Mueller
3c46335004 jpeg_boolean is a mingw32-libjpeg specific thing. Use a define check rather than a version check. 2010-12-30 11:27:29 +02:00
Hans de Goede
392ed65dda spicec: Remove spice-client watermark (rhbz#662450)
This patch stops us from drawing the spice client watermark at the top of
the virtual machine view. We have had requests through several channels to
remove this as it has little added value, and is seen as annoying by some.
Given that we now also have a bugzilla for this I think it is time we really
remove it.
2010-12-16 14:54:46 +01:00
Hans de Goede
3e37f2c1e8 spicec-x11: Let the window manager place our window the 1st time (rhbz#662407)
The problem is that RedWindow::show calls the XLib MoveWindow function
on the window after it has been mapped, moving it to the location in
_show_pos. This is seen by the window manager as the application saying
I know exactly where I want my window to be placed, don't do placing for
me. Which causes the client window to always be shown at pos 0x0, even
though that may not be the best location.

What this patch does is:
1) It makes RedWindow::show not call MoveWindow when a window is
   first created normally and then shown
2) It makes RedWindow::show still call MoveWindow when:
   -when the window has been shown before, and was hidden for some
    reason (controller interface), and is now being re-shown
    so that it ends up being re-shown at its old position
   -when the window is a fullscreen window (screen.cpp always
    calls move on the window before showing it to set its position)
   -when the user switch from windowed mode -> fullscreen ->
    windowed mode again, to make sure that the windowed mode window
    is shown in the same position as before switching to fullscreen
    mode
2010-12-16 14:54:46 +01:00
Hans de Goede
4081d67162 spicec-x11: Add a class hint to our window managet hints
This helps people who want to tell their windowmanager to do something special
with spicec, like make it sticky, or whatever, see:
https://bugzilla.redhat.com/show_bug.cgi?id=662452#c4
2010-12-16 14:54:46 +01:00
Hans de Goede
e47fb5d74f spicec: Add a --title cmdline option (rhbz#662452) 2010-12-16 14:54:46 +01:00
Alon Levy
1bb1bcb9a0 mingw32 build: check for CXImage, disable if not found (only on mingw32)
v2:
 + simplify (Hans)
 + also report presence of cximage for mingw32 target
2010-12-08 17:13:52 +02:00
Alon Levy
0449d0520c mingw32 build: use PRIu64 instead of ll 2010-12-08 17:13:28 +02:00
Alon Levy
916863202a mingw32 build: various fixes 2010-12-08 17:13:08 +02:00
Alon Levy
ff3fb423ed mingw32 build: fix two functions 2010-12-08 17:13:02 +02:00
Alon Levy
8bea5d6b5a mingw32 build: add missing switch flags (nop) 2010-12-08 17:12:56 +02:00
Alon Levy
a19080980d mingw32 build: eol fixes 2010-12-08 17:12:48 +02:00
Alon Levy
78f81ec61c mingw32 build: windows/Makefile.am: double NULL definition 2010-12-08 17:12:43 +02:00
Alon Levy
5aba28df73 mingw32 build: missing linked files for spicec.exe 2010-12-08 17:12:36 +02:00
Alon Levy
9728ea7f5c mingw32 build: remove unused, initialize uninitialized, reorder constructor initializers 2010-12-08 17:11:45 +02:00
Alon Levy
d14b720a3f mingw32 build: fix assignement as condition warning 2010-12-08 17:11:45 +02:00
Alon Levy
1943352d60 mingw32 build: fixed using -1 as uninitialized value for unsigned variables 2010-12-08 17:11:45 +02:00
Alon Levy
06749bd66b mingw32 build: fix signed/unsigned warnings as errors 2010-12-08 17:11:45 +02:00
Alon Levy
af1bfa6250 mingw32 build: fix various warnings 2010-12-08 17:11:45 +02:00
Gerd Hoffmann
f6cacd0e51 mingw32 build: fix build errors
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2010-12-08 17:11:45 +02:00
Gerd Hoffmann
53c808947d mingw32 build: disable ms compiler pragmas for gcc
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2010-12-08 17:11:44 +02:00
Gerd Hoffmann
71aad4d7e8 mingw32 build: add client/windows/Makefile, tweak configure
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2010-12-07 21:36:37 +02:00
Gerd Hoffmann
09c0e2de2c build: s/HUGE/INFINITY/
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2010-12-07 21:36:37 +02:00
Gerd Hoffmann
8879a45d56 build: use jpeg_boolean with more recent libjpeg versions.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2010-12-07 21:36:37 +02:00
Arnon Gilboa
8a7e6fef27 spicec: do not call connect_secure when connect_unsecure fails due to protocol version mismatch (v2)
If connect_unsecure failed due to protocol version mismatch, don't try to
connect_secure with the same version, but retry (connect_secure or
connect_unsecure) with older version. catch (...) is handled by caller
at RedChannel::run().

This solves the following bug: when "new" Spice client (protocol version 2)
with given secure_port connects to "old" server which is not using the same
secure_port (or not using a secure_port at all), the client exits immediately.

In this scenario, the client first tries to use Spice protocol version 2 to
connect the unsecure port, and altough this fails due to version mismatch, it
tries to connect to the secure port with the same protocol version 2, which is
a wrong behavior, fails due to socket error 10061 (WSAECONNREFUSED -
Connection refused) and handled mistakenly by immediate exit, instead of
retrying with protocol version 1.
2010-12-07 14:34:22 +02:00
Alon Levy
9dfeeaefbe client/smartcard: add files to Makefile.am for make dist 2010-12-07 13:31:44 +02:00