From: Tomas Mraz Date: Tue, 9 Aug 2016 10:50:13 +0000 (+0200) Subject: Fix af_alg engine failure on 32 bit architectures. X-Git-Tag: OpenSSL_1_1_0~191 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3f8d1216df7a4314fca77b6ee6fe9fc814fcd909;p=openssl Fix af_alg engine failure on 32 bit architectures. Add extra cast to unsigned long to avoid sign extension when converting pointer to 64 bit data. Reviewed-by: Tim Hudson Reviewed-by: Matt Caswell --- diff --git a/engines/afalg/e_afalg.c b/engines/afalg/e_afalg.c index 2e7ce3455a..456ffda9aa 100644 --- a/engines/afalg/e_afalg.c +++ b/engines/afalg/e_afalg.c @@ -230,7 +230,7 @@ int afalg_fin_cipher_aio(afalg_aio *aio, int sfd, unsigned char *buf, memset(cb, '\0', sizeof(*cb)); cb->aio_fildes = sfd; cb->aio_lio_opcode = IOCB_CMD_PREAD; - cb->aio_buf = (uint64_t)buf; + cb->aio_buf = (uint64_t)(unsigned long)buf; cb->aio_offset = 0; cb->aio_data = 0; cb->aio_nbytes = len;