This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
tango-tfe/platform/include/internal/key_keeper.h

34 lines
842 B
C
Raw Normal View History

#pragma once
#include <event2/event.h>
#include <openssl/ssl.h>
#include <tfe_future.h>
struct keyring
{
EVP_PKEY *key;
X509 *cert;
STACK_OF(X509) * chain;
};
struct key_keeper_stat
{
long long ask_times;
long long new_issue;
long long cached_num;
};
2018-09-04 18:13:05 +08:00
struct key_keeper;
2018-09-04 15:47:41 +08:00
struct key_keeper * key_keeper_init(const char * profile, const char* section, void* logger);
2018-09-04 15:47:41 +08:00
2018-09-04 18:13:05 +08:00
void key_keeper_destroy(struct key_keeper *keeper);
2018-09-04 15:47:41 +08:00
2018-09-04 18:13:05 +08:00
struct keyring* key_keeper_release_keyring(future_result_t* result);
2018-09-04 15:47:41 +08:00
void key_keeper_free_keyring(struct keyring* cert);
2018-09-04 15:47:41 +08:00
2018-09-04 18:13:05 +08:00
void key_keeper_async_ask(struct future * f, struct key_keeper * keeper, const char* sni, int keyring_id,
X509 * origin_cert, int is_cert_valid, struct event_base * evbase, struct evdns_base* dnsbase);
void key_keeper_statistic(struct key_keeper *keeper, struct key_keeper_stat* result);
2018-09-04 15:47:41 +08:00