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