8#ifndef BOTAN_OS_UTILS_H_
9#define BOTAN_OS_UTILS_H_
11#include <botan/types.h>
virtual void reenable_echo()=0
virtual ~Echo_Suppression()=default
#define BOTAN_UNSTABLE_API
bool running_in_privileged_state()
size_t get_memory_locking_limit()
uint64_t BOTAN_TEST_API get_high_resolution_clock()
size_t BOTAN_TEST_API get_cpu_available()
std::unique_ptr< Echo_Suppression > BOTAN_UNSTABLE_API suppress_echo_on_terminal()
size_t read_env_variable_sz(std::string_view var_name, size_t def_value=0)
void page_allow_access(void *page)
bool read_env_variable(std::string &value_out, std::string_view var_name)
void page_prohibit_access(void *page)
int BOTAN_TEST_API run_cpu_instruction_probe(const std::function< int()> &probe_fn)
std::vector< void * > allocate_locked_pages(size_t count)
size_t system_page_size()
uint64_t BOTAN_TEST_API get_system_timestamp_ns()
unsigned long get_auxval(unsigned long id)
void free_locked_pages(const std::vector< void * > &pages)
void page_named(void *page, size_t size)
uint32_t BOTAN_TEST_API get_process_id()
uint64_t BOTAN_TEST_API get_cpu_cycle_counter()