Commit ac779fe2 authored by Anthony Liguori's avatar Anthony Liguori
Browse files

Merge remote-tracking branch 'spice/spice.v37' into staging

Conflicts:
	vl.c
parents 13748cf4 212496c9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2414,7 +2414,7 @@ int main(void) { spice_server_new(); return 0; }
EOF
  spice_cflags=$($pkg_config --cflags spice-protocol spice-server 2>/dev/null)
  spice_libs=$($pkg_config --libs spice-protocol spice-server 2>/dev/null)
  if $pkg_config --atleast-version=0.5.3 spice-server >/dev/null 2>&1 && \
  if $pkg_config --atleast-version=0.6.0 spice-server >/dev/null 2>&1 && \
     compile_prog "$spice_cflags" "$spice_libs" ; then
    spice="yes"
    libs_softmmu="$libs_softmmu $spice_libs"
+3 −1
Original line number Diff line number Diff line
@@ -357,7 +357,9 @@ static int interface_get_command(QXLInstance *sin, struct QXLCommandExt *ext)
            ret = true;
        }
        qemu_mutex_unlock(&qxl->ssd.lock);
        if (ret) {
            qxl_log_command(qxl, "vga", ext);
        }
        return ret;
    case QXL_MODE_COMPAT:
    case QXL_MODE_NATIVE:
+9 −3
Original line number Diff line number Diff line
@@ -306,7 +306,7 @@ static QemuOptsList qemu_trace_opts = {
            .name = "file",
            .type = QEMU_OPT_STRING,
        },
        { /* end if list */ }
        { /* end of list */ }
    },
};
#endif
@@ -384,6 +384,12 @@ QemuOptsList qemu_spice_opts = {
        },{
            .name = "disable-ticketing",
            .type = QEMU_OPT_BOOL,
        },{
            .name = "disable-copy-paste",
            .type = QEMU_OPT_BOOL,
        },{
            .name = "sasl",
            .type = QEMU_OPT_BOOL,
        },{
            .name = "x509-dir",
            .type = QEMU_OPT_STRING,
@@ -430,7 +436,7 @@ QemuOptsList qemu_spice_opts = {
            .name = "playback-compression",
            .type = QEMU_OPT_BOOL,
        },
        { /* end if list */ }
        { /* end of list */ }
    },
};

@@ -446,7 +452,7 @@ QemuOptsList qemu_option_rom_opts = {
            .name = "romfile",
            .type = QEMU_OPT_STRING,
        },
        { /* end if list */ }
        { /* end of list */ }
    },
};

+16 −0
Original line number Diff line number Diff line
@@ -714,9 +714,25 @@ Force using the specified IP version.
@item password=<secret>
Set the password you need to authenticate.

@item sasl
Require that the client use SASL to authenticate with the spice.
The exact choice of authentication method used is controlled from the
system / user's SASL configuration file for the 'qemu' service. This
is typically found in /etc/sasl2/qemu.conf. If running QEMU as an
unprivileged user, an environment variable SASL_CONF_PATH can be used
to make it search alternate locations for the service config.
While some SASL auth methods can also provide data encryption (eg GSSAPI),
it is recommended that SASL always be combined with the 'tls' and
'x509' settings to enable use of SSL and server certificates. This
ensures a data encryption preventing compromise of authentication
credentials.

@item disable-ticketing
Allow client connects without authentication.

@item disable-copy-paste
Disable copy paste between the client and the guest.

@item tls-port=<nr>
Set the TCP port spice is listening on for encrypted channels.

+5 −6
Original line number Diff line number Diff line
@@ -36,14 +36,13 @@ static int vmc_write(SpiceCharDeviceInstance *sin, const uint8_t *buf, int len)

    while (len > 0) {
        last_out = MIN(len, VMC_MAX_HOST_WRITE);
        if (qemu_chr_can_read(scd->chr) < last_out) {
            break;
        }
        qemu_chr_read(scd->chr, p, last_out);
        if (last_out > 0) {
        out += last_out;
        len -= last_out;
        p += last_out;
        } else {
            break;
        }
    }

    dprintf(scd, 3, "%s: %lu/%zd\n", __func__, out, len + out);
Loading