[Libvir] [PATCH] Fix string handling in virDomain{Get, Set}SchedulerParameters

Daniel Veillard veillard at redhat.com
Fri Jun 22 10:09:14 UTC 2007

On Fri, Jun 22, 2007 at 10:53:22AM +0100, Richard W.M. Jones wrote:
> Daniel Veillard wrote:
> >On Fri, Jun 22, 2007 at 10:30:37AM +0100, Richard W.M. Jones wrote:
> >>This small patch fixes some bugs in the handling of the field string in 
> >>virDomainGetSchedulerParameters and makes a similar pre-emptive fix to 
> >>virDomainSetSchedulerParameters.
> >>
> >>Also, please don't use !strcmp(a,b), because it confuses me.  Better is 
> >>to write strcmp(a,b) == 0 to mean "strings match" and strcmp(a,b) != 0 
> >>to mean "strings don't match".
> >
> >  yeah the strncmp use is vrong, it should be fixed. But I dislike the
> >change from strncpy to strcpy. I agree that affecting local variables
> >with fixed strings is not nice, but as we try to chase strcpy call out
> >of the code those will show up, le'ts use
> >    strncpy(..., "weight", 6)
> >instead. Okay ?
> I don't understand ... This was the original problem, namely that the 
> field was being initialised to the string followed by garbage (without a 
> terminating '\0'):

 ohh, then count the terminating 0 in, I just would prefer to avoid using
strcpy to simplify the maintainance task of chasing them.

> On the other hand if you meant strncpy (field, "weight", 
> field[VIR_DOMAIN_SCHED_FIELD_LENGTH-1] = '\0' then I'd agree.

 that works too.


Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard      | virtualization library  http://libvirt.org/
veillard at redhat.com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine  http://rpmfind.net/

More information about the libvir-list mailing list