From: Mark Andrews Date: Wed, 30 Sep 2015 05:33:16 +0000 (+1000) Subject: 4230. [contrib] dlz_wildcard_dynamic.c:dlz_create could return a X-Git-Tag: v9.11.0a1~402 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=0dc485ffb6ca6e90979561db1705f6a89be8b8ed;p=thirdparty%2Fbind9.git 4230. [contrib] dlz_wildcard_dynamic.c:dlz_create could return a uninitalised result. [RT #40839] --- diff --git a/CHANGES b/CHANGES index 35b32936fed..a71edfb06a6 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4230. [contrib] dlz_wildcard_dynamic.c:dlz_create could return a + uninitalised result. [RT #40839] + 4229. [bug] A variable could be used uninitalised in dns_update_signaturesinc. [RT #40784] diff --git a/contrib/dlz/modules/wildcard/dlz_wildcard_dynamic.c b/contrib/dlz/modules/wildcard/dlz_wildcard_dynamic.c index 8225d1ac805..875d4ff12ac 100644 --- a/contrib/dlz/modules/wildcard/dlz_wildcard_dynamic.c +++ b/contrib/dlz/modules/wildcard/dlz_wildcard_dynamic.c @@ -434,12 +434,11 @@ dlz_create(const char *dlzname, unsigned int argc, char *argv[], DLZ_LIST_INIT(cd->rrs_list); cd->zone_pattern = strdup(argv[1]); - if (cd->zone_pattern == NULL) - goto cleanup; - cd->axfr_pattern = strdup(argv[2]); - if (cd->axfr_pattern == NULL) + if (cd->zone_pattern == NULL || cd->axfr_pattern == NULL) { + result = ISC_R_NOMEMORY; goto cleanup; + } def_ttl = strtol(argv[3], &endp, 10); if (*endp != '\0' || def_ttl < 0) {