|
|
|
Name: openssl
|
|
|
|
URL: http://openssl.org/source/
|
|
|
|
Version: 1.0.0f
|
|
|
|
License: BSDish
|
|
|
|
License File: openssl/LICENSE
|
|
|
|
|
|
|
|
Description:
|
|
|
|
This is OpenSSL, the standard SSL/TLS library, which is used only in Android.
|
|
|
|
|
|
|
|
It's an unmodified, upstream source except for the patches listed below.
|
|
|
|
|
|
|
|
|
|
|
|
********************************************************************************
|
|
|
|
The following patches are taken from Android Open Source Project.
|
|
|
|
|
|
|
|
|
|
|
|
progs.patch:
|
|
|
|
|
|
|
|
Fixup sources under the apps/ directory that are not built under the android environment.
|
|
|
|
|
|
|
|
|
|
|
|
small_records.patch:
|
|
|
|
|
|
|
|
Reduce OpenSSL memory consumption.
|
|
|
|
SSL records may be as large as 16K, but are typically < 2K. In
|
|
|
|
addition, a historic bug in Windows allowed records to be as large
|
|
|
|
32K. OpenSSL statically allocates read and write buffers (34K and
|
|
|
|
18K respectively) used for processing records.
|
|
|
|
With this patch, OpenSSL statically allocates 4K + 4K buffers, with
|
|
|
|
the option of dynamically growing buffers to 34K + 4K, which is a
|
|
|
|
saving of 44K per connection for the typical case.
|
|
|
|
|
|
|
|
|
|
|
|
handshake_cutthrough.patch
|
|
|
|
|
|
|
|
Enables SSL3+ clients to send application data immediately following the
|
|
|
|
Finished message even when negotiating full-handshakes. With this patch,
|
|
|
|
clients can negotiate SSL connections in 1-RTT even when performing
|
|
|
|
full-handshakes.
|
|
|
|
|
|
|
|
|
|
|
|
jsse.patch
|
|
|
|
|
|
|
|
Support for JSSE implementation based on OpenSSL.
|
|
|
|
|
|
|
|
|
|
|
|
npn.patch
|
|
|
|
|
|
|
|
Transport Layer Security (TLS) Next Protocol Negotiation Extension
|
|
|
|
|
|
|
|
|
|
|
|
sha1_armv4_large.patch
|
|
|
|
|
|
|
|
This patch eliminates memory stores to addresses below SP.
|
|
|
|
|
|
|
|
|
|
|
|
openssl_no_dtls1.patch
|
|
|
|
|
|
|
|
Add missing #ifndef OPENSSL_NO_DTLS1
|
|
|
|
|
|
|
|
|
|
|
|
********************************************************************************
|
|
|
|
The following patches are needed to compile this openssl on Chromium and pass
|
|
|
|
the related net unit tests.
|
|
|
|
|
|
|
|
|
|
|
|
empty_OPENSSL_cpuid_setup.patch
|
|
|
|
|
|
|
|
Use a empty implementation for function OPENSSL_cpuid_setup to resolve link
|
|
|
|
error. We should figure out how to geenrate platform specific implementation
|
|
|
|
of OPENSSL_cpuid_setup by leveraging crypto/*cpuid.pl.
|
|
|
|
|
|
|
|
|
|
|
|
x509_hash_name_algorithm_change.patch
|
|
|
|
|
|
|
|
There are many symbolic links under /etc/ssl/certs created by using hash of
|
|
|
|
the pem certificates in order for OpenSSL to find those certificate.
|
|
|
|
Openssl has a tool to help you create hash symbolic links. (See tools/c_rehash)
|
|
|
|
However the new openssl changed the hash algorithm, Unless you compile/install
|
|
|
|
the latest openssl library and re-create all related symbolic links, the new
|
|
|
|
openssl can not find some certificates because the links of those certificates
|
|
|
|
were created by using old hash algorithm, which causes some tests failed.
|
|
|
|
This patch gives a way to find a certificate according to its hash by using both
|
|
|
|
new algorithm and old algorithm.
|
|
|
|
crbug.com/111045 is used to track this issue.
|
|
|
|
|
|
|
|
|
|
|
|
tls_exporter.patch
|
|
|
|
|
|
|
|
Keying Material Exporters for Transport Layer Security (RFC 5705).
|
|
|
|
|
|
|
|
|
|
|
|
Android platform support
|
|
|
|
|
|
|
|
Copy config/android/openssl/opensslconf.h from Android's
|
|
|
|
external/openssl/include/openssl/opensslconf.h
|