| // Copyright 2022 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 QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_ | |
| #define QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_ | |
| #include "absl/status/status.h" | |
| namespace quiche { | |
| // In debug builds only, log OpenSSL error stack. Then clear OpenSSL error | |
| // stack. | |
| void DLogOpenSslErrors(); | |
| // Clears OpenSSL error stack. | |
| void ClearOpenSslErrors(); | |
| // Include OpenSSL error stack in Status msg so that callers could choose to | |
| // only log it in debug builds if required. | |
| absl::Status SslErrorAsStatus(absl::string_view msg); | |
| } // namespace quiche | |
| #endif // QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_ |