1 // Copyright 2023 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef BSSL_FILLINS_OPENSSL_UTIL_H 6 #define BSSL_FILLINS_OPENSSL_UTIL_H 7 8 #include <openssl/base.h> 9 10 #include <string> 11 12 namespace bssl { 13 14 namespace fillins { 15 16 // Place an instance of this class on the call stack to automatically clear 17 // the OpenSSL error stack on function exit. 18 class OPENSSL_EXPORT OpenSSLErrStackTracer { 19 public: 20 OpenSSLErrStackTracer(); 21 ~OpenSSLErrStackTracer(); 22 }; 23 24 } // namespace fillins 25 26 } // namespace bssl 27 28 #endif // BSSL_FILLINS_OPENSSL_UTIL_H 29