93 lines
2.0 KiB
C
93 lines
2.0 KiB
C
/*************************************************************************
|
|
> File Name: cert_conf.h
|
|
> Author:
|
|
> Mail:
|
|
> Created Time: Fri 01 Jun 2018 12:06:26 AM PDT
|
|
************************************************************************/
|
|
|
|
#ifndef _CERT_INIT_H
|
|
#define _CERT_INIT_H
|
|
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
#include <stdint.h>
|
|
#include <event.h>
|
|
#include <openssl/x509.h>
|
|
#include <openssl/evp.h>
|
|
|
|
#include <MESA/Maat_rule.h>
|
|
#include <MESA/MESA_htable.h>
|
|
|
|
#define CT_PATH_MAX 256
|
|
#define CT_ARRARY_LEN (CT_PATH_MAX/2)
|
|
#define CT_STRING_MAX 1024
|
|
|
|
struct tfe_http_request{
|
|
#define DATALEN 128
|
|
int thread_id;
|
|
int is_valid;
|
|
char *odata;
|
|
X509 *origin;
|
|
int keyring_id;
|
|
char *sni;
|
|
char rkey[DATALEN];
|
|
struct timespec create_time;
|
|
struct evhttp_request *evh_req;
|
|
};
|
|
|
|
struct pxy_obj_keyring{
|
|
int keyring_id;
|
|
uint64_t expire_time;
|
|
EVP_PKEY *key;
|
|
X509 *issuer;
|
|
char keyring_type[CT_ARRARY_LEN];
|
|
char public_algo[CT_STRING_MAX];
|
|
char v3_ctl[CT_STRING_MAX];
|
|
int is_send;
|
|
int is_valid;
|
|
time_t op_time;
|
|
atomic64_t ref_cnt;
|
|
STACK_OF(X509) *stack_ca;
|
|
};
|
|
|
|
struct _initer_addr_t{
|
|
uint16_t e_port; /*libevent prot*/
|
|
uint16_t maat_port; /*maat redis port*/
|
|
char maat_ip[16]; /*maat redis ip */
|
|
int dbindex; /*maat redis dbindex*/
|
|
|
|
uint16_t store_port; /*store redis port */
|
|
char store_ip[16]; /*store redis ip*/
|
|
|
|
uint16_t statsd_port;
|
|
char statsd_server[16];
|
|
};
|
|
|
|
struct ntc_maat_t{
|
|
unsigned int maat_json_switch;
|
|
unsigned int effective_interval_s;
|
|
char info_path[128];
|
|
char pxy_path[128];
|
|
char inc_cfg_dir[128];
|
|
char full_cfg_dir[128];
|
|
};
|
|
|
|
struct config_bucket_t{
|
|
Maat_feather_t feather;
|
|
int table_id;
|
|
int mode;
|
|
unsigned int local_debug;
|
|
unsigned int thread_nu;
|
|
unsigned int expire_after;
|
|
char ca_path[128];
|
|
char uninsec_path[128];
|
|
struct ntc_maat_t maat_t;
|
|
struct _initer_addr_t addr_t;
|
|
};
|
|
|
|
extern struct config_bucket_t *cfg_instanec();
|
|
|
|
void cert_init_config(const char *config);
|
|
|
|
#endif
|