Fix recursive lock in X509_PUBKEY_get

This was discovered recently by the Chromium "linux_redux" build,
the bug was causing one of the unit tests to stall. Note that the
patch is already applied in upstream OpenSSL.

For more details, see http://crbug.com/171812

Change-Id: I9ca8886fba6c89fc19fc71c0cc9b732c9fb82208
Add another missing x86_64 assembly file generation step.

Change-Id: I357c33a297937c2e64cfa8c6e49795cd1e865544
Merge "Fix recursive lock in X509_PUBKEY_get"
Merge "Add another missing x86_64 assembly file generation step."
Remove stray ssl/Makefile

Change-Id: Icf1836ceaa8f31c92f2154ca6186cfbb8714b825
Merge "Remove stray ssl/Makefile"
CVE-2013-0169: Make CBC decoding constant time

(cherry-picked from 2c082d25fc3f0dd6e56c45407fe10638b904083c)

Bug: 8017911
Bug: 8095088
Change-Id: I57556e120fd1f585d38739d0d6aaf02bcbe45fbd
Merge "CVE-2013-0169: Make CBC decoding constant time"
openssl-1.0.1d upgrade

Change-Id: Ie980c8834cf2c843858182d98d1f60c65a2a9b70
Merge "openssl-1.0.1d upgrade"
Fix failures when eng_dyn scans multiple directories

If DIR_ADD is called with multiple directories, and the target file
does not exist in the first directory scanned, the DSO object will still
be considered "loaded" for the next call of DSO_load(...) and cause
subsequent calls to DSO_load(...) fail with the reason code of "already
loaded" even though the load failed.

Additionally, with multiple directories used in eng_dyn, another problem
manifests because the errors pushed onto the error stack will linger even
if another library is loaded successfully on subsequent calls to
DSO_load(...) in the directory scanning loop.

Change-Id: I4ddd24f7b39bd88663e1783f30914870a907acfa
Merge "Fix failures when eng_dyn scans multiple directories"
openssl-1.0.1e upgrade

Change-Id: I4520a7e044b1c6a1b9d09b365bc18b178826131e
Merge "openssl-1.0.1e upgrade"
Add missing patch file to openssl.config

Without this, one patch file was not applied properly.

Change-Id: I53d3b5935c3cd633b3bade8055d1aa37c14810fc
Convert ISO-8859-1 files to UTF-8.

This patch modifies import_openssl.sh to convert all untarred OpenSSL
source files that are in ISO-8859-1 encoding into UTF-8.

The main reason for this is that the Chromium review tool doesn't support
anything else (i.e. "git cl upload" will barf with a mysterious Python
exception if the uploaded diff files aren't UTF-8).

This makes it easier to import the Android sources into the Chromium tree,
and should have no impact on the build products.

Change-Id: I43df753c41f5d9ed853a4252d7d05c5bbced98b4
Merge "Add missing patch file to openssl.config"
Merge "Convert ISO-8859-1 files to UTF-8."
Auto-generate configuration flags.

This modifies import_openssl.sh to parse the configured Makefile
and extract the appropriate compiler flags that were currently
defined manually in android-config.mk

- Modifies openssl.config to add missing configure options to
  ensure the final result is the same than before the patch.
  This also updates crypto/opensslconf.h.

- The generated output is stored in build-config.mk which content
  directly comes from the OpenSSL Makefile.

- android-config.mk is still used to define LOCAL_CFLAGS from
  the definitions in build-config.mk, as well as perform minimal
  extra filtering.

- Remove the section in README.android about manually changing
  android-config.mk.

Change-Id: I5275de69a817aa7c9880ea48e5d6a8ac1652a1e4
Merge "Auto-generate configuration flags."