diff options
Diffstat (limited to 'util/config_file.c')
-rw-r--r-- | util/config_file.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/util/config_file.c b/util/config_file.c index d0fdb2daaa25..796c1a61f269 100644 --- a/util/config_file.c +++ b/util/config_file.c @@ -282,6 +282,8 @@ config_create(void) cfg->dnscrypt_provider = NULL; cfg->dnscrypt_provider_cert = NULL; cfg->dnscrypt_secret_key = NULL; + cfg->dnscrypt_shared_secret_cache_size = 4*1024*1024; + cfg->dnscrypt_shared_secret_cache_slabs = 4; #ifdef USE_IPSECMOD cfg->ipsecmod_enabled = 1; cfg->ipsecmod_ignore_bogus = 0; @@ -290,6 +292,10 @@ config_create(void) cfg->ipsecmod_whitelist = NULL; cfg->ipsecmod_strict = 0; #endif +#ifdef USE_CACHEDB + cfg->cachedb_backend = NULL; + cfg->cachedb_secret = NULL; +#endif return cfg; error_exit: config_delete(cfg); @@ -561,6 +567,10 @@ int config_set_option(struct config_file* cfg, const char* opt, else S_STR("dnscrypt-provider:", dnscrypt_provider) else S_STRLIST("dnscrypt-provider-cert:", dnscrypt_provider_cert) else S_STRLIST("dnscrypt-secret-key:", dnscrypt_secret_key) + else S_MEMSIZE("dnscrypt-shared-secret-cache-size:", + dnscrypt_shared_secret_cache_size) + else S_POW2("dnscrypt-shared-secret-cache-slabs:", + dnscrypt_shared_secret_cache_slabs) #endif else if(strcmp(opt, "ip-ratelimit:") == 0) { IS_NUMBER_OR_ZERO; cfg->ip_ratelimit = atoi(val); @@ -922,6 +932,10 @@ config_get_option(struct config_file* cfg, const char* opt, else O_STR(opt, "dnscrypt-provider", dnscrypt_provider) else O_LST(opt, "dnscrypt-provider-cert", dnscrypt_provider_cert) else O_LST(opt, "dnscrypt-secret-key", dnscrypt_secret_key) + else O_MEM(opt, "dnscrypt-shared-secret-cache-size", + dnscrypt_shared_secret_cache_size) + else O_DEC(opt, "dnscrypt-shared-secret-cache-slabs", + dnscrypt_shared_secret_cache_slabs) #endif else O_YNO(opt, "unblock-lan-zones", unblock_lan_zones) else O_YNO(opt, "insecure-lan-zones", insecure_lan_zones) @@ -958,6 +972,10 @@ config_get_option(struct config_file* cfg, const char* opt, else O_LST(opt, "ipsecmod-whitelist", ipsecmod_whitelist) else O_YNO(opt, "ipsecmod-strict", ipsecmod_strict) #endif +#ifdef USE_CACHEDB + else O_STR(opt, "backend", cachedb_backend) + else O_STR(opt, "secret-seed", cachedb_secret) +#endif /* not here: * outgoing-permit, outgoing-avoid - have list of ports * local-zone - zones and nodefault variables @@ -1259,6 +1277,10 @@ config_delete(struct config_file* cfg) free(cfg->ipsecmod_hook); config_delstrlist(cfg->ipsecmod_whitelist); #endif +#ifdef USE_CACHEDB + free(cfg->cachedb_backend); + free(cfg->cachedb_secret); +#endif free(cfg); } |