| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
stack to use platform-specific private key objects to perform
signing in the context of SSL handshakes which require a client
certificate.
More specifically:
- Add net/android/keystore.h, which provides native
functions to operate on JNI references pointing to
java.security.PrivateKey objects provided by the
platform. I.e.:
net::android::GetPrivateKeyType()
net::android::SignWithPrivateKey()
Also provide a function that can get the system's own
EVP_PKEY* handle corresponding to a given PrivateKey
object. This uses reflection and should *only* be used
for RSA private keys when running on Android 4.0 and
4.1, in order to route around a platform bug that was
only fixed in 4.2.
net::android::GetOpenSSLSytstemHandleForPrivateKey()
See the comments in this source file for mode details:
net/android/java/org/chromium/net/AndroidKeyStore.java
- Add net/android/keystore_openssl.h, which provides
a function that can wrap an existing PrivateKey
JNI reference around an OpenSSL EVP_PKEY object
which uses custom DSA/RSA/ECDSA methods to perform
signing as expected to handle client certificates.
net::android::GetOpenSSLPrivateKeyWrapper()
- Add relevant unit tests for the new functions.
Note that the unit test comes with its own Java helper
function, which is used to create a platform PrivateKey
object from encoded PKCS#8 private key data.
This is called from the native unit test, but does not
constitute a new Java test (AndroidKeyStoreTestUtil.java).
- Add corresponding new test key files under
net/data/ssl/certificates/, and their generation
script in net/data/ssl/scripts/.
- Add net/android/private_key_type_list.h which is
used both from C++ and Java to define the list of
supported private key types used by this code.
- Minor improvements: Add a "release()" method to
crypto::ScopedOpenSSL, add missing BASE_EXPORT
to one base/android/jni_array.h function declaration.
BUG=166642
Review URL: https://chromiumcodereview.appspot.com/11571059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181741 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/12225112
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181655 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
This updates headers that forward-declare it and a few random places to use the namespace explicitly. There us a using declaration in file_path.h that makes the rest compile, which we can do in future passes.
Review URL: https://codereview.chromium.org/12163003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180245 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Since the code for doing this is outside chrome/ , we can't use the ScopedSlowStartupUMA class, but instead record a regular histogram. If we're experiencing a slow startup, we look up the histogram and set the UMA bit on it.
BUG=160927
Review URL: https://chromiumcodereview.appspot.com/12018019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178018 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building on windows with target_arch=x64, we no longer need win32 targets
forced to be 64-bit. This gates out these targets when target_arch!=ia32.
(Prior CL dropped the minimal set to break the dependency between these targets
and the rest of the build. This eliminates them completely.)
BUG=None
TEST=None
R=jschuh@chromium.org,thestig@chromium.org
TBR=darin@chromium.org,abodenha@chromium.org,apatrick@chromium.org,sra@chromium.org,wtc@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11929039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177959 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=166496
BUG=167187
TBR=rsleevi
Review URL: https://chromiumcodereview.appspot.com/11833014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175954 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
both cryptographically secure and thread-safe. The default QuicRandom
is a singleton.
crypto/random.h can include the smaller <stddef.h> for size_t.
Add missing header files to net/net.gyp.
R=rch@chromium.org
BUG=none
TEST=new unit tests
Review URL: https://chromiumcodereview.appspot.com/11476031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171931 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
of HMAC::Init() and HMAC::Sign().
R=agl@chromium.org,bradnelson@chromium.org,thakis@chromium.org
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11419270
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170852 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=agl@chromium.org,rsleevi@chromium.org
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11299235
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170308 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some comments in https://chromiumcodereview.appspot.com/11411013/
were not addressed before the CL landed, so do that now.
BUG=None
TEST=content_browsertests
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/11418212
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170129 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The underlying CLs are:
https://codereview.chromium.org/11419095/
https://codereview.chromium.org/11411127/
The first CL allows us to call NSS_SetAlgorithmPolicy in Windows
shared_library build.
R=rsleevi@chromium.org,sgjesse@chromium.org
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11308155
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169195 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=eroman@chromium.org,rsleevi@chromium.org
BUG=153281
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11415074
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169053 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This prepares us for NSS 3.14, which disables MD5 certificate signatures
by default.
Disable a unit test for NSS because all the test cases in that test are
invalid now.
R=rsleevi@chromium.org
BUG=151692
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11365274
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168757 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=156864
TEST=content_browsertests passes on linux_rel_precise.
Review URL: https://chromiumcodereview.appspot.com/11411013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168372 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Also add to base namespace.
BUG=
Review URL: https://codereview.chromium.org/11359217
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168281 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
failure.
This prevents the log message from being stripped in official builds.
R=eroman@chromium.org
BUG=153281
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11280021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168128 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=eroman@chromium.org,rsleevi@chromium.org
BUG=153281
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11358256
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167871 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Can be used to implement GCM until GCM support in NSS is widespread.
Review URL: https://codereview.chromium.org/11175015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166952 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead just wrap the unittests files into the crypto namespace.
TEST=crypto_unittests
R=rsleevi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11368035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165816 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Add symbol exports needed to build content shell.
BUG=158821
Review URL: https://codereview.chromium.org/11368031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with the weak certificate signature unit tests.
Map the new NSS error code SEC_ERROR_CERT_SIGNATURE_ALGORITHM_DISABLED
to net::ERR_CERT_WEAK_SIGNATURE.
Refactor MapCertErrorToCertStatusto avoid duplicating code with
MapSecurityError.
R=rsleevi@chromium.org
BUG=151692
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11192076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163098 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that OWNERS supports per-file owners, we can limit the scope of the
top-level wildcard to just DEPS, and make darin and ben owners for
everything else and remove the broad use of "set noparent".
R=ben@chromium.org, darin@chromium.org
BUG=88315
Review URL: https://codereview.chromium.org/11191038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163069 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL needs memory suppression because of missing CloseTestNSSDB().
See also TODO.
BUG=136950, 156433
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=162327
Review URL: https://chromiumcodereview.appspot.com/11174006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162659 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=136950
Review URL: https://chromiumcodereview.appspot.com/11174006
TBR=toyoshim@chromium.org
BUG=156433
Review URL: https://codereview.chromium.org/11196028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162511 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=136950
Review URL: https://chromiumcodereview.appspot.com/11174006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162327 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than calling PK11_GetBestSlot, which requires enumerating all
connected tokens, use PK11_GetInternalSlot, which explicitly uses the
internal NSS key database. On Linux, this will ignore any user preferences
regarding what tokens should be used for which mechanisms, but for
internal/temporary operations, this is an acceptable tradeoff.
BUG=chrome-os-partner:14707
Review URL: https://chromiumcodereview.appspot.com/11186004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162309 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/11092006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160892 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apple removed the Big Global Lock guarding the Security.framework API,
but there are a number of thread-unsafe places in the API. Additionally,
it seems that OS X 10.8.2 has introduced some deadlock potential, so
force calls to be serialized behind a Chrome-supplied Big Global Lock
until it's safe to do otherwise.
BUG=151707
TEST=See bug
Review URL: https://chromiumcodereview.appspot.com/11016004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159839 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes ECSignatureCreator to use the hash function that SPDY
expects (SHA-256). There are no other users of ECSignatureCreator in
the tree so I'm going to defer making these choices parameters until there's
a benefit to be had.
It also adds DecodeSignature to convert from ASN.1 signatures to the `raw'
form that SPDY needs.
BUG=none
Review URL: https://chromiumcodereview.appspot.com/10910226
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157551 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/10920073
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154937 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename MacKeychain to AppleKeychain and add mac and iOS specific
implementations (crypto/apple_keychain_ios.mm and
crypto/apple_keychain_mac.mm). Rename MockKeychain to
MockAppleKeychain and split its implementations in 3 files
crypto/mock_apple_keychain.cc, crypto/mock_apple_keychain_ios.cc and
crypto/mock_apple_keychain_mac.cc).
Review URL: https://chromiumcodereview.appspot.com/10875029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154123 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
RSAPrivateKey is not used on iOS, but code calling it is compiled. To avoid
ifdef'ing in the client code, the class is stubbed out.
Review URL: https://chromiumcodereview.appspot.com/10823309
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152300 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This CL upstreams two minor changes of crypto for iOS:
* nss_util.cc: On iOS, the default NSS root certificates need to be initialized when no persistent database is used.
* symmetric_key_unittest.cc: Turn off an OS X-specific code path for iOS.
Review URL: https://chromiumcodereview.appspot.com/10831307
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151545 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Adds iOS support to crypto.gyp. Both targets now build, but the tests may not
run correctly, and not all the crypto code is correct yet for iOS.
BUG=NONE
Review URL: https://chromiumcodereview.appspot.com/10830183
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150775 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Added a cryptographic random-number generator to crypto/.
Modified sync to use this function instead.
May also be used by Cloud Print in the future.
Review URL: https://chromiumcodereview.appspot.com/10698177
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149689 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
use-after-free problems.
Review URL: https://chromiumcodereview.appspot.com/10828118
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149506 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will simplify the addition of a tool to check licenses for the purpose of
the Android WebView build.
See also http://codereview.chromium.org/10827099
Also adds other missing fields to these README.chromium files as required by
presubmit checks and fixes a regex used to enforce this.
BUG=138921
Review URL: https://chromiumcodereview.appspot.com/10821103
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149423 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This patch solves the build issues that are directly related to building crypto for the x86_64 architecture.
BUG=136072
Review URL: https://chromiumcodereview.appspot.com/10738003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149047 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=115047
R=rsleevi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10824076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148928 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In unrelated work, I found that the group addition formula used in p224.cc
doesn't work when one of the arguments is the point at infinity. This change
catches that case and simplifies the ScalarMult loop as a consequence.
In the course of doing this, I found a couple of bugs in Contract that would
have produced the wrong answer is very rare cases.
I also added a catch for a+a. This can't happen in the ScalarMult loop, but it
could happen from SPAKE2 at a rate of 1 in ~2**220 evaluations.
BUG=none
TEST=crypto_unittests
Review URL: https://chromiumcodereview.appspot.com/10822019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148815 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
getter method.
R=rsleevi@chromium.org
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10800038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147541 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/10695140
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146077 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Add static function to ECPrivateKey to get which NSS slot it uses.
BUG=127506
Review URL: https://chromiumcodereview.appspot.com/10700099
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145777 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=129174,127506
TEST=run a TLS Channel ID supporting server, try connecting to it.
TBR=joi@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10560020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144093 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Encryptor, HMAC, and SymmetricKey now use NSS on all platforms except Android.
This allows us to use them inside the sandbox, something that was not possible
when using the platform APIs.
On Windows, Native Client 64-bit builds still use the the platform APIs.
BUG=127803,124741
TEST=Existing tests since there is no change in functionality.
Review URL: https://chromiumcodereview.appspot.com/10543146
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142356 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a) - gcc-4.7 improved the implicit headers that it includes. with
<4.7, the gthr-default.h file always pulls in unistd.h. with >=4.7,
they avoided that include when possible. so code that isn't including
unistd.h itself but needs it now breaks.
b) - narrowing conversion in initiliazation list now raises an
'ill-formed conversion' warning, which causes error when -Werror is
given.
[THIS PART IS NOW REVERTED IN THE PATCH} c) - included patches from pastebin - http://pastebin.com/raw.php?i=p3UKs7Cg
Note - this may not be fixing all the gcc 4.7 build problems for all
parts, but rather than submitting one big-fix-for-all CL, we'd better
do it incrementally (given that all the modification is reasonable and
minor) so that at least some parts get a successful gcc 4.7 build.
BUG=None
TEST=Built successfully using GCC-4.7 under chromium chroot
Review URL: https://chromiumcodereview.appspot.com/10451068
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140470 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Move Cryptohome D-Bus method calls to chromeos::CertLibrary
BUG=125848
TEST=can login
Review URL: https://chromiumcodereview.appspot.com/10332191
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137646 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
build/android/system.gyp has an extra level of abstraction for openssl
which is currently not really doing anything since we don't yet support
using the system openssl on android. Remove it for now, because this
stops there from being two targets called "ssl" (this one and the one
for linux) - solving some problems with the android build backend for
gyp.
Review URL: https://chromiumcodereview.appspot.com/10332106
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137379 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=126674
TEST=build success
Review URL: https://chromiumcodereview.appspot.com/10381151
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137357 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the current setup, if you have a header file my_class.h
class BASE_EXPORT MyClass {
public:
void MyInlineMethod() { /* do stuff, inline */ }
};
then every cc file that includes my_class.h will have a public symbol
for MyInlineMethod (because inline methods need to be emitted to
every translation unit, and the linker sorts them out). With the
components build, the linker can't decide to drop these inline methods,
so every .so that uses this header file will have the same public symbol.
With this proposed change, the symbol will only be visible in the target
the header file belongs to, and it will be hidden in all other components.
That's cleaner, and it also prevents accident hidden dependencies (say
target A depends on B, and B depends on C. A accidentally uses an inline
function from a class in C. With this change, that would result in a linker
error, and an explicit dependency from A on C would have to be added).
Also add a missing CHROMEOS_IMPLEMENTATION define which went
unnoticed until now.
BUG=90078
TEST=Things still build.
TBR=ben, tony, viettrungluu, thestig, agl, willchan
Review URL: https://chromiumcodereview.appspot.com/10386108
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137130 0039d316-1c4b-4281-b951-d872f2087c98
|