diff --git a/enc_server/dap_enc_ks.c b/enc_server/dap_enc_ks.c index d8428293cd3006a02978be153ace52b9256f3c0f..b7681a0320628b76c129fcd3988196a9e8c2b033 100644 --- a/enc_server/dap_enc_ks.c +++ b/enc_server/dap_enc_ks.c @@ -33,11 +33,13 @@ static dap_enc_ks_key_t * _ks = NULL; static bool _memcache_enable = false; +static time_t _memcache_expiration_key = 0; -int dap_enc_ks_init(bool memcache_backup_enable) +int dap_enc_ks_init(bool memcache_backup_enable, time_t memcache_expiration_key) { if(memcache_backup_enable) { if(dap_memcache_is_enable()) { + _memcache_expiration_key = memcache_expiration_key; _memcache_enable = true; } else { log_it(L_ERROR, "Can't init memcache backup. Memcache module is not activated."); @@ -71,7 +73,7 @@ void _save_key_in_storge(dap_enc_ks_key_t *key) HASH_ADD_STR(_ks,id,key); if(_memcache_enable) { dap_enc_key_serealize_t* serealize_key = dap_enc_key_serealize(key->key); - dap_memcache_put(key->id, serealize_key, sizeof (dap_enc_key_serealize_t), 0); + dap_memcache_put(key->id, serealize_key, sizeof (dap_enc_key_serealize_t), _memcache_expiration_key); free(serealize_key); } } diff --git a/enc_server/dap_enc_ks.h b/enc_server/dap_enc_ks.h index 8b62ba9eafbb199fe37a9380f2472b5a79aebe48..b24de3f4148d0a36188f9ae5036e89231518e79a 100644 --- a/enc_server/dap_enc_ks.h +++ b/enc_server/dap_enc_ks.h @@ -37,7 +37,9 @@ typedef struct dap_enc_ks_key{ UT_hash_handle hh; // makes this structure hashable with UTHASH library } dap_enc_ks_key_t; -int dap_enc_ks_init(bool memcache_backup_enable); +int dap_enc_ks_init(bool memcache_backup_enable, + time_t memcache_expiration_key); + void dap_enc_ks_deinit(); dap_enc_ks_key_t * dap_enc_ks_find(const char * v_id);