#85 修复ssl、http业务层中的编译警告。
This commit is contained in:
36
cache/src/tango_cache_pending.cpp
vendored
36
cache/src/tango_cache_pending.cpp
vendored
@@ -31,9 +31,6 @@ time_t get_time_value(const char* field_value, const char* field_type)
|
||||
void get_request_freshness(const char *value, struct request_freshness* restrict)
|
||||
{
|
||||
const char* field_value = NULL;
|
||||
const char* cache_control_time[] = { "min-fresh", "max-age" };
|
||||
int i = 0;
|
||||
time_t relative_time;
|
||||
field_value = strstr(value, "min-fresh");
|
||||
if (field_value != NULL)
|
||||
{
|
||||
@@ -50,7 +47,6 @@ void get_request_freshness(const char *value, struct request_freshness* restrict
|
||||
|
||||
enum cache_pending_action request_cache_control(const char* value, struct request_freshness* restrict)
|
||||
{
|
||||
int i = 0;
|
||||
if (strstr(value, "no-cache") != NULL)
|
||||
{
|
||||
return REVALIDATE;
|
||||
@@ -66,7 +62,6 @@ enum cache_pending_action request_cache_control(const char* value, struct reques
|
||||
|
||||
bool cache_verify(const struct tfe_http_half *request)
|
||||
{
|
||||
int i = 0;
|
||||
if( !tfe_http_std_field_read(request,TFE_HTTP_IF_MATCH) ||
|
||||
!tfe_http_std_field_read(request,TFE_HTTP_IF_NONE_MATCH) ||
|
||||
!tfe_http_std_field_read(request,TFE_HTTP_IF_MODIFIED_SINCE) ||
|
||||
@@ -81,7 +76,7 @@ bool cache_verify(const struct tfe_http_half *request)
|
||||
|
||||
const char* get_head_value(const struct tfe_http_field *http_fields, size_t n_fields, enum tfe_http_std_field head_key)
|
||||
{
|
||||
int i = 0;
|
||||
size_t i = 0;
|
||||
for (i = 0; i < n_fields; i++)
|
||||
{
|
||||
if (http_fields[i].http_field == head_key)
|
||||
@@ -107,8 +102,6 @@ enum cache_pending_action get_pragma_action(const char * value)
|
||||
enum cache_pending_action tfe_cache_get_pending(const struct tfe_http_half *request, struct request_freshness* restrict)
|
||||
{
|
||||
enum cache_pending_action res = UNDEFINED;
|
||||
int i = 0;
|
||||
int index = 0;
|
||||
const char *value = NULL;
|
||||
memset(restrict,0,sizeof(struct request_freshness));
|
||||
if(request->req_spec.method!=TFE_HTTP_METHOD_GET)
|
||||
@@ -170,23 +163,6 @@ bool is_standard_gmt_format(const char* value)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
time_t get_relative_time(const char* value)
|
||||
{
|
||||
const char* temp_str = NULL;
|
||||
char * str_age = NULL;
|
||||
time_t time = 0;
|
||||
const char * cache_ctl_time[] = { "s-maxage","max-age" };//s-maxage优先级大于max-age优先级
|
||||
int i = 0;
|
||||
for (; i < 2; i++)
|
||||
{
|
||||
temp_str = strstr(value, cache_ctl_time[i]);
|
||||
|
||||
}
|
||||
return time;
|
||||
}
|
||||
|
||||
|
||||
time_t get_response_s_maxage(const char* cache_ctl)
|
||||
{
|
||||
const char* s_maxage = NULL;
|
||||
@@ -195,6 +171,10 @@ time_t get_response_s_maxage(const char* cache_ctl)
|
||||
{
|
||||
return get_time_value(s_maxage, "s-maxage");
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -206,6 +186,10 @@ time_t get_response_maxage(const char* cache_ctl)
|
||||
{
|
||||
return get_time_value(max_age, "max-age");
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -279,8 +263,6 @@ enum cache_pending_action response_cache_control(const char* value)
|
||||
enum cache_pending_action tfe_cache_put_pending(const struct tfe_http_half *response, struct response_freshness* freshness)
|
||||
{
|
||||
enum cache_pending_action res = UNDEFINED;
|
||||
int i = 0;
|
||||
int index = 0;
|
||||
const char *value = NULL;
|
||||
memset(freshness,0,sizeof(struct response_freshness));
|
||||
if(response->resp_spec.resp_code!=TFE_HTTP_STATUS_OK
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
|
||||
#define likely(expr) __builtin_expect((expr), 1)
|
||||
#define unlikely(expr) __builtin_expect((expr), 0)
|
||||
#define UNUSED __attribute__((unused))
|
||||
|
||||
extern void * g_default_logger;
|
||||
#define TFE_LOG_ERROR(handler, fmt, ...) \
|
||||
|
||||
@@ -521,7 +521,7 @@ struct key_keeper* key_keeper_init(const char * profile, const char* section, vo
|
||||
keeper->htable = create_hash_table(keeper->hash_slot_size, keeper->hash_expire_seconds);
|
||||
if(0==strcmp(keeper->untrusted_ca_path, keeper->trusted_ca_path))
|
||||
{
|
||||
TFE_LOG_ERROR(logger, "Warnning: Trusted and Untrusted Root CA share the same path % .", keeper->trusted_ca_path);
|
||||
TFE_LOG_ERROR(logger, "Warnning: Trusted and Untrusted Root CA share the same path %s .", keeper->trusted_ca_path);
|
||||
}
|
||||
if(keeper->work_mode==KK_MODE_DEBUG)
|
||||
{
|
||||
|
||||
@@ -1126,7 +1126,7 @@ static int ossl_session_ticket_key_callback(SSL *ssl_conn,
|
||||
if(0!=memcmp(name, key[0].name, 16))
|
||||
{
|
||||
TFE_LOG_INFO(mgr->logger, "ssl session ticket decrypt, key: \"%*s\" not found"
|
||||
,tfe_hexdump(buf, name ,16)-buf, buf);
|
||||
,(int)(tfe_hexdump(buf, name ,16)-buf), buf);
|
||||
ATOMIC_INC(&(mgr->stat_val[SSL_DOWN_TICKET_NOTFOUND]));
|
||||
return 0;
|
||||
}
|
||||
@@ -1430,7 +1430,6 @@ static void ssl_client_connected_eventcb(struct bufferevent * bev, short events,
|
||||
|
||||
struct ssl_stream * s_stream = ctx->downstream;
|
||||
struct ssl_mgr* mgr=s_stream->mgr;
|
||||
SSL_SESSION * ssl_sess = NULL;
|
||||
const char* sni=ctx->origin_ssl->client_hello->sni?ctx->origin_ssl->client_hello->sni:"null";
|
||||
char error_str[TFE_STRING_MAX]={0};
|
||||
if (events & BEV_EVENT_ERROR)
|
||||
@@ -1511,7 +1510,6 @@ void ssl_async_downstream_create(struct future * f, struct ssl_mgr * mgr, struct
|
||||
{
|
||||
|
||||
assert(upstream->dir == CONN_DIR_UPSTREAM);
|
||||
int * previous_verfiy_result=NULL;
|
||||
const char* sni=NULL;
|
||||
struct ssl_connect_client_ctx * ctx = ALLOC(struct ssl_connect_client_ctx, 1);
|
||||
ctx->keyring_id = keyring_id;
|
||||
@@ -1581,7 +1579,6 @@ static void pxy_ssl_shutdown_cb(evutil_socket_t fd, short what, void * arg)
|
||||
struct ssl_mgr* mgr=ctx->s_stream->mgr;
|
||||
short want = 0;
|
||||
int rv = 0, sslerr = 0;
|
||||
char tmp[1024];
|
||||
if (ctx->ev)
|
||||
{
|
||||
event_free(ctx->ev);
|
||||
|
||||
@@ -38,7 +38,6 @@ struct ssl_trusted_cert_storage
|
||||
BIO *bio=NULL;
|
||||
X509* x=NULL;
|
||||
X509_CRL* x_crl=NULL;
|
||||
int error;
|
||||
|
||||
bio=BIO_new_file(filename, "r");
|
||||
if(bio==NULL)
|
||||
@@ -79,7 +78,7 @@ struct ssl_trusted_cert_storage
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int filter_pem_fn(const struct dirent * ent)
|
||||
UNUSED static int filter_pem_fn(const struct dirent * ent)
|
||||
{
|
||||
const char* fn_suffix=".pem";
|
||||
if(strlen(ent->d_name)< strlen(fn_suffix))
|
||||
@@ -152,7 +151,7 @@ static X509_STORE* _X509_store_create(const char* pem_bundle, const char* pem_di
|
||||
|
||||
static MESA_htable_handle _create_mesa_htable(void)
|
||||
{
|
||||
int ret=0;
|
||||
UNUSED int ret=0;
|
||||
MESA_htable_handle htable = MESA_htable_born();
|
||||
ret = __wrapper_MESA_htable_set_opt_int(htable, MHO_SCREEN_PRINT_CTRL, 0);
|
||||
ret = __wrapper_MESA_htable_set_opt_int(htable, MHO_THREAD_SAFE, 0);
|
||||
@@ -172,7 +171,6 @@ static MESA_htable_handle _create_mesa_htable(void)
|
||||
struct ssl_trusted_cert_storage* ssl_trusted_cert_storage_create(const char* pem_bundle,
|
||||
const char* pem_dir, struct cert_store_param* param)
|
||||
{
|
||||
int ret=0;
|
||||
struct ssl_trusted_cert_storage* storage=ALLOC(struct ssl_trusted_cert_storage, 1);
|
||||
storage->param=*param;
|
||||
storage->effective_store=_X509_store_create(pem_bundle, pem_dir, &(storage->param));
|
||||
|
||||
@@ -275,7 +275,7 @@ void trusted_CA_update_crl_cb(int table_id,const char* table_line,void* u_para)
|
||||
ret=tfe_proxy_ssl_add_crl(crl_file);
|
||||
if(ret<0)
|
||||
{
|
||||
TFE_LOG_ERROR(g_pangu_rt->local_logger, "Trusted CA Store add crl failed %d:%s:%s", crl_id, cert_id, crl_file);
|
||||
TFE_LOG_ERROR(g_pangu_rt->local_logger, "Trusted CA Store add crl failed %d:%d:%s", crl_id, cert_id, crl_file);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -287,7 +287,7 @@ void trusted_CA_update_crl_cb(int table_id,const char* table_line,void* u_para)
|
||||
ret=tfe_proxy_ssl_del_crl(crl_file);
|
||||
if(ret<0)
|
||||
{
|
||||
TFE_LOG_ERROR(g_pangu_rt->local_logger, "Trusted CA Store del crl failed %d:%s:%s", crl_id, cert_id, crl_file);
|
||||
TFE_LOG_ERROR(g_pangu_rt->local_logger, "Trusted CA Store del crl failed %d:%d:%s", crl_id, cert_id, crl_file);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -298,7 +298,6 @@ void trusted_CA_update_crl_cb(int table_id,const char* table_line,void* u_para)
|
||||
}
|
||||
void trusted_CA_update_finish_cb(void* u_para)
|
||||
{
|
||||
int is_last_updating_table=0, ret=0;
|
||||
if(g_pangu_rt->ca_store_reseting>0)
|
||||
{
|
||||
g_pangu_rt->ca_store_reseting--;
|
||||
@@ -885,7 +884,7 @@ enum pangu_action http_scan(const struct tfe_http_session * session, enum tfe_ht
|
||||
struct http_field_name field_name;
|
||||
struct Maat_rule_t result[MAX_SCAN_RESULT];
|
||||
char buff[TFE_STRING_MAX], * p = NULL;
|
||||
int scan_ret = 0, table_id = 0, read_rule_ret = 0;
|
||||
int scan_ret = 0, table_id = 0;
|
||||
size_t hit_cnt = 0, i = 0;
|
||||
|
||||
if (events & EV_HTTP_REQ_HDR)
|
||||
@@ -1185,7 +1184,6 @@ static void cache_pending_on_fail(enum e_future_error err, const char * what, vo
|
||||
|
||||
void cache_pending(const struct tfe_http_session * session, unsigned int thread_id, struct pangu_http_ctx * ctx)
|
||||
{
|
||||
enum cache_pending_result ret;
|
||||
ctx->f_cache_pending=future_create("cache_pend", cache_pending_on_succ, cache_pending_on_fail, ctx);
|
||||
ctx->ref_session=tfe_http_session_allow_write(session);
|
||||
ctx->pending_result=web_cache_async_pending(g_pangu_rt->cache, thread_id, session->req, &(ctx->cmid), ctx->f_cache_pending);
|
||||
@@ -1274,12 +1272,13 @@ void pangu_on_http_end(const struct tfe_stream * stream,
|
||||
const struct tfe_http_session * session, unsigned int thread_id, void ** pme)
|
||||
{
|
||||
struct pangu_http_ctx * ctx = *(struct pangu_http_ctx **) pme;
|
||||
int i=0, j=0,ret=0;
|
||||
size_t i=0, j=0;
|
||||
int ret=0;
|
||||
if(ctx->action == PG_ACTION_REPLACE && ctx->rep_ctx->actually_replaced==0)
|
||||
{
|
||||
for(i=0; i< ctx->n_enforce; i++)
|
||||
{
|
||||
if(ctx->enforce_rules[i].action == PG_ACTION_REPLACE)
|
||||
if((unsigned char)ctx->enforce_rules[i].action == PG_ACTION_REPLACE)
|
||||
{
|
||||
if(i+1 > ctx->n_enforce)
|
||||
{
|
||||
|
||||
@@ -77,8 +77,8 @@ struct cache_param
|
||||
int min_use;
|
||||
time_t pinning_time_sec;
|
||||
time_t inactive_time_sec;
|
||||
long max_cache_size;
|
||||
long max_cache_obj_size;
|
||||
size_t max_cache_size;
|
||||
size_t max_cache_obj_size;
|
||||
pthread_mutex_t lock;
|
||||
};
|
||||
struct cache_bloom
|
||||
@@ -132,7 +132,7 @@ static void web_cache_stat_cb(evutil_socket_t fd, short what, void * arg)
|
||||
memset(&client_stat_sum, 0, sizeof(client_stat_sum));
|
||||
long long *val_sum = (long long *)&client_stat_sum;
|
||||
long long *val = NULL;
|
||||
int i=0, j=0;
|
||||
unsigned int i=0, j=0;
|
||||
for(i=0; i<cache->thread_count;i++)
|
||||
{
|
||||
tango_cache_get_statistics(cache->clients[i], &client_stat);
|
||||
@@ -346,7 +346,7 @@ char is_dynamic_url(const char* url)
|
||||
|
||||
char * cookie_scanvalue(const char * key, const char * cookies, char * val, size_t val_len)
|
||||
{
|
||||
int i=0, j=0, k=0, key_len=0;
|
||||
unsigned int i=0, j=0, k=0;
|
||||
int found=1;
|
||||
char* key_dup=ALLOC(char, strlen(key)+2);
|
||||
char* cookie_dup=ALLOC(char, strlen(cookies)+1);
|
||||
@@ -401,7 +401,7 @@ char* url_remove_qs(const char* url, int qs_num, char* ignore_qs[])
|
||||
query_string=strchr(url_copy, '?');
|
||||
if(query_string!=NULL)
|
||||
{
|
||||
strncat(target_url, url_copy, MIN(query_string-url_copy,target_size));
|
||||
strncat(target_url, url_copy, MIN((unsigned int)(query_string-url_copy),target_size));
|
||||
query_string++;
|
||||
for (token = query_string; ; token= NULL)
|
||||
{
|
||||
@@ -470,10 +470,10 @@ void cache_param_new(int idx, const struct Maat_rule_t* rule, const char* srv_de
|
||||
MAAT_RULE_EX_DATA* ad, long argl, void *argp)
|
||||
{
|
||||
struct cache_handle* cache=(struct cache_handle*) argp;
|
||||
int i=0;
|
||||
unsigned int i=0;
|
||||
size_t len=0;
|
||||
*ad=NULL;
|
||||
if(rule->serv_def_len<strlen("{}")+1)
|
||||
if((unsigned int)rule->serv_def_len<strlen("{}")+1)
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -553,7 +553,7 @@ void cache_param_new(int idx, const struct Maat_rule_t* rule, const char* srv_de
|
||||
}
|
||||
void cache_param_free(int idx, const struct Maat_rule_t* rule, const char* srv_def_large, MAAT_RULE_EX_DATA* ad, long argl, void *argp)
|
||||
{
|
||||
int i=0;
|
||||
unsigned int i=0;
|
||||
if(*ad==NULL)
|
||||
{
|
||||
return;
|
||||
@@ -617,9 +617,8 @@ struct cache_handle* create_web_cache_handle(const char* profile_path, const cha
|
||||
(int*)&(cache->cache_key_bloom_size), 16*1000*1000);
|
||||
MESA_load_profile_int_def(profile_path, section, "cache_key_bloom_life",
|
||||
&(cache->cache_key_bloom_life), 30*60);
|
||||
char bloom_filename[TFE_PATH_MAX]{0};
|
||||
struct timeval gc_refresh_delay = {cache->cache_key_bloom_life, 0};
|
||||
int i=0;
|
||||
unsigned int i=0;
|
||||
|
||||
struct tango_cache_parameter *cache_client_param=tango_cache_parameter_new(profile_path, section, logger);
|
||||
for(i=0; i<cache->thread_count; i++)
|
||||
@@ -956,7 +955,6 @@ enum cache_pending_result web_cache_async_pending(struct cache_handle* handle, u
|
||||
const struct tfe_http_half * request, struct cache_mid** mid, struct future* f_revalidate)
|
||||
{
|
||||
enum cache_pending_result result=PENDING_RESULT_FOBIDDEN;
|
||||
int is_undefined_obj=0;
|
||||
struct Maat_rule_t cache_policy;
|
||||
struct cache_param* param=&(handle->default_cache_policy);
|
||||
MAAT_RULE_EX_DATA ex_data=NULL;
|
||||
@@ -1030,7 +1028,6 @@ enum cache_pending_result web_cache_async_pending(struct cache_handle* handle, u
|
||||
}
|
||||
else
|
||||
{
|
||||
is_undefined_obj=1;
|
||||
ATOMIC_INC(&(handle->stat_val[STAT_CACHE_OVERRIDE_QUERY]));
|
||||
result=PENDING_RESULT_ALLOWED;
|
||||
}
|
||||
@@ -1098,10 +1095,8 @@ enum cache_pending_result web_cache_async_pending(struct cache_handle* handle, u
|
||||
int web_cache_async_query(struct cache_handle* handle, unsigned int thread_id,
|
||||
const struct tfe_http_half * request, struct cache_mid** mid, struct future* f)
|
||||
{
|
||||
enum cache_pending_action get_action;
|
||||
struct cache_query_context* query_ctx=NULL;
|
||||
struct promise* p=NULL;
|
||||
struct future* _f=NULL;
|
||||
struct cache_mid* _mid=*mid;
|
||||
assert(_mid->result!=PENDING_RESULT_FOBIDDEN);
|
||||
|
||||
|
||||
@@ -137,8 +137,6 @@ size_t select_replace_rule(enum replace_zone zone, const struct replace_rule * r
|
||||
|
||||
size_t replace_string(const char * in, size_t in_sz, const struct replace_rule * zone, char** out)
|
||||
{
|
||||
size_t replace_len = strlen(zone->replace_with);
|
||||
|
||||
assert(strlen(zone->find) != 0);
|
||||
|
||||
int error;
|
||||
|
||||
Reference in New Issue
Block a user