Commit 10bcfe58 authored by Daniel P. Berrangé's avatar Daniel P. Berrangé
Browse files

vnc: set name for all I/O channels created



Ensure that all I/O channels created for VNC are given names
to distinguish their respective roles.

Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: default avatarDaniel P. Berrange <berrange@redhat.com>
parent 6f01f136
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -116,6 +116,7 @@ static int protocol_client_vencrypt_auth(VncState *vs, uint8_t *data, size_t len
            return 0;
        }

        qio_channel_set_name(QIO_CHANNEL(tls), "vnc-server-tls");
        VNC_DEBUG("Start TLS VeNCrypt handshake process\n");
        object_unref(OBJECT(vs->ioc));
        vs->ioc = QIO_CHANNEL(tls);
+3 −0
Original line number Diff line number Diff line
@@ -67,6 +67,8 @@ gboolean vncws_tls_handshake_io(QIOChannel *ioc G_GNUC_UNUSED,
        return TRUE;
    }

    qio_channel_set_name(QIO_CHANNEL(tls), "vnc-ws-server-tls");

    VNC_DEBUG("Start TLS WS handshake process\n");
    object_unref(OBJECT(vs->ioc));
    vs->ioc = QIO_CHANNEL(tls);
@@ -113,6 +115,7 @@ gboolean vncws_handshake_io(QIOChannel *ioc G_GNUC_UNUSED,
    }

    wioc = qio_channel_websock_new_server(vs->ioc);
    qio_channel_set_name(QIO_CHANNEL(wioc), "vnc-ws-server-websock");

    object_unref(OBJECT(vs->ioc));
    vs->ioc = QIO_CHANNEL(wioc);
+7 −0
Original line number Diff line number Diff line
@@ -3100,6 +3100,9 @@ static gboolean vnc_listen_io(QIOChannel *ioc,

    sioc = qio_channel_socket_accept(QIO_CHANNEL_SOCKET(ioc), &err);
    if (sioc != NULL) {
        qio_channel_set_name(QIO_CHANNEL(sioc),
                             ioc != QIO_CHANNEL(vd->lsock) ?
                             "vnc-ws-server" : "vnc-server");
        qio_channel_set_delay(QIO_CHANNEL(sioc), false);
        vnc_connect(vd, sioc, false,
                    ioc != QIO_CHANNEL(vd->lsock));
@@ -3788,6 +3791,7 @@ void vnc_display_open(const char *id, Error **errp)
        }
        vd->is_unix = saddr->type == SOCKET_ADDRESS_KIND_UNIX;
        sioc = qio_channel_socket_new();
        qio_channel_set_name(QIO_CHANNEL(sioc), "vnc-reverse");
        if (qio_channel_socket_connect_sync(sioc, saddr, errp) < 0) {
            goto fail;
        }
@@ -3795,6 +3799,7 @@ void vnc_display_open(const char *id, Error **errp)
        object_unref(OBJECT(sioc));
    } else {
        vd->lsock = qio_channel_socket_new();
        qio_channel_set_name(QIO_CHANNEL(vd->lsock), "vnc-listen");
        if (qio_channel_socket_listen_sync(vd->lsock, saddr, errp) < 0) {
            goto fail;
        }
@@ -3802,6 +3807,7 @@ void vnc_display_open(const char *id, Error **errp)

        if (ws_enabled) {
            vd->lwebsock = qio_channel_socket_new();
            qio_channel_set_name(QIO_CHANNEL(vd->lwebsock), "vnc-ws-listen");
            if (qio_channel_socket_listen_sync(vd->lwebsock,
                                               wsaddr, errp) < 0) {
                object_unref(OBJECT(vd->lsock));
@@ -3845,6 +3851,7 @@ void vnc_display_add_client(const char *id, int csock, bool skipauth)

    sioc = qio_channel_socket_new_fd(csock, NULL);
    if (sioc) {
        qio_channel_set_name(QIO_CHANNEL(sioc), "vnc-server");
        vnc_connect(vd, sioc, skipauth, false);
        object_unref(OBJECT(sioc));
    }