src/util/viraudit.c
src/util/virauth.c
src/util/virauthconfig.c
+src/util/virbitmap.c
src/util/vircgroup.c
src/util/virclosecallbacks.c
src/util/vircommand.c
tmp = virXPathString("string(./vcpu[1]/@cpuset)", ctxt);
if (tmp) {
if (virBitmapParse(tmp, 0, &def->cpumask,
- VIR_DOMAIN_CPUMASK_LEN) < 0) {
- virReportError(VIR_ERR_XML_ERROR,
- "%s", _("topology cpuset syntax error"));
+ VIR_DOMAIN_CPUMASK_LEN) < 0)
goto error;
- }
VIR_FREE(tmp);
}
}
if ((class_id = virXPathString("string(./class_id[1]/@bitmap)", ctxt))) {
if (virBitmapParse(class_id, 0, &class_id_map,
CLASS_ID_BITMAP_SIZE) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Malformed 'class_id' attribute: %s"),
- class_id);
VIR_FREE(class_id);
goto error;
}
if (virFileReadAll(path, SYSFS_THREAD_SIBLINGS_LIST_LENGTH_MAX, &buf) < 0)
goto cleanup;
- if (virBitmapParse(buf, 0, &ret, NUMA_MAX_N_CPUS) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("Failed to parse thread siblings"));
+ if (virBitmapParse(buf, 0, &ret, NUMA_MAX_N_CPUS) < 0)
goto cleanup;
- }
cleanup:
VIR_FREE(buf);
if (virBitmapParse(params[i].value.s,
0, &nodeset,
VIR_DOMAIN_CPUMASK_LEN) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
- _("Failed to parse nodeset"));
ret = -1;
continue;
}
size_t bitmapSize)
{
bool neg = false;
- const char *cur;
+ const char *cur = str;
char *tmp;
size_t i;
int start, last;
- if (!str)
+ if (!(*bitmap = virBitmapNew(bitmapSize)))
return -1;
- cur = str;
- virSkipSpaces(&cur);
+ if (!str)
+ goto error;
- if (*cur == 0)
- return -1;
+ virSkipSpaces(&cur);
- *bitmap = virBitmapNew(bitmapSize);
- if (!*bitmap)
- return -1;
+ if (*cur == '\0')
+ goto error;
while (*cur != 0 && *cur != terminator) {
/*
return virBitmapCountBits(*bitmap);
error:
+ virReportError(VIR_ERR_INVALID_ARG,
+ _("Failed to parse bitmap '%s'"), str);
virBitmapFree(*bitmap);
*bitmap = NULL;
return -1;
if (cpus != NULL) {
if (virBitmapParse(cpus, 0, &def->cpumask,
- VIR_DOMAIN_CPUMASK_LEN) < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("invalid CPU mask %s"), cpus);
+ VIR_DOMAIN_CPUMASK_LEN) < 0)
goto error;
- }
}
def->maxvcpus = sexpr_int(root, "domain/vcpus");
$abs_top_builddir/tools/virsh --connect test:///default define xml-invalid > out 2>&1 && fail=1
cat <<\EOF > exp || fail=1
error: Failed to define domain from xml-invalid
-error: XML error: topology cpuset syntax error
+error: invalid argument: Failed to parse bitmap 'aaa'
EOF
compare exp out || fail=1