VncDisplay *vd = vnc_display_find(NULL);
SocketAddress *addr = NULL;
- if (vd == NULL || !vd->enabled) {
+ if (vd == NULL || !vd->lsock) {
info->enabled = false;
} else {
info->enabled = true;
{
if (!vs)
return;
- vs->enabled = false;
vs->is_unix = false;
if (vs->lsock != NULL) {
if (vs->lsock_tag) {
object_unref(OBJECT(vs->lsock));
vs->lsock = NULL;
}
- vs->ws_enabled = false;
if (vs->lwebsock != NULL) {
if (vs->lwebsock_tag) {
g_source_remove(vs->lwebsock_tag);
int acl = 0;
int lock_key_sync = 1;
int key_delay_ms;
+ bool ws_enabled = false;
if (!vs) {
error_setg(errp, "VNC display not active");
}
wsaddr = g_new0(SocketAddress, 1);
- vs->ws_enabled = true;
+ ws_enabled = true;
}
if (strncmp(vnc, "unix:", 5) == 0) {
saddr->u.q_unix.data = g_new0(UnixSocketAddress, 1);
saddr->u.q_unix.data->path = g_strdup(vnc + 5);
- if (vs->ws_enabled) {
+ if (ws_enabled) {
error_setg(errp, "UNIX sockets not supported with websock");
goto fail;
}
inet->ipv6 = ipv6;
inet->has_ipv6 = has_ipv6;
- if (vs->ws_enabled) {
+ if (ws_enabled) {
wsaddr->type = SOCKET_ADDRESS_KIND_INET;
inet = wsaddr->u.inet.data = g_new0(InetSocketAddress, 1);
inet->host = g_strdup(saddr->u.inet.data->host);
}
#endif
- if (vnc_display_setup_auth(vs, password, sasl, vs->ws_enabled, errp) < 0) {
+ if (vnc_display_setup_auth(vs, password, sasl, ws_enabled, errp) < 0) {
goto fail;
}
QIOChannelSocket *sioc = NULL;
vs->lsock = NULL;
vs->lwebsock = NULL;
- if (vs->ws_enabled) {
+ if (ws_enabled) {
error_setg(errp, "Cannot use websockets in reverse mode");
goto fail;
}
goto fail;
}
vs->is_unix = saddr->type == SOCKET_ADDRESS_KIND_UNIX;
- vs->enabled = true;
- if (vs->ws_enabled) {
+ if (ws_enabled) {
vs->lwebsock = qio_channel_socket_new();
if (qio_channel_socket_listen_sync(vs->lwebsock,
wsaddr, errp) < 0) {
vs->lsock_tag = qio_channel_add_watch(
QIO_CHANNEL(vs->lsock),
G_IO_IN, vnc_listen_io, vs, NULL);
- if (vs->ws_enabled) {
+ if (ws_enabled) {
vs->lwebsock_tag = qio_channel_add_watch(
QIO_CHANNEL(vs->lwebsock),
G_IO_IN, vnc_listen_io, vs, NULL);
fail:
qapi_free_SocketAddress(saddr);
qapi_free_SocketAddress(wsaddr);
- vs->enabled = false;
- vs->ws_enabled = false;
+ ws_enabled = false;
}
void vnc_display_add_client(const char *id, int csock, bool skipauth)