Fix Windows build.
(cherry picked from commit 5f4c5a902b0508eab235adecb34b236cdc0048a5)
Added OPENSSL_assert check as per PR#3377 reported by Rainer Jung <rainer.jung@kippdata.de>
Facilitate back-porting of AESNI and SHA modules.
Fix SEH and stack handling in Win64 build.
Fix off-by-one errors in ssl_cipher_get_evp()

In the ssl_cipher_get_evp() function, fix off-by-one errors in index validation before accessing arrays.

PR#3375
Client-side namecheck wildcards.

A client reference identity of ".example.com" matches a server
certificate presented identity that is any sub-domain of "example.com"
(e.g. "www.sub.example.com).

With the X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS flag, it matches
only direct child sub-domains (e.g. "www.sub.example.com").
Revert "Fixed incorrect return code handling in ssl3_final_finish_mac"

This reverts commit 2f1dffa88e1b120add4f0b3a794fbca65aa7768d.

Missing attribution.
Fixed incorrect return code handling in ssl3_final_finish_mac.
Based on an original patch by Joel Sing (OpenBSD) who also originally identified the issue.
sha1-x86_64.pl: add missing rex prefix in shaext.

PR: 3405
aesni-sha256-x86_64.pl: add missing rex in shaext.

PR: 3405
evp/e_aes_cbc_sha[1|256].c: fix -DPEDANTIC build.
Accept CCS after sending finished.

Allow CCS after finished has been sent by client: at this point
keys have been correctly set up so it is OK to accept CCS from
server. Without this renegotiation can sometimes fail.

PR#3400
Enforce _X509_CHECK_FLAG_DOT_SUBDOMAINS internal-only
aesp8-ppc.pl: add CTR mode.
aesni-sha[1|256]-x86_64.pl: fix logical error and MacOS X build.
Fix shadow declaration.
Fix signed/unsigned comparisons.
Added custom PBKDF2 iteration count to PKCS8 tool.
Added documentation for -iter for PKCS#8
Conform to whitespace conventions
Tidied up, added include to stdlib, removed "goto bad" usage