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 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 DCHECK(!host_string.is_null()); | 43 DCHECK(!host_string.is_null()); |
44 | 44 |
45 ScopedJavaLocalRef<jobject> result = | 45 ScopedJavaLocalRef<jobject> result = |
46 Java_AndroidNetworkLibrary_verifyServerCertificates( | 46 Java_AndroidNetworkLibrary_verifyServerCertificates( |
47 env, chain_byte_array.obj(), auth_string.obj(), host_string.obj()); | 47 env, chain_byte_array.obj(), auth_string.obj(), host_string.obj()); |
48 | 48 |
49 ExtractCertVerifyResult(result.obj(), | 49 ExtractCertVerifyResult(result.obj(), |
50 status, is_issued_by_known_root, verified_chain); | 50 status, is_issued_by_known_root, verified_chain); |
51 } | 51 } |
52 | 52 |
53 void AddTestRootCertificate(const uint8* cert, size_t len) { | 53 void AddTestRootCertificate(const uint8_t* cert, size_t len) { |
54 JNIEnv* env = AttachCurrentThread(); | 54 JNIEnv* env = AttachCurrentThread(); |
55 ScopedJavaLocalRef<jbyteArray> cert_array = ToJavaByteArray(env, cert, len); | 55 ScopedJavaLocalRef<jbyteArray> cert_array = ToJavaByteArray(env, cert, len); |
56 DCHECK(!cert_array.is_null()); | 56 DCHECK(!cert_array.is_null()); |
57 Java_AndroidNetworkLibrary_addTestRootCertificate(env, cert_array.obj()); | 57 Java_AndroidNetworkLibrary_addTestRootCertificate(env, cert_array.obj()); |
58 } | 58 } |
59 | 59 |
60 void ClearTestRootCertificates() { | 60 void ClearTestRootCertificates() { |
61 JNIEnv* env = AttachCurrentThread(); | 61 JNIEnv* env = AttachCurrentThread(); |
62 Java_AndroidNetworkLibrary_clearTestRootCertificates(env); | 62 Java_AndroidNetworkLibrary_clearTestRootCertificates(env); |
63 } | 63 } |
64 | 64 |
65 bool StoreKeyPair(const uint8* public_key, | 65 bool StoreKeyPair(const uint8_t* public_key, |
66 size_t public_len, | 66 size_t public_len, |
67 const uint8* private_key, | 67 const uint8_t* private_key, |
68 size_t private_len) { | 68 size_t private_len) { |
69 JNIEnv* env = AttachCurrentThread(); | 69 JNIEnv* env = AttachCurrentThread(); |
70 ScopedJavaLocalRef<jbyteArray> public_array = | 70 ScopedJavaLocalRef<jbyteArray> public_array = |
71 ToJavaByteArray(env, public_key, public_len); | 71 ToJavaByteArray(env, public_key, public_len); |
72 ScopedJavaLocalRef<jbyteArray> private_array = | 72 ScopedJavaLocalRef<jbyteArray> private_array = |
73 ToJavaByteArray(env, private_key, private_len); | 73 ToJavaByteArray(env, private_key, private_len); |
74 jboolean ret = Java_AndroidNetworkLibrary_storeKeyPair(env, | 74 jboolean ret = Java_AndroidNetworkLibrary_storeKeyPair(env, |
75 GetApplicationContext(), public_array.obj(), private_array.obj()); | 75 GetApplicationContext(), public_array.obj(), private_array.obj()); |
76 LOG_IF(WARNING, !ret) << | 76 LOG_IF(WARNING, !ret) << |
77 "Call to Java_AndroidNetworkLibrary_storeKeyPair failed"; | 77 "Call to Java_AndroidNetworkLibrary_storeKeyPair failed"; |
78 return ret; | 78 return ret; |
79 } | 79 } |
80 | 80 |
81 void StoreCertificate(net::CertificateMimeType cert_type, | 81 void StoreCertificate(net::CertificateMimeType cert_type, |
82 const void* data, | 82 const void* data, |
83 size_t data_len) { | 83 size_t data_len) { |
84 JNIEnv* env = AttachCurrentThread(); | 84 JNIEnv* env = AttachCurrentThread(); |
85 ScopedJavaLocalRef<jbyteArray> data_array = | 85 ScopedJavaLocalRef<jbyteArray> data_array = |
86 ToJavaByteArray(env, reinterpret_cast<const uint8*>(data), data_len); | 86 ToJavaByteArray(env, reinterpret_cast<const uint8_t*>(data), data_len); |
87 jboolean ret = Java_AndroidNetworkLibrary_storeCertificate(env, | 87 jboolean ret = Java_AndroidNetworkLibrary_storeCertificate(env, |
88 GetApplicationContext(), cert_type, data_array.obj()); | 88 GetApplicationContext(), cert_type, data_array.obj()); |
89 LOG_IF(WARNING, !ret) << | 89 LOG_IF(WARNING, !ret) << |
90 "Call to Java_AndroidNetworkLibrary_storeCertificate" | 90 "Call to Java_AndroidNetworkLibrary_storeCertificate" |
91 " failed"; | 91 " failed"; |
92 // Intentionally do not return 'ret', there is little the caller can | 92 // Intentionally do not return 'ret', there is little the caller can |
93 // do in case of failure (the CertInstaller itself will deal with | 93 // do in case of failure (the CertInstaller itself will deal with |
94 // incorrect data and display the appropriate toast). | 94 // incorrect data and display the appropriate toast). |
95 } | 95 } |
96 | 96 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 base::android::AttachCurrentThread(), | 128 base::android::AttachCurrentThread(), |
129 base::android::GetApplicationContext())); | 129 base::android::GetApplicationContext())); |
130 } | 130 } |
131 | 131 |
132 bool RegisterNetworkLibrary(JNIEnv* env) { | 132 bool RegisterNetworkLibrary(JNIEnv* env) { |
133 return RegisterNativesImpl(env); | 133 return RegisterNativesImpl(env); |
134 } | 134 } |
135 | 135 |
136 } // namespace android | 136 } // namespace android |
137 } // namespace net | 137 } // namespace net |
OLD | NEW |