| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I7d8b77d77979f69cbb5e63f1fcab802e9dcccfe0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes openssl.config the only place where common
and architecture-specific sources and compiler flags are listed.
Its content is processed by import_openssl.sh to generate new
build config files (Crypto-config.mk, Ssl-config.mk, Apps-config.mk)
which are themselves included by simplified Crypto.mk, Ssl.mk, Apps.mk.
+ Add a new script (check-all-builds.sh) that can rebuild six
different variants of openssl in one go. This is useful to quickly
check that a change didn't break a specific build, e.g. when
adding new patch or upgrading the OpenSSL sources.
See './check-all-builds.sh --help' for more info.
Note: Clang-based builds are currently broken, so only GCC-based
ones are activated at the moment.
Change-Id: If08c204e4dc9b081ce676bc7984d039670e115b0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Change-Id: Ie980c8834cf2c843858182d98d1f60c65a2a9b70
|
|
|
|
| |
Change-Id: I357c33a297937c2e64cfa8c6e49795cd1e865544
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The "sha512-x86_64.pl" script actually needs the name of the output
file as its second parameter to determine whether to generate SHA-256
or SHA-512 routines.
This patch does the following:
- Fix import_openssl.sh to invoke the script properly
- Add the generation of sha256-x86_64.S as well.
Note that this patch is the result of running:
./import_openssl.sh import /path/to/openssl-1.0.1c.tar.gz
Which means that no other source files were impacted by the change.
Only needed for the Chromium x86_64 "linux_redux" build and the
SPDY host proxy program (flip_in_mem_edsm_server).
Change-Id: Ia40737f5952c7b156bd51844571e4f759910a6a1
|
|
|
|
|
|
|
|
|
|
| |
This patch modifies import_openssl.sh to also generate assembly
files for x86_64 (using the appropriate Perl scripts).
These new sources are not used by the Android build, but by the
Chromium "linux_redux" build which uses OpenSSL has its SSL engine.
Change-Id: I3d1435de17f2de10633a71b9197b6cec328e93a7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch does the following:
- Adds the generation of crypto/x86cpuid.S in import_openssl.sh.
- Modifies Crypto.mk to ensure that the corresponding functions
are linked and used at runtime.
Note that mem_clr.c is removed from the x86 build. Its sole purpose
is to provide a generic implementation of OPENSSL_cleanse, which is
provided by the x86cpuid.S source file now.
Change-Id: I7cbf6b12220def11498e591dc64787ef76303c9e
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Regenerate some assembly files to make them PIC friendly.
The perl script needs to be passed "-fPIC" to properly generate PIC
friendly code for x86.
The import_openssl.sh has also been updated to include -fPIC when
generating assembly files for x86.
Change-Id: Ie174b5f74cf7fcdad1339892302b8762ee43ed7c
Signed-off-by: Daniel Leung <daniel.leung@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The openssl files were generated with an .s extension,
which tells GCC that they normally don't need to be sent
to the pre-processor (i.e. they are passed directly to the
assembler).
Unfortunately, all these files _do_ need to be preprocessed,
which is why 'LOCAL_AS_CFLAGS := -x assembler-with-cpp' was
required in Crypto.mk.
As simpler way to solve the issue is simply to use an .S
extension when generating the assembly files. GCC knows
that these must be pre-processed first.
So the patch does:
- Rename all .s files to .S
- Remove the use of -x assembler-with-cpp from Crypto.mk
- Modify import_openssl.sh to directly generate .S files
(tested)
Context: This makes it easier to reuse the exact same sources
for Chrome on Android. Its gyp build system doesn't
have a feature comparable to LOCAL_AS_CFLAGS.
Change-Id: I708d9fbcf8d42b5c39a7d30df2b03ed79a3e62f0
|
|
|
|
|
|
|
|
| |
Asm files attached to this patch were generated from the
current OpenSSL version.
Change-Id: I05ef67a6e34016ef94a0ef23ca264bcac805b1cc
Signed-off-by: Catalin Ionita <catalin.ionita@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update import script to generate o32 .s files for MIPS.
Release 1.0.1 of openssl renamed the C and assembler routines for
AES_set_encrypt_key() and AES_set_decrypt_key(), but forgot to do this in the
Mips assembler version. The following mips_private.patch fixes that
problem in the upstream source, until such time as it is fixed upstream.
The upstream version of openssl builds for a "n32" Mips abi used on SGI
workstations. Android's import_openssl.sh script is now modified to
build for the "o32" abi used throughout Mips Android. That change is
permanent, and will not be upstreamed.
Signed-off-by: Raghu Gandham <raghu@mips.com>
Change-Id: Iec5ce7f11a74a3674e96057f2ce97d8ba9238464
|
|
|
|
| |
Change-Id: I39f6cfc61f484f4457bda3003e5992dfc7e20186
|
|
|
|
|
| |
Bug: 6168278
Change-Id: Icb87356462ff2219c939bfeedc6aac7f4db69af7
|
|\
| |
| |
| |
| |
| |
| | |
00:00:00 2001 Subject: [MIPS] MIPS assembler pack update"
* commit 'db166823303559663b1c209e14b326160519c51c':
From 67b1ae72527c9e173ace98e805e8b9c090455873 Mon Sep 17 00:00:00 2001 Subject: [MIPS] MIPS assembler pack update
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Subject: [MIPS] MIPS assembler pack update
Asm changes have been taken from http://cvs.openssl.org/chngview?cn=21708
These should discarded when the code base moves to OpenSSL 1.0.1 or above.
Additional changes have also been added to the Android make files, so it builds
correctly for MIPS architecture.
Change-Id: Ifc139e624d50510727180b03b15e15f7bbeda4d1
Signed-Off-By: Petar Jovanovic <petarj@mips.com>
|
|/
|
|
|
| |
Bug: 5822335
Change-Id: Iadf81526a10b072ff323730db0e1897faea7a13f
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
- openssl: add openssl support for specifying per key certificate chains
- libcore: properly implement client certificate request call back
- libcore: properly implement sending certificate chain
- libcore: properly implement retreiving local certificate chain
- libcore: added an SSLContext for non-OpenSSL SSLSocket creation
Details:
external/openssl
Improve patch generate support by applying all other patches to
baseline to remove cross polluting other patch changes into target
patch. Move cleanup of ./Configure output to import script from
openssl.config.
import_openssl.sh
openssl.config
Adding SSL_use_certificate_chain and SSL_get_certificate_chain to
continue to finish most of remaining JSSE issues.
include/openssl/ssl.h
ssl/s3_both.c
ssl/ssl.h
ssl/ssl_locl.h
ssl/ssl_rsa.c
Updated patch (and list of input files to patch)
patches/jsse.patch
openssl.config
libcore
Restoring SSLContextImpl as provider of non-OpenSSL SSLSocketImpl
instances for interoperability testing. OpenSSLContextImpl is the
new subclass that provides OpenSSLSocketImpl. JSSEProvider
provides the old style SSLContexts, OpenSSLProvider provides the
OpenSSL SSLContext, which includes the "default" context. Changed
to register SSLContexts without aliases to match the RI.
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/JSSEProvider.java
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLProvider.java
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/DefaultSSLContextImpl.java
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLContextImpl.java
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLContextImpl.java
Native interface updates to support OpenSSLSocketImpl improvements
- KEY_TYPES now expanded based on what we are being provided by OpenSSL.
keyType function now maps key type values received from
clientCertificateRequested callback.
- Removed remaining uses of string PEM encoding, now using ASN1 DER consistently
Includes SSL_SESSION_get_peer_cert_chain, verifyCertificateChain
- Fixed clientCertificateRequested to properly include all key
types supported by server, not just the one from the cipher
suite. We also now properly include the list of supported CAs to
help the client select a certificate to use.
- Fixed NativeCrypto.SSL_use_certificate implementation to use new
SSL_use_certificate_chain function from openssl to pass chain to
OpenSSL.
- Added error handling of all uses of sk_*_push which can fail due to out of memory
- Fixed compile warning due to missing JNI_TRACE argument
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/NativeCrypto.java
luni/src/main/native/NativeCrypto.cpp
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLSocketImpl.java
Pass this into chooseServerAlias call as well in significantly revamped choseClientAlias
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLSocketImpl.java
Minor code cleanup while reviewing diff between checkClientTrusted and checkServerTrusted
luni/src/main/java/org/apache/harmony/xnet/provider/jsse/TrustManagerImpl.java
Improvements to SSL test support to go along with client
certificate and certificate chain changes. TestSSLContext now has
separate contexts for the client and server (as well as seperate
key stores information). TestKeyStore now is more realistic by
default, creating a CA, intermediate CA, and separate client and
server certificates, as well as a client keystore that simply
contains the CA and no certificates.
support/src/test/java/javax/net/ssl/TestKeyStore.java
support/src/test/java/javax/net/ssl/TestSSLContext.java
Tests tracking API changes. Tests involving cert chains now now
updated to use TestKeyStore.assertChainLength to avoid hardwiring
expected chain length in tests. These tests also now use
TestSSLContext.assertClientCertificateChain to validate that the
chain is properly constructed and trusted by a trust manager.
luni/src/test/java/java/net/URLConnectionTest.java
luni/src/test/java/javax/net/ssl/SSLContextTest.java
luni/src/test/java/javax/net/ssl/SSLEngineTest.java
luni/src/test/java/javax/net/ssl/SSLSessionContextTest.java
luni/src/test/java/javax/net/ssl/SSLSessionTest.java
luni/src/test/java/javax/net/ssl/SSLSocketTest.java
support/src/test/java/java/security/StandardNames.java
support/src/test/java/javax/net/ssl/TestSSLEnginePair.java
support/src/test/java/javax/net/ssl/TestSSLSocketPair.java
frameworks/base
Tracking change of SSLContextImpl to OpenSSLContextImpl
core/java/android/net/SSLCertificateSocketFactory.java
core/java/android/net/http/HttpsConnection.java
tests/CoreTests/android/core/SSLPerformanceTest.java
tests/CoreTests/android/core/SSLSocketTest.java
Tracking changes to TestSSLContext
core/tests/coretests/src/android/net/http/HttpsThroughHttpProxyTest.java
Change-Id: I792921617164a98467c500d7fe53dbd738adfa02
|
|
|
|
|
|
|
|
|
|
| |
Tested with
./import_openssl.sh import .../openssl-1.0.0.tar.gz
and confirmed no source changes
Also added debug flags in android-config.mk for later use
Change-Id: Idbfefe7bc16790060eb58c116b0961c195b3a087
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There were two issues with the first version of small_records.patch
- the resize check was immediately after the size check, so the
size check always failed before the resize happened.
- openssl-1.0.0 needs extra space to be allocated for alignment
patches/small_records.patch
Regenerated file
ssl/s3_pkt.c
Added patch generatation support, as opposed to just regenerate when
patches no longer apply on upgrade. Usage:
import_openssl.sh generate <patch/foo.patch> <openssl-tarball.tar.gz>
import_openssl.sh
As part of "import_openssl.sh generate", moved definition of
imported sources to openssl.config instead of wired in the code.
openssl.config
Add browser testing note with https://online.citibank.com
README.android
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
external/openssl
Updated version to 1.0.0
openssl.version
Updated small records patch for 1.0.0. This is probably the most significant change.
patches/small_records.patch
Removed bad_version.patch since fix is included in 0.9.8n and beyond
patches/README
patches/bad_version.patch
openssl.config
Changed import_openssl.sh to generate armv4 asm with the 1.0.0
scripts, not our backported 0.9.9-dev backported version in
patches/arm-asm.patch.
import_openssl.sh
openssl.config
patches/README
patches/arm-asm.patch
Added -DOPENSSL_NO_STORE to match ./Configure output
Added -DOPENSSL_NO_WHIRLPOOL (no-whrlpool) to skip new optional cipher
android-config.mk
openssl.config
Fixed import to remove include directory during import like other
imported directories (apps, ssl, crypto)
import_openssl.sh
Updated UNNEEDED_SOURCES. Pruned Makefiles which we don't use.
openssl.config
Updated to build newly required files
patches/apps_Android.mk
patches/crypto_Android.mk
Disable some new openssl tools
patches/progs.patch
Updated upgrade testing notes to include running BigInteger tests
README.android
Automatically imported
android.testssl/
apps/
crypto/
e_os.h
e_os2.h
include/
ssl/
dalvik
Change makeCipherList to skip SSLv2 ciphers that 1.0.0 now returns
so there are not duplicate ciphersuite names in getEnabledCipherSuites.
libcore/x-net/src/main/native/org_apache_harmony_xnet_provider_jsse_NativeCrypto.cpp
Updated OpenSSLSocketImpl_cipherauthenticationmethod for new
SSL_CIPHER algorithms -> algorithm_auth (and const-ness)
libcore/x-net/src/main/native/org_apache_harmony_xnet_provider_jsse_NativeCrypto.cpp
Update to const SSL_CIPHER in OpenSSLSessionImpl_getCipherSuite (and cipherauthenticationmethod)
libcore/x-net/src/main/native/org_apache_harmony_xnet_provider_jsse_NativeCrypto.cpp
test_EnabledCipherSuites on both SSLSocketTest and
SSLServerSocketTest caught the makeCipherList problem. However the
asserts where a bit out of sync and didn't give good messages
because they didn't actually show what was going on. As part of
debugging the issue they found, I tried to make align the asserts
and improve their output for the future.
libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLServerSocketTest.java
libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLSocketTest.java
vendor/google
Add const to X509V3_EXT_METHOD* for 1.0.0 compatibility
libraries/libjingle/talk/base/openssladapter.cc
Change-Id: I608dbb2ecf4b7a15e13b3f3dcea7c0443ff01e32
|
|
|
|
|
|
| |
found when merging to dalvik-dev where test failed because of incorrect path
Change-Id: Ib87af202fdf4027d8c133a27bd956227c6d741e6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
- the small_records.patch finished code review today, importing final version
- the native crash reflected an underling openssl issue, so we have a new patch for this
Details:
Adding new patch for b/2522132 crash
patches/bad_version.patch
Syncing small_records.patch with reviewed version
patches/small_records.patch
Adding new patch to the list of active patches
openssl.config
Adding description of the new bad_version.patch
patches/README
Minor test script changes
- Added adb remount
- Simplified /mnt/sdcard to /sdcard
patches/testssl.sh
Added trace message as each patch is applied so I could more
easily confirm that the newly added bad_version.patch was applied.
import_openssl.sh
Automatically generated files:
android.testssl/testssl.sh
ssl/d1_pkt.c
ssl/s3_both.c
ssl/s3_pkt.c
Change-Id: I1ca1b69d612ef425203074c58c031d6a681b92fe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Testing Summary:
- Passed new android.testssl/testssl.sh
- General testing with BrowserActivity based program
Details:
Expanded detail in README.android about how to build and test openssl
upgrades based on my first experience.
modified: README.android
Significant rework of import_openssl.sh script that does most of
the work of the upgrade. Most of the existing code became the main
and import functions. The newly regenerate code helps regenerate
patch files, building on the fact that import now keeps and
original unmodified read-only source tree for use for patch
generation. Patch generation relies on additions to openssl.config
for defining which patches include which files. Note that
sometimes a file may be patched multiple times, in that case
manual review is still necessary to prune the patch after
auto-regeneration. Other enhancements to import_openssl.sh include
generating android.testssl and printing Makefile defines for
android-config.mk review.
modified: import_openssl.sh
Test support files for openssl/
Add support for building /system/bin/ssltest as test executible for
use by testssl script. Need confirmation that this is the right way
to define such a test binary.
modified: patches/ssl_Android.mk
Driver script that generates user and CA keys and certs on the
device with /system/bin/openssl before running testssl. Based on
openssl/test/testss for generation and openssl/test/Makefile
test_ssl for test execution.
new file: patches/testssl.sh
Note all following android.testssl files are automatically
imported from openssl, although possible with modifications by
import_openssl.sh
testssl script imported from openssl/test that does the bulk of
the testing. Includes new tests patched in for our additions.
new file: android.testssl/testssl
CA and user certificate configuration files from openssl.
Automatically imported from openssl/test/
new file: android.testssl/CAss.cnf
new file: android.testssl/Uss.cnf
certificate and key test file imported from openssl/apps
new file: android.testssl/server2.pem
Actual 0.9.8m upgrade specific bits
Trying to bring ngm's small records support into 0.9.8m. Needs
signoff by ngm although it does pass testing.
modified: patches/small_records.patch
Update openssl.config for 0.9.8m. Expanded lists of undeeded
directories and files for easier update and review, adding new
excludes. Also added new definitions to support "import_openssl.sh
regenerate" for patch updating.
modified: openssl.config
Updated OPENSSL_VERSION to 0.9.8m
modified: openssl.version
Automatically imported/patched files. Seems like it could be
further pruned in by openssl.config UNNEEDED_SOURCES, but extra
stuff doesn't end up impacting device.
modified: apps/...
modified: crypto/...
modified: include/...
modified: ssl/...
Other Android build stuff.
Note for these patches/... is source, .../Android.mk is derived.
Split LOCAL_CFLAGS additions into lines based on openssl/Makefile
source for easier comparison when upgrading. I knowingly left the
lines long and unwrapped for easy vdiff with openssl/Makefile
modified: android-config.mk
Removed local -DOPENSSL_NO_ECDH already in android-config.mk.
modified: patches/apps_Android.mk
Sync up with changes that had crept into derived crypto/Android.mk
modified: patches/crypto_Android.mk
Change-Id: I73204c56cdaccfc45d03a9c8088a6a93003d7ce6
|
|
|
|
| |
See patches/README for additional details.
|
|
The source tree (and the size of the compiled library)
can be reduced further. This will be done in a future
commit.
|