1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "net/cert/x509_util_android.h" 6 7 #include "base/android/build_info.h" 8 #include "base/android/jni_android.h" 9 #include "base/metrics/histogram.h" 10 #include "jni/X509Util_jni.h" 11 #include "net/cert/cert_database.h" 12 13 namespace net { 14 15 void NotifyKeyChainChanged(JNIEnv* env, jclass clazz) { 16 CertDatabase::GetInstance()->OnAndroidKeyChainChanged(); 17 } 18 19 void RecordCertVerifyCapabilitiesHistogram(JNIEnv* env, 20 jclass clazz, 21 jboolean found_system_trust_roots) { 22 // Only record the histogram for 4.2 and up. Before 4.2, the platform doesn't 23 // return the certificate chain anyway. 24 if (base::android::BuildInfo::GetInstance()->sdk_int() >= 17) { 25 UMA_HISTOGRAM_BOOLEAN("Net.FoundSystemTrustRootsAndroid", 26 found_system_trust_roots); 27 } 28 } 29 30 jobject GetApplicationContext(JNIEnv* env, jclass clazz) { 31 return base::android::GetApplicationContext(); 32 } 33 34 bool RegisterX509Util(JNIEnv* env) { 35 return RegisterNativesImpl(env); 36 } 37 38 } // net namespace 39