OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 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/android/cert_verify_result_android.h" |
| 6 |
| 7 #include "base/android/jni_android.h" |
| 8 #include "base/android/jni_array.h" |
| 9 #include "jni/AndroidCertVerifyResult_jni.h" |
| 10 |
| 11 using base::android::AttachCurrentThread; |
| 12 using base::android::JavaArrayOfByteArrayToStringVector; |
| 13 |
| 14 namespace net { |
| 15 namespace android { |
| 16 |
| 17 void ExtractCertVerifyResult(jobject result, |
| 18 CertVerifyStatusAndroid* status, |
| 19 bool* is_issued_by_known_root, |
| 20 std::vector<std::string>* verified_chain) { |
| 21 JNIEnv* env = AttachCurrentThread(); |
| 22 |
| 23 *status = static_cast<CertVerifyStatusAndroid>( |
| 24 Java_AndroidCertVerifyResult_getStatus(env, result)); |
| 25 |
| 26 *is_issued_by_known_root = |
| 27 Java_AndroidCertVerifyResult_isIssuedByKnownRoot(env, result); |
| 28 |
| 29 ScopedJavaLocalRef<jobjectArray> chain_byte_array = |
| 30 Java_AndroidCertVerifyResult_getCertificateChainEncoded(env, result); |
| 31 JavaArrayOfByteArrayToStringVector( |
| 32 env, chain_byte_array.obj(), verified_chain); |
| 33 } |
| 34 |
| 35 bool RegisterCertVerifyResult(JNIEnv* env) { |
| 36 return RegisterNativesImpl(env); |
| 37 } |
| 38 |
| 39 } // namespace android |
| 40 } // namespace net |
OLD | NEW |