OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/android/network_library.h" | 5 #include "net/android/network_library.h" |
6 | 6 |
7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
8 #include "base/android/jni_array.h" | 8 #include "base/android/jni_array.h" |
9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
10 #include "base/android/scoped_java_ref.h" | 10 #include "base/android/scoped_java_ref.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 DCHECK(!auth_string.is_null()); | 36 DCHECK(!auth_string.is_null()); |
37 | 37 |
38 jboolean trusted = Java_AndroidNetworkLibrary_verifyServerCertificates( | 38 jboolean trusted = Java_AndroidNetworkLibrary_verifyServerCertificates( |
39 env, chain_byte_array.obj(), auth_string.obj()); | 39 env, chain_byte_array.obj(), auth_string.obj()); |
40 if (ClearException(env)) | 40 if (ClearException(env)) |
41 return VERIFY_INVOCATION_ERROR; | 41 return VERIFY_INVOCATION_ERROR; |
42 | 42 |
43 return trusted ? VERIFY_OK : VERIFY_NO_TRUSTED_ROOT; | 43 return trusted ? VERIFY_OK : VERIFY_NO_TRUSTED_ROOT; |
44 } | 44 } |
45 | 45 |
| 46 void AddTestRootCertificate(const uint8* cert, size_t len) { |
| 47 JNIEnv* env = AttachCurrentThread(); |
| 48 ScopedJavaLocalRef<jbyteArray> cert_array = ToJavaByteArray(env, cert, len); |
| 49 DCHECK(!cert_array.is_null()); |
| 50 Java_AndroidNetworkLibrary_addTestRootCertificate(env, cert_array.obj()); |
| 51 } |
| 52 |
| 53 void ClearTestRootCertificates() { |
| 54 JNIEnv* env = AttachCurrentThread(); |
| 55 Java_AndroidNetworkLibrary_clearTestRootCertificates(env); |
| 56 } |
| 57 |
46 bool StoreKeyPair(const uint8* public_key, | 58 bool StoreKeyPair(const uint8* public_key, |
47 size_t public_len, | 59 size_t public_len, |
48 const uint8* private_key, | 60 const uint8* private_key, |
49 size_t private_len) { | 61 size_t private_len) { |
50 JNIEnv* env = AttachCurrentThread(); | 62 JNIEnv* env = AttachCurrentThread(); |
51 ScopedJavaLocalRef<jbyteArray> public_array = | 63 ScopedJavaLocalRef<jbyteArray> public_array = |
52 ToJavaByteArray(env, public_key, public_len); | 64 ToJavaByteArray(env, public_key, public_len); |
53 ScopedJavaLocalRef<jbyteArray> private_array = | 65 ScopedJavaLocalRef<jbyteArray> private_array = |
54 ToJavaByteArray(env, private_key, private_len); | 66 ToJavaByteArray(env, private_key, private_len); |
55 jboolean ret = Java_AndroidNetworkLibrary_storeKeyPair(env, | 67 jboolean ret = Java_AndroidNetworkLibrary_storeKeyPair(env, |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 *result = ConvertJavaStringToUTF8(ret); | 114 *result = ConvertJavaStringToUTF8(ret); |
103 return true; | 115 return true; |
104 } | 116 } |
105 | 117 |
106 bool RegisterNetworkLibrary(JNIEnv* env) { | 118 bool RegisterNetworkLibrary(JNIEnv* env) { |
107 return RegisterNativesImpl(env); | 119 return RegisterNativesImpl(env); |
108 } | 120 } |
109 | 121 |
110 } // namespace android | 122 } // namespace android |
111 } // namespace net | 123 } // namespace net |
OLD | NEW |