Add SHA for ARMv8.
linux-aarch64: engage SHA modules.
Option to disable padding extension.

Add TLS padding extension to SSL_OP_ALL so it is used with other
"bugs" options and can be turned off.

This replaces SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG which is an ancient
option referring to SSLv2 and SSLREF.

PR#3336
Recognise padding extension.
Engage ARMv8 AES support.
sha[1|256]-armv4: harmonize with arm_arch.h.
armv4cpuid.S: switch to CNTVCT tick counter.
Delays the queue insertion until after the ssl3_setup_buffers() call due to use-after-free bug. PR#3362
Added SSLErr call for internal error in dtls1_buffer_record
Engage POWER8 AES support.
Typo: set i to -1 before goto.

PR#3302
Allow reordering of certificates when signing.

Add certificates if -nocerts and -certfile specified when signing
in smime application. This can be used this to specify the
order certificates appear in the PKCS#7 structure: some broken
applications require a certain ordering.

PR#3316
evp/e_aes.c: populate HWAES_* to remaning modes.

Submitted by: Ard Biesheuvel.
Free up s->d1->buffered_app_data.q properly.

PR#3286
Check there is enough room for extension.
Corrected OPENSSL_NO_EC_NISTP_64_GCC_128 usage in ec_lcl.h. PR#3370
evp/e_aes.c: add erroneously omitted break;
aesp8-ppc.pl: fix typos.
Fix CVE-2014-3470

Check session_cert is not NULL before dereferencing it.
(cherry picked from commit 8011cd56e39a433b1837465259a9bd24a38727fb)
Fix CVE-2014-0221

Unnecessary recursion when receiving a DTLS hello request can be used to
crash a DTLS client. Fixed by handling DTLS hello request without recursion.

Thanks to Imre Rad (Search-Lab Ltd.) for discovering this issue.
(cherry picked from commit d3152655d5319ce883c8e3ac4b99f8de4c59d846)