[libvirt] [PATCH] virstoragetest: Don't run the test on 32 bit arches

Jiri Denemark jdenemar at redhat.com
Tue Apr 29 09:00:37 UTC 2014


On Tue, Apr 29, 2014 at 10:57:50 +0200, Martin Kletzander wrote:
> On Tue, Apr 29, 2014 at 10:45:56AM +0200, Jiri Denemark wrote:
> >On Tue, Apr 29, 2014 at 10:36:51 +0200, Michal Privoznik wrote:
> >> Currently, there's an issue with virStrToLong_* APIs that they turn
> >> "-1" into UINT_MAX. While this is not acceptable, it works on 64 bit
> >> architectures and doesn't work on 32 bit ones. I know that much
> >> cleaner solution is required, but given that we are in the freeze we
> >> may as well just skip the test on 32 bits.
> >
> >I think a workaround using strtoull instead of stroul in virStrToLong_ui
> >would be better, even though I don't like that solution either. Your
> >workaround disables the check but keeps the functionality which is
> >tested here broken.
> >
> 
> Moreover, Pavel found out that strtoul should set errno to ERANGE in
> case of the problem described here.  The only problem is that we *are*
> checking for errno there and it just passes :(

But only in case the non-negative value does not fit in. If it fits, no
error is reported even though negative number is parsed. The API is just
insane.

Jirka




More information about the libvir-list mailing list