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

Unified Diff: chromeos/network/certificate_helper.h

Issue 2871993005: Copy some x509_certificate_model_nss functions to src/chromeos (Closed)
Patch Set: Feedback/cleanup Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chromeos/network/certificate_helper.h
diff --git a/chromeos/network/certificate_helper.h b/chromeos/network/certificate_helper.h
new file mode 100644
index 0000000000000000000000000000000000000000..b6fd1b71cc6d6afd35dfd9a15300c28f66622fc1
--- /dev/null
+++ b/chromeos/network/certificate_helper.h
@@ -0,0 +1,46 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROMEOS_NETWORK_CERTIFICATE_HELPER_H_
+#define CHROMEOS_NETWORK_CERTIFICATE_HELPER_H_
+
+#include <cert.h>
+#include <string>
+
+#include "net/cert/cert_type.h"
+#include "net/cert/x509_certificate.h"
+
+namespace chromeos {
+namespace certificate {
+
+// Selected functions from chrome/common/net/x509_certificate_model.cc
+
+// Decodes the certificate type from |cert|.
+net::CertType GetCertType(net::X509Certificate::OSCertHandle cert);
+
+// Extracts the token name from |cert|->slot if it exists or returns an empty
+// string.
+std::string GetCertTokenName(net::X509Certificate::OSCertHandle cert);
+
+// Returns the common name for |cert_handle|->issuer or |alternative_text| if
+// the common name is missing or empty.
+std::string GetIssuerCommonName(net::X509Certificate::OSCertHandle cert_handle,
+ const std::string& alternative_text);
+
+// Returns the common name for |cert_handle|->subject converted to unicode,
+// or |cert_handle|->nickname if the subject name is unavailable or empty.
+// NOTE: Unlike x509_certificate_model::GetCertNameOrNickname in src/chrome,
+// the raw unformated name or nickname will not be included in the returned
+// value (see GetCertAsciiNameOrNickname instead).
+std::string GetCertNameOrNickname(
+ net::X509Certificate::OSCertHandle cert_handle);
+
+// Returns the unformated ASCII common name for |cert_handle|->subject.
+std::string GetCertAsciiNameOrNickname(
+ net::X509Certificate::OSCertHandle cert_handle);
+
+} // namespace certificate
+} // namespace chromeos
+
+#endif // CHROMEOS_NETWORK_CERTIFICATE_HELPER_H_

Powered by Google App Engine
This is Rietveld 408576698