
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@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 :|