From d2220322f3e288bab36a58535b1f656756ba6508 Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Oct 12 2016 12:47:08 +0000 Subject: fix afalg failure on big endian --- diff --git a/openssl-1.1.0-afalg-endian.patch b/openssl-1.1.0-afalg-endian.patch new file mode 100644 index 0000000..633c0c3 --- /dev/null +++ b/openssl-1.1.0-afalg-endian.patch @@ -0,0 +1,32 @@ +From 9161bcb63b58114eda5f3223d96953f93ea072aa Mon Sep 17 00:00:00 2001 +From: Tomas Mraz +Date: Wed, 12 Oct 2016 14:32:05 +0200 +Subject: [PATCH] Engine afalg: properly set operation type also on big endian. + +Copy the whole ALG_OP_TYPE to CMSG_DATA. +--- + engines/afalg/e_afalg.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/engines/afalg/e_afalg.c b/engines/afalg/e_afalg.c +index 2c13ba8..658de42 100644 +--- a/engines/afalg/e_afalg.c ++++ b/engines/afalg/e_afalg.c +@@ -322,12 +322,12 @@ int afalg_fin_cipher_aio(afalg_aio *aio, int sfd, unsigned char *buf, + } + + static ossl_inline void afalg_set_op_sk(struct cmsghdr *cmsg, +- const unsigned int op) ++ const ALG_OP_TYPE op) + { + cmsg->cmsg_level = SOL_ALG; + cmsg->cmsg_type = ALG_SET_OP; + cmsg->cmsg_len = CMSG_LEN(ALG_OP_LEN); +- *CMSG_DATA(cmsg) = (char)op; ++ memcpy(CMSG_DATA(cmsg), &op, ALG_OP_LEN); + } + + static void afalg_set_iv_sk(struct cmsghdr *cmsg, const unsigned char *iv, +-- +2.5.5 + diff --git a/openssl.spec b/openssl.spec index ca9ab6f..e397c23 100644 --- a/openssl.spec +++ b/openssl.spec @@ -22,7 +22,7 @@ Summary: Utilities from the general purpose cryptography library with TLS implementation Name: openssl Version: 1.1.0b -Release: 1%{?dist} +Release: 2%{?dist} Epoch: 1 # We have to remove certain patented algorithms from the openssl source # tarball with the hobble-openssl script which is included below. @@ -60,6 +60,7 @@ Patch40: openssl-1.1.0-disable-ssl3.patch Patch41: openssl-1.1.0-system-cipherlist.patch Patch42: openssl-1.1.0-fips.patch Patch43: openssl-1.1.0-afalg-eventfd2.patch +Patch44: openssl-1.1.0-afalg-endian.patch # Backported fixes including security fixes License: OpenSSL @@ -160,6 +161,7 @@ cp %{SOURCE13} test/ %patch41 -p1 -b .system-cipherlist %patch42 -p1 -b .fips %patch43 -p1 -b .eventfd2 +%patch44 -p1 -b .endian %build # Figure out which flags we want to use. @@ -423,6 +425,9 @@ export LD_LIBRARY_PATH %postun libs -p /sbin/ldconfig %changelog +* Wed Oct 12 2016 Tomáš Mráz 1.1.0b-2 +- fix afalg failure on big endian + * Tue Oct 11 2016 Tomáš Mráz 1.1.0b-1 - update to upstream version 1.1.0b