10#ifndef PROTO_FUZZER_CURL_GLOBAL_LIFECYCLE_H_
11#define PROTO_FUZZER_CURL_GLOBAL_LIFECYCLE_H_
13namespace proto_fuzzer {
35 friend
void FinalizeRegisteredCurlGlobalLifecyclesForExit() noexcept;
39 unsigned int initialization_count_ = 0;
40 bool initialized_ = false;
43void FinalizeRegisteredCurlGlobalLifecyclesForExit() noexcept;
Own the proto runtime's one curl global initialization.
void(*)() CleanupFunction
Process-exit cleanup callback, injectable for lifecycle regression tests.
bool initialized() const noexcept
CurlGlobalLifecycle(CleanupFunction cleanup=nullptr) noexcept
Initialize curl and its allocation hooks for this process.
void FinalizeForProcessExit() noexcept
Release this object's references after the fuzz engine has stopped.