• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #include "chrome/browser/certificate_viewer.h"
6 
7 #include "base/android/jni_string.h"
8 #include "base/logging.h"
9 #include "grit/generated_resources.h"
10 #include "jni/CertificateViewer_jni.h"
11 #include "net/cert/x509_certificate.h"
12 #include "ui/base/l10n/l10n_util.h"
13 
14 using base::android::ConvertUTF8ToJavaString;
15 using base::android::ScopedJavaLocalRef;
16 
ShowCertificateViewer(content::WebContents * web_contents,gfx::NativeWindow parent,net::X509Certificate * cert)17 void ShowCertificateViewer(content::WebContents* web_contents,
18                            gfx::NativeWindow parent,
19                            net::X509Certificate* cert) {
20   // For Android, showing the certificate is always handled in Java.
21   NOTREACHED();
22 }
23 
GetCertIssuedToText(JNIEnv * env,jclass)24 static jstring GetCertIssuedToText(JNIEnv* env, jclass) {
25   return ConvertUTF8ToJavaString(
26       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_SUBJECT_GROUP)).Release();
27 }
28 
GetCertInfoCommonNameText(JNIEnv * env,jclass)29 static jstring GetCertInfoCommonNameText(JNIEnv* env, jclass) {
30   return ConvertUTF8ToJavaString(
31       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_COMMON_NAME_LABEL)).Release();
32 }
33 
GetCertInfoOrganizationText(JNIEnv * env,jclass)34 static jstring GetCertInfoOrganizationText(JNIEnv* env, jclass) {
35   return ConvertUTF8ToJavaString(
36       env, l10n_util::GetStringUTF8(
37           IDS_CERT_INFO_ORGANIZATION_LABEL)).Release();
38 }
39 
GetCertInfoSerialNumberText(JNIEnv * env,jclass)40 static jstring GetCertInfoSerialNumberText(JNIEnv* env, jclass) {
41   return ConvertUTF8ToJavaString(
42       env, l10n_util::GetStringUTF8(
43           IDS_CERT_INFO_SERIAL_NUMBER_LABEL)).Release();
44 }
45 
GetCertInfoOrganizationUnitText(JNIEnv * env,jclass)46 static jstring GetCertInfoOrganizationUnitText(JNIEnv* env, jclass) {
47   return ConvertUTF8ToJavaString(
48       env, l10n_util::GetStringUTF8(
49           IDS_CERT_INFO_ORGANIZATIONAL_UNIT_LABEL)).Release();
50 }
51 
GetCertIssuedByText(JNIEnv * env,jclass)52 static jstring GetCertIssuedByText(JNIEnv* env, jclass) {
53   return ConvertUTF8ToJavaString(
54       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_ISSUER_GROUP)).Release();
55 }
56 
GetCertValidityText(JNIEnv * env,jclass)57 static jstring GetCertValidityText(JNIEnv* env, jclass) {
58   return ConvertUTF8ToJavaString(
59       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_VALIDITY_GROUP)).Release();
60 }
61 
GetCertIssuedOnText(JNIEnv * env,jclass)62 static jstring GetCertIssuedOnText(JNIEnv* env, jclass) {
63   return ConvertUTF8ToJavaString(
64       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_ISSUED_ON_LABEL)).Release();
65 }
66 
GetCertExpiresOnText(JNIEnv * env,jclass)67 static jstring GetCertExpiresOnText(JNIEnv* env, jclass) {
68   return ConvertUTF8ToJavaString(
69       env, l10n_util::GetStringUTF8(IDS_CERT_INFO_EXPIRES_ON_LABEL)).Release();
70 }
71 
GetCertFingerprintsText(JNIEnv * env,jclass)72 static jstring GetCertFingerprintsText(JNIEnv* env, jclass) {
73   return ConvertUTF8ToJavaString(
74       env, l10n_util::GetStringUTF8(
75           IDS_CERT_INFO_FINGERPRINTS_GROUP)).Release();
76 }
77 
GetCertSHA256FingerprintText(JNIEnv * env,jclass)78 static jstring GetCertSHA256FingerprintText(JNIEnv* env, jclass) {
79   return ConvertUTF8ToJavaString(
80       env, l10n_util::GetStringUTF8(
81           IDS_CERT_INFO_SHA256_FINGERPRINT_LABEL)).Release();
82 }
83 
GetCertSHA1FingerprintText(JNIEnv * env,jclass)84 static jstring GetCertSHA1FingerprintText(JNIEnv* env, jclass) {
85   return ConvertUTF8ToJavaString(
86       env, l10n_util::GetStringUTF8(
87           IDS_CERT_INFO_SHA1_FINGERPRINT_LABEL)).Release();
88 }
89 
RegisterCertificateViewer(JNIEnv * env)90 bool RegisterCertificateViewer(JNIEnv* env) {
91   return RegisterNativesImpl(env);
92 }
93