* src/domain_conf.c: replace open coded chr type parsing with virDomainChrTypeFromString(), retaining the existing semantics where unknown types are silently mapped to the "null" type and "pty" is used if none is specified --- src/domain_conf.c | 29 ++++------------------------- 1 files changed, 4 insertions(+), 25 deletions(-) diff --git a/src/domain_conf.c b/src/domain_conf.c index 0407207..4056a86 100644 --- a/src/domain_conf.c +++ b/src/domain_conf.c @@ -1204,32 +1204,11 @@ virDomainChrDefParseXML(virConnectPtr conn, return NULL; } - def->type = VIR_DOMAIN_CHR_TYPE_PTY; type = virXMLPropString(node, "type"); - if (type != NULL) { - if (STREQ(type, "null")) - def->type = VIR_DOMAIN_CHR_TYPE_NULL; - else if (STREQ(type, "vc")) - def->type = VIR_DOMAIN_CHR_TYPE_VC; - else if (STREQ(type, "pty")) - def->type = VIR_DOMAIN_CHR_TYPE_PTY; - else if (STREQ(type, "dev")) - def->type = VIR_DOMAIN_CHR_TYPE_DEV; - else if (STREQ(type, "file")) - def->type = VIR_DOMAIN_CHR_TYPE_FILE; - else if (STREQ(type, "pipe")) - def->type = VIR_DOMAIN_CHR_TYPE_PIPE; - else if (STREQ(type, "stdio")) - def->type = VIR_DOMAIN_CHR_TYPE_STDIO; - else if (STREQ(type, "udp")) - def->type = VIR_DOMAIN_CHR_TYPE_UDP; - else if (STREQ(type, "tcp")) - def->type = VIR_DOMAIN_CHR_TYPE_TCP; - else if (STREQ(type, "unix")) - def->type = VIR_DOMAIN_CHR_TYPE_UNIX; - else - def->type = VIR_DOMAIN_CHR_TYPE_NULL; - } + if (type == NULL) + def->type = VIR_DOMAIN_CHR_TYPE_PTY; + else if ((def->type = virDomainChrTypeFromString(type)) < 0) + def->type = VIR_DOMAIN_CHR_TYPE_NULL; cur = node->children; while (cur != NULL) { -- 1.6.2.5 -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list