[libvirt] [PATCH] tests: viriscsitest: make it work on big endian archs
Daniel P. Berrangé
berrange at redhat.com
Wed Aug 1 13:24:05 UTC 2018
On Wed, Aug 01, 2018 at 03:08:07PM +0200, Pino Toscano wrote:
> viriscsitest tries to ensure the interface IQN used is a specific one,
> checking later on that it is the same all during the whole test. Since
> the IQN generation involves random bytes, viriscsitest got a fake
> virRandomBytes from the virrandommock helper library, setting static
> values. virRandomBits(), called by virStorageBackendCreateIfaceIQN(),
> always requests 8 random bytes, chopping off the ones not requested by
> the caller -- this meant that on big endian machines it would chop bytes
> from the wrong size of the data buffer, and thus not returning the
> expected numbers.
>
> As a fix, do not rely on the mock virRandomBytes, but provide an own
> version of it: this version will fill the values in the expected order,
> depending on the endianness of the system. This way, the result of
> virStorageBackendCreateIfaceIQN() will be what the test actually
> expects.
>
> Signed-off-by: Pino Toscano <ptoscano at redhat.com>
Mailman is having deliver problems so you might not have received
the patch that was sent earlier for this problem:
https://www.redhat.com/archives/libvir-list/2018-August/msg00039.html
I prefer that approach since it avoids the endianness problems for
all future usage too.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
More information about the libvir-list
mailing list