On Fri, Jan 11, 2013 at 02:06:05PM -0700, Eric Blake wrote: > 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. All this code gets replaced in patch 09/10. The only remaining strtoull() call gets error-checking at patch 06/10. -- Eduardo -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list