[libvirt] [PATCH] tests: mock virRandomBits to make it endian stable

Boris Fiuczynski fiuczy at linux.ibm.com
Thu Aug 2 11:49:56 UTC 2018


Reviewed-by: Boris Fiuczynski <fiuczy at linux.ibm.com>
and
Tested-by: Boris Fiuczynski <fiuczy at linux.ibm.com>

On 08/02/2018 01:37 PM, Daniel P. Berrangé wrote:
> virRandomBits is implemented in terms of virRandomBytes. Although we
> mock virRandomBytes to give a stable value, this is not sufficient to
> make virRandomBits give a stable value. The result of virRandomBits will
> vary depending on endianness. Thus we mock virRandomBits to return a
> stable value directly.
> 
> Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
> ---
>   tests/virrandommock.c | 8 ++++++++
>   1 file changed, 8 insertions(+)
> 
> diff --git a/tests/virrandommock.c b/tests/virrandommock.c
> index 99a55a576a..3079b8bacb 100644
> --- a/tests/virrandommock.c
> +++ b/tests/virrandommock.c
> @@ -44,6 +44,14 @@ virRandomBytes(unsigned char *buf,
>       return 0;
>   }
>   
> +uint64_t virRandomBits(int nbits)
> +{
> +    /* Chosen by a fair roll of a 2^64 sided dice */
Please keep the dice you used for this roll for later reference... ;-)

> +    uint64_t ret = 0x0706050403020100;
> +    if (nbits < 64)
> +        ret &= ((1ULL << nbits) - 1);
> +    return ret;
> +}
>   
>   int virRandomGenerateWWN(char **wwn,
>                            const char *virt_type ATTRIBUTE_UNUSED)
> 


-- 
Mit freundlichen Grüßen/Kind regards
    Boris Fiuczynski

IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martina Köderitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294




More information about the libvir-list mailing list