[libvirt] PATCH: 3/14: Generic domain XML parser/formatter
Jim Meyering
jim at meyering.net
Fri Jul 18 16:29:15 UTC 2008
...
> +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
More information about the libvir-list
mailing list