Commit Graph

26 Commits

Author SHA1 Message Date
Pavel Hrdina
b8dccf6aca virtManager/viewers: fix connection to remote SPICE with password
When connecting to remote SPICE we use ssh tunnel if the SPICE is
listening only on "localhost".  Our ssh tunnel scheduler uses locks
to serialize the requests for FD in order to not spam user for ssh
password.

However when the main_channel is connected and emits AUTH_ERROR
we ask user for password and request for new FD.  Unfortunately
after the new request is handled we didn't unlock the scheduler
and all other request would remain waiting for the lock.

We need to unlock every FD request for the SPICE main channel not
only the first one when the channel itself is created.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1401790

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2017-02-10 09:43:20 +01:00
Cole Robinson
e69cc002b1 viewers: spice: Catch failure to setup usbdev manager
Since some distros like openbsd don't compile support for
usb redirection, which makes this fail

https://bugzilla.redhat.com/show_bug.cgi?id=1348479
2016-06-21 09:01:32 -04:00
Pavel Hrdina
b327191a20 maint: fix pylint warnings wrong-import-order
standard import "import logging" comes before "from gi.repository import GLib"

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2016-06-07 17:37:06 +02:00
Cole Robinson
eea9b27696 console: Fix and simplify 'Resize to VM' action
We need to resize the window and not try to play crazy games with
the scroll window size. Wish I realized this years ago...
2016-05-20 11:44:18 -04:00
Cole Robinson
8c2adb83ae console: Error for more non-working graphical configs
- If connecting remotely but graphics has no listen address,
    like the spice GL case.
- Trying to connect to a TLS using VM over an ssh tunnel, it doesn't
    seem to work: https://bugzilla.redhat.com/show_bug.cgi?id=1320331
2016-05-18 16:57:38 -04:00
Cole Robinson
01d4203933 viewers: spice: fix password auth 2016-05-18 16:14:51 -04:00
Cole Robinson
3221b56ac3 viewers: Show spice error message in the UI on disconnect 2016-05-16 16:28:55 -04:00
Cole Robinson
adef60211f viewers: Pass SSH error output via gobject signal
Rather than have the console fetch it. Just streamlines things a bit
2016-05-16 16:16:13 -04:00
Cole Robinson
8719acbbd3 viewers: Log spice message on error state 2016-05-16 15:47:37 -04:00
Cole Robinson
6a3b2a68c3 viewers: skip OpenGraphics for local TLS connection
It makes spice loop endlessly requesting an fd:
https://bugzilla.redhat.com/show_bug.cgi?id=1334071
2016-05-16 15:39:46 -04:00
Cole Robinson
6d69b1b98e viewers: Fix VNC auth-rejected error message 2016-05-16 15:31:05 -04:00
Cole Robinson
9902a7c77f viewers: spice: clarify debug message
This isn't always a 'tunnel' anymore
2016-05-07 20:31:23 -04:00
Cole Robinson
e30671b53d viewers: Only use openGraphics if supported 2016-05-07 19:12:33 -04:00
Cole Robinson
7cc6141618 viewer: move vm from ConnectionInfo to Viewer
I don't really like the VM in Viewer either, since it will encourage
layering violations, but it's a better fit than in ConnectionInfo
2016-05-07 18:09:24 -04:00
Cole Robinson
bd725d6cfe viewers: Centralize viewer FD opening
Put all the logic into _get_fd_for_open. May help centralize future
improvements, like catching lack of openGraphicsFD support
2016-05-07 17:53:10 -04:00
Guido Günther
a1383faff3 Make SpiceClientGtk optional
Not all architectures supported by Debian have it. This will allow to
make VNC work nevertheless.
2016-04-07 16:12:06 -04:00
Marc-André Lureau
5c451b6401 virt-manager: connect with openGraphicsFD
This allows to connect to VM without any display listening socket, the
fd passing is done through libvirt connection.

Furthermore, since it uses unix socket, spice can use virgl locally
with texture sharing. This effectively enables spice-gtk to display
local virgl rendering.

Signed-off-by: Marc-André Lureau <marcandre.lureau@gmail.com>
2016-03-09 20:25:37 -05:00
Cole Robinson
94e24ab797 viewers: open_host debugging tweaks 2016-02-15 12:54:46 -05:00
Cole Robinson
5df6757a0b viewers: Use GtkVnc.Display() not GtkVnc.Display.new()
The latter doesn't cause problems on Fedora, but it's currently throwing
errors on Freebsd:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203152
2015-09-16 16:46:39 -04:00
Cole Robinson
6ecf01a3bd console: Catch and handle password auth errors (bz 1151801) 2015-04-12 14:10:45 -04:00
Cole Robinson
f013453999 sshtunnels: Don't log the SSH command over and over
Just log it once at init time
2015-04-12 12:21:38 -04:00
Cole Robinson
2ca72d1117 viewers: Don't try to use SSH tunnels in spice local case
Regressed with the recent tunnel cleanups
2015-04-12 11:06:15 -04:00
Cole Robinson
acebd1248c viewers: Add explicit API for removing display from parent
Previously we were hacking it in
2015-04-12 10:33:41 -04:00
Cole Robinson
aec851f73a viewers: Always clean up tunnel FDs when closing viewer
We were basically leaking a lot of FDs. They were still being tracked
but they were stranded and never dealt with.
2015-04-11 22:44:03 -04:00
Cole Robinson
285e345f17 viewer: Simplify tunnel handling
- Cache ginfo, since it is tied to a single viewer instance
- Always create the sshtunnels object
- Track lock state so we can make it idempotent
2015-04-11 21:39:24 -04:00
Cole Robinson
f589f01665 console: Move viewer classes to viewers.py 2015-04-03 20:54:38 -04:00