Apply by doing:
cd /usr/src
patch -p0 < 012_sha512.patch
And then rebuild and install libcrypto:
cd lib/libssl/crypto/
make obj
make
make install
Index: lib/libssl/src/crypto/sha/sha512.c
===================================================================
RCS file: /cvs/src/lib/libssl/src/crypto/sha/sha512.c,v
retrieving revision 1.1.1.4
diff -u -p -r1.1.1.4 sha512.c
--- lib/libssl/src/crypto/sha/sha512.c 13 Oct 2012 21:23:43 -0000 1.1.1.4
+++ lib/libssl/src/crypto/sha/sha512.c 19 Dec 2013 22:35:17 -0000
@@ -232,7 +232,14 @@ int SHA384_Update (SHA512_CTX *c, const
{ return SHA512_Update (c,data,len); }
void SHA512_Transform (SHA512_CTX *c, const unsigned char *data)
-{ sha512_block_data_order (c,data,1); }
+ {
+#ifndef SHA512_BLOCK_CAN_MANAGE_UNALIGNED_DATA
+ if ((size_t)data%sizeof(c->u.d[0]) != 0)
+ memcpy(c->u.p,data,sizeof(c->u.p)),
+ data = c->u.p;
+#endif
+ sha512_block_data_order (c,data,1);
+ }
unsigned char *SHA384(const unsigned char *d, size_t n, unsigned char *md)
{