diff options
author | Jussi Kivilinna <jussi.kivilinna@iki.fi> | 2021-01-30 20:11:05 +0200 |
---|---|---|
committer | Jussi Kivilinna <jussi.kivilinna@iki.fi> | 2021-02-03 18:30:03 +0200 |
commit | 364e9e9d10503b36f98fbb1b489e00026f22c9d7 (patch) | |
tree | d0080344694e90f2b662f544d254478c0e4b79eb /mpi/mpicoder.c | |
parent | af23ab5c5482d625ff52e60606cf044e2b0106c8 (diff) | |
download | libgcrypt-364e9e9d10503b36f98fbb1b489e00026f22c9d7.tar.gz |
Fix ubsan warnings for i386 build
* mpi/mpicoder.c (_gcry_mpi_set_buffer) [BYTES_PER_MPI_LIMB == 4]: Cast
"*p--" values to mpi_limb_t before left shifting.
* tests/t-lock.c (main): Cast 'time(NULL)' to unsigned type.
--
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
Diffstat (limited to 'mpi/mpicoder.c')
-rw-r--r-- | mpi/mpicoder.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/mpi/mpicoder.c b/mpi/mpicoder.c index a133421e..f61f777f 100644 --- a/mpi/mpicoder.c +++ b/mpi/mpicoder.c @@ -354,10 +354,10 @@ _gcry_mpi_set_buffer (gcry_mpi_t a, const void *buffer_arg, for (i=0, p = buffer+nbytes-1; p >= buffer+BYTES_PER_MPI_LIMB; ) { #if BYTES_PER_MPI_LIMB == 4 - alimb = *p-- ; - alimb |= *p-- << 8 ; - alimb |= *p-- << 16 ; - alimb |= *p-- << 24 ; + alimb = (mpi_limb_t)*p-- ; + alimb |= (mpi_limb_t)*p-- << 8 ; + alimb |= (mpi_limb_t)*p-- << 16 ; + alimb |= (mpi_limb_t)*p-- << 24 ; #elif BYTES_PER_MPI_LIMB == 8 alimb = (mpi_limb_t)*p-- ; alimb |= (mpi_limb_t)*p-- << 8 ; @@ -375,13 +375,13 @@ _gcry_mpi_set_buffer (gcry_mpi_t a, const void *buffer_arg, if ( p >= buffer ) { #if BYTES_PER_MPI_LIMB == 4 - alimb = *p--; + alimb = (mpi_limb_t)*p--; if (p >= buffer) - alimb |= *p-- << 8; + alimb |= (mpi_limb_t)*p-- << 8; if (p >= buffer) - alimb |= *p-- << 16; + alimb |= (mpi_limb_t)*p-- << 16; if (p >= buffer) - alimb |= *p-- << 24; + alimb |= (mpi_limb_t)*p-- << 24; #elif BYTES_PER_MPI_LIMB == 8 alimb = (mpi_limb_t)*p--; if (p >= buffer) |