| // Copyright (c) 2012 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 CHROME_BROWSER_UI_CERTIFICATE_DIALOGS_H_ |
| #define CHROME_BROWSER_UI_CERTIFICATE_DIALOGS_H_ |
| |
| #include "crypto/crypto_buildflags.h" |
| #include "net/cert/x509_certificate.h" |
| #include "third_party/boringssl/src/include/openssl/base.h" |
| #include "third_party/boringssl/src/include/openssl/pool.h" |
| #include "ui/shell_dialogs/select_file_dialog.h" |
| |
| #if BUILDFLAG(USE_NSS_CERTS) |
| #include "net/cert/scoped_nss_types.h" |
| #endif |
| |
| namespace content { |
| class WebContents; |
| } |
| |
| void ShowCertSelectFileDialog(ui::SelectFileDialog* select_file_dialog, |
| ui::SelectFileDialog::Type type, |
| const base::FilePath& suggested_path, |
| gfx::NativeWindow parent, |
| void* params); |
| |
| // Show a dialog to save the first certificate or the whole chain. |
| void ShowCertExportDialog(content::WebContents* web_contents, |
| gfx::NativeWindow parent, |
| std::vector<bssl::UniquePtr<CRYPTO_BUFFER>> certs, |
| const std::string& cert_title); |
| |
| #if BUILDFLAG(USE_NSS_CERTS) |
| // Show a dialog to save the first certificate or the whole chain encompassed by |
| // the iterators. |
| void ShowCertExportDialog(content::WebContents* web_contents, |
| gfx::NativeWindow parent, |
| net::ScopedCERTCertificateList::iterator certs_begin, |
| net::ScopedCERTCertificateList::iterator certs_end); |
| #endif |
| |
| #endif // CHROME_BROWSER_UI_CERTIFICATE_DIALOGS_H_ |