fix afalg failure on big endian

This commit is contained in:
Tomas Mraz 2016-10-12 14:47:08 +02:00
parent 0e04498302
commit d2220322f3
2 changed files with 38 additions and 1 deletions

View File

@ -0,0 +1,32 @@
From 9161bcb63b58114eda5f3223d96953f93ea072aa Mon Sep 17 00:00:00 2001
From: Tomas Mraz <tmraz@fedoraproject.org>
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

View File

@ -22,7 +22,7 @@
Summary: Utilities from the general purpose cryptography library with TLS implementation Summary: Utilities from the general purpose cryptography library with TLS implementation
Name: openssl Name: openssl
Version: 1.1.0b Version: 1.1.0b
Release: 1%{?dist} Release: 2%{?dist}
Epoch: 1 Epoch: 1
# We have to remove certain patented algorithms from the openssl source # We have to remove certain patented algorithms from the openssl source
# tarball with the hobble-openssl script which is included below. # 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 Patch41: openssl-1.1.0-system-cipherlist.patch
Patch42: openssl-1.1.0-fips.patch Patch42: openssl-1.1.0-fips.patch
Patch43: openssl-1.1.0-afalg-eventfd2.patch Patch43: openssl-1.1.0-afalg-eventfd2.patch
Patch44: openssl-1.1.0-afalg-endian.patch
# Backported fixes including security fixes # Backported fixes including security fixes
License: OpenSSL License: OpenSSL
@ -160,6 +161,7 @@ cp %{SOURCE13} test/
%patch41 -p1 -b .system-cipherlist %patch41 -p1 -b .system-cipherlist
%patch42 -p1 -b .fips %patch42 -p1 -b .fips
%patch43 -p1 -b .eventfd2 %patch43 -p1 -b .eventfd2
%patch44 -p1 -b .endian
%build %build
# Figure out which flags we want to use. # Figure out which flags we want to use.
@ -423,6 +425,9 @@ export LD_LIBRARY_PATH
%postun libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig
%changelog %changelog
* Wed Oct 12 2016 Tomáš Mráz <tmraz@redhat.com> 1.1.0b-2
- fix afalg failure on big endian
* Tue Oct 11 2016 Tomáš Mráz <tmraz@redhat.com> 1.1.0b-1 * Tue Oct 11 2016 Tomáš Mráz <tmraz@redhat.com> 1.1.0b-1
- update to upstream version 1.1.0b - update to upstream version 1.1.0b