mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
check for cfg->spiceTLS earlier in qemuProcessSPICEAllocatePorts
This saves a few lines of code and catches the error when: <spice autoport ='yes' defaultMode='any' ..> <channel name='main' mode='secure'/> </spice> is specified with spice_tls = 0 in qemu.conf. Instead of this error in qemuBuildGraphicsSPICECommandLine: error: unsupported configuration: spice secure channels set in XML configuration, but TLS port is not provided an error is reported in qemuProcessSPICEAllocatePorts: error: unsupported configuration: Auto allocation of spice TLS port requested but spice TLS is disabled in qemu.conf Inspired by: https://www.redhat.com/archives/libvir-list/2014-June/msg01408.html
This commit is contained in:
parent
ddf6b139cf
commit
b02fca79e8
@ -3534,7 +3534,8 @@ qemuProcessSPICEAllocatePorts(virQEMUDriverPtr driver,
|
||||
break;
|
||||
|
||||
case VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_ANY:
|
||||
needTLSPort = true;
|
||||
if (cfg->spiceTLS)
|
||||
needTLSPort = true;
|
||||
needPort = true;
|
||||
break;
|
||||
}
|
||||
@ -3552,28 +3553,16 @@ qemuProcessSPICEAllocatePorts(virQEMUDriverPtr driver,
|
||||
|
||||
if (needTLSPort || graphics->data.spice.tlsPort == -1) {
|
||||
if (!cfg->spiceTLS) {
|
||||
/* log an error and fail if tls was specifically
|
||||
* requested, or simply ignore (don't allocate a port)
|
||||
* if we're here due to "defaultMode='any'"
|
||||
* (aka unspecified).
|
||||
*/
|
||||
if ((graphics->data.spice.tlsPort == -1) ||
|
||||
(graphics->data.spice.defaultMode
|
||||
== VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_SECURE)) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("Auto allocation of spice TLS port requested "
|
||||
"but spice TLS is disabled in qemu.conf"));
|
||||
goto error;
|
||||
}
|
||||
} else {
|
||||
/* cfg->spiceTLS *is* in place, so it makes sense to
|
||||
* allocate a port.
|
||||
*/
|
||||
if (virPortAllocatorAcquire(driver->remotePorts, &tlsPort) < 0)
|
||||
goto error;
|
||||
|
||||
graphics->data.spice.tlsPort = tlsPort;
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("Auto allocation of spice TLS port requested "
|
||||
"but spice TLS is disabled in qemu.conf"));
|
||||
goto error;
|
||||
}
|
||||
|
||||
if (virPortAllocatorAcquire(driver->remotePorts, &tlsPort) < 0)
|
||||
goto error;
|
||||
|
||||
graphics->data.spice.tlsPort = tlsPort;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user