From: Wouter Wijngaards Date: Tue, 17 Oct 2017 07:36:51 +0000 (+0000) Subject: Turn duplicates into warnings for dnscrypt, and X-Git-Tag: release-1.7.0rc1~184 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8752326d8cca2910d796b46a76384f7fc35386c3;p=thirdparty%2Funbound.git Turn duplicates into warnings for dnscrypt, and fix declaration and code mix warning. git-svn-id: file:///svn/unbound/trunk@4374 be551aaa-1e26-0410-a405-d3ace91eadb9 --- diff --git a/dnscrypt/dnscrypt.c b/dnscrypt/dnscrypt.c index 8103107b2..b72c62f31 100644 --- a/dnscrypt/dnscrypt.c +++ b/dnscrypt/dnscrypt.c @@ -710,7 +710,9 @@ dnsc_load_local_data(struct dnsc_env* dnscenv, struct config_file *cfg) for(i=0; isigned_certs_count; i++) { const char *ttl_class_type = " 86400 IN TXT \""; int rotated_cert = 0; - uint32_t serial; + uint32_t serial; + uint16_t rrlen; + char* rr; struct SignedCert *cert = dnscenv->signed_certs + i; // Check if the certificate is being rotated and should not be published for(j=0; jrotated_certs_count; j++){ @@ -730,12 +732,12 @@ dnsc_load_local_data(struct dnsc_env* dnscenv, struct config_file *cfg) ); continue; } - uint16_t rrlen = strlen(dnscenv->provider_name) + + rrlen = strlen(dnscenv->provider_name) + strlen(ttl_class_type) + 4 * sizeof(struct SignedCert) + // worst case scenario 1 + // trailing double quote 1; - char *rr = malloc(rrlen); + rr = malloc(rrlen); if(!rr) { log_err("Could not allocate memory"); return -2; diff --git a/util/configparser.c b/util/configparser.c index a9361863d..e10165ea3 100644 --- a/util/configparser.c +++ b/util/configparser.c @@ -5090,7 +5090,7 @@ yyreduce: { OUTYY(("P(dnsc_dnscrypt_provider_cert:%s)\n", (yyvsp[0].str))); if(cfg_strlist_find(cfg_parser->cfg->dnscrypt_provider_cert, (yyvsp[0].str))) - fatal_exit("dnscrypt-provider-cert %s is a duplicate", (yyvsp[0].str)); + log_warn("dnscrypt-provider-cert %s is a duplicate", (yyvsp[0].str)); if(!cfg_strlist_insert(&cfg_parser->cfg->dnscrypt_provider_cert, (yyvsp[0].str))) fatal_exit("out of memory adding dnscrypt-provider-cert"); } @@ -5112,7 +5112,7 @@ yyreduce: { OUTYY(("P(dnsc_dnscrypt_secret_key:%s)\n", (yyvsp[0].str))); if(cfg_strlist_find(cfg_parser->cfg->dnscrypt_secret_key, (yyvsp[0].str))) - fatal_exit("dnscrypt-secret-key: %s is a duplicate", (yyvsp[0].str)); + log_warn("dnscrypt-secret-key: %s is a duplicate", (yyvsp[0].str)); if(!cfg_strlist_insert(&cfg_parser->cfg->dnscrypt_secret_key, (yyvsp[0].str))) fatal_exit("out of memory adding dnscrypt-secret-key"); } diff --git a/util/configparser.y b/util/configparser.y index 75e88e7ea..af4cda1a6 100644 --- a/util/configparser.y +++ b/util/configparser.y @@ -2377,7 +2377,7 @@ dnsc_dnscrypt_provider_cert: VAR_DNSCRYPT_PROVIDER_CERT STRING_ARG { OUTYY(("P(dnsc_dnscrypt_provider_cert:%s)\n", $2)); if(cfg_strlist_find(cfg_parser->cfg->dnscrypt_provider_cert, $2)) - fatal_exit("dnscrypt-provider-cert %s is a duplicate", $2); + log_warn("dnscrypt-provider-cert %s is a duplicate", $2); if(!cfg_strlist_insert(&cfg_parser->cfg->dnscrypt_provider_cert, $2)) fatal_exit("out of memory adding dnscrypt-provider-cert"); } @@ -2393,7 +2393,7 @@ dnsc_dnscrypt_secret_key: VAR_DNSCRYPT_SECRET_KEY STRING_ARG { OUTYY(("P(dnsc_dnscrypt_secret_key:%s)\n", $2)); if(cfg_strlist_find(cfg_parser->cfg->dnscrypt_secret_key, $2)) - fatal_exit("dnscrypt-secret-key: %s is a duplicate", $2); + log_warn("dnscrypt-secret-key: %s is a duplicate", $2); if(!cfg_strlist_insert(&cfg_parser->cfg->dnscrypt_secret_key, $2)) fatal_exit("out of memory adding dnscrypt-secret-key"); }