On 01/11/2013 11:15 AM, Eduardo Habkost wrote:
Extract the code that's specific for the "node" -numa
option type (the
only one, today) to a separate function.
The extracted code will eventually become a function specific for a
"numa-node" config section, independent from the numa_add() code.
+ if (get_param_value(option, 128, "nodeid", optarg) ==
0) {
+ nodenr = nb_numa_nodes;
+ } else {
+ nodenr = strtoull(option, NULL, 10);
}
strtoull() needs additional error checking after the fact, to make sure
I didn't pass an empty string, trailing garbage, or so many digits I
triggered overflow.
+ if (get_param_value(option, 128, "cpus", optarg) != 0)
{
+ value = strtoull(option, &endptr, 10);
+ if (*endptr == '-') {
+ endvalue = strtoull(endptr+1, &endptr, 10);
} else {
- nodenr = strtoull(option, NULL, 10);
+ endvalue = value;
}
More uses of strtoull() that aren't guarding against all possible errors.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org