
...
+static virDomainChrDefPtr +virDomainChrDefParseXML(virConnectPtr conn, + xmlNodePtr node) { + xmlNodePtr cur; + char *type = NULL; + char *bindHost = NULL; + char *bindService = NULL; + char *connectHost = NULL; + char *connectService = NULL; + char *path = NULL; + char *mode = NULL; + char *protocol = NULL; + virDomainChrDefPtr def; + + if (VIR_ALLOC(def) < 0) { + virDomainReportError(conn, VIR_ERR_NO_MEMORY, NULL); + return NULL; + } + + def->type = VIR_DOMAIN_CHR_TYPE_PTY; + type = virXMLPropString(node, "type"); + if (type != NULL) {
Looks like this can be replaced with virDomainChrTypeFromString.
+ 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; + }
Otherwise, all looks good. ACK