When no <target> element was set at all, the default console
target type was not being honoured
* src/conf/domain_conf.c: Set default target type for consoles
with no <target>
const char *nodeName;
virDomainChrDefPtr def;
int remaining;
+ bool seenTarget = false;
if (!(def = virDomainChrDefNew()))
return NULL;
while (cur != NULL) {
if (cur->type == XML_ELEMENT_NODE) {
if (xmlStrEqual(cur->name, BAD_CAST "target")) {
+ seenTarget = true;
if (virDomainChrDefParseTargetXML(caps, def, cur) < 0) {
goto error;
}
}
}
+ if (!seenTarget &&
+ ((def->targetType = virDomainChrDefaultTargetType(caps, def->deviceType)) < 0))
+ goto cleanup;
+
if (def->source.type == VIR_DOMAIN_CHR_TYPE_SPICEVMC) {
if (def->targetType != VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_VIRTIO) {
virDomainReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",