Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(295)

Side by Side Diff: net/android/network_library.cc

Issue 144153002: Follow-up changes to Android certificate verification logic. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase and fix X509UtilTest. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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"
11 #include "base/logging.h" 11 #include "base/logging.h"
12 #include "jni/AndroidNetworkLibrary_jni.h" 12 #include "jni/AndroidNetworkLibrary_jni.h"
13 13
14 using base::android::AttachCurrentThread; 14 using base::android::AttachCurrentThread;
15 using base::android::ClearException;
16 using base::android::ConvertJavaStringToUTF8; 15 using base::android::ConvertJavaStringToUTF8;
17 using base::android::ConvertUTF8ToJavaString; 16 using base::android::ConvertUTF8ToJavaString;
18 using base::android::GetApplicationContext; 17 using base::android::GetApplicationContext;
19 using base::android::ScopedJavaLocalRef; 18 using base::android::ScopedJavaLocalRef;
20 using base::android::ToJavaArrayOfByteArray; 19 using base::android::ToJavaArrayOfByteArray;
21 using base::android::ToJavaByteArray; 20 using base::android::ToJavaByteArray;
22 21
23 namespace net { 22 namespace net {
24 namespace android { 23 namespace android {
25 24
(...skipping 13 matching lines...) Expand all
39 ConvertUTF8ToJavaString(env, auth_type); 38 ConvertUTF8ToJavaString(env, auth_type);
40 DCHECK(!auth_string.is_null()); 39 DCHECK(!auth_string.is_null());
41 40
42 ScopedJavaLocalRef<jstring> host_string = 41 ScopedJavaLocalRef<jstring> host_string =
43 ConvertUTF8ToJavaString(env, host); 42 ConvertUTF8ToJavaString(env, host);
44 DCHECK(!host_string.is_null()); 43 DCHECK(!host_string.is_null());
45 44
46 ScopedJavaLocalRef<jobject> result = 45 ScopedJavaLocalRef<jobject> result =
47 Java_AndroidNetworkLibrary_verifyServerCertificates( 46 Java_AndroidNetworkLibrary_verifyServerCertificates(
48 env, chain_byte_array.obj(), auth_string.obj(), host_string.obj()); 47 env, chain_byte_array.obj(), auth_string.obj(), host_string.obj());
49 if (ClearException(env)) {
50 *status = android::VERIFY_FAILED;
51 return;
52 }
53 48
54 ExtractCertVerifyResult(result.obj(), 49 ExtractCertVerifyResult(result.obj(),
55 status, is_issued_by_known_root, verified_chain); 50 status, is_issued_by_known_root, verified_chain);
56 } 51 }
57 52
58 void AddTestRootCertificate(const uint8* cert, size_t len) { 53 void AddTestRootCertificate(const uint8* cert, size_t len) {
59 JNIEnv* env = AttachCurrentThread(); 54 JNIEnv* env = AttachCurrentThread();
60 ScopedJavaLocalRef<jbyteArray> cert_array = ToJavaByteArray(env, cert, len); 55 ScopedJavaLocalRef<jbyteArray> cert_array = ToJavaByteArray(env, cert, len);
61 DCHECK(!cert_array.is_null()); 56 DCHECK(!cert_array.is_null());
62 Java_AndroidNetworkLibrary_addTestRootCertificate(env, cert_array.obj()); 57 Java_AndroidNetworkLibrary_addTestRootCertificate(env, cert_array.obj());
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 *result = ConvertJavaStringToUTF8(ret); 121 *result = ConvertJavaStringToUTF8(ret);
127 return true; 122 return true;
128 } 123 }
129 124
130 bool RegisterNetworkLibrary(JNIEnv* env) { 125 bool RegisterNetworkLibrary(JNIEnv* env) {
131 return RegisterNativesImpl(env); 126 return RegisterNativesImpl(env);
132 } 127 }
133 128
134 } // namespace android 129 } // namespace android
135 } // namespace net 130 } // namespace net
OLDNEW
« no previous file with comments | « net/android/javatests/src/org/chromium/net/X509UtilTest.java ('k') | net/cert/cert_verify_proc_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698