Please find attached two patches, together implementing proper HMAC context re-initialization instead of full re-creation. In comparison to openssl-1.0.1c it gives ~10% handshake performance improvements when some engine-specific MAC are used.
In order to apply patches use command patch -p1 -i <filename> Patches checked to applied to: openssl-1.0.1c openssl-1.0.2-stable-SNAP-20130108 make test report Ok. for both versions (Linux, x86[_64]) Please let me know if you have any questions.
TLS_P_hash-HMAC_reinit.patch
Description: Binary data
TLS_P_hash-HMAC_reinit2.patch
Description: Binary data