if(!nsec3_get_params(&pk, i, &rralgo, &rriter, &rrsalt,
&rrsaltlen))
continue; /* no parameters, malformed */
- if(rralgo != algo || rriter != iter || rrsaltlen != saltlen ||
- memcmp(rrsalt, salt, saltlen) != 0)
+ if(rralgo != algo || rriter != iter || rrsaltlen != saltlen)
continue; /* different parameters */
+ if(saltlen != 0) {
+ if(rrsalt == NULL || salt == NULL)
+ continue;
+ if(memcmp(rrsalt, salt, saltlen) != 0)
+ continue; /* different salt parameters */
+ }
if(nsec3_has_type(&pk, i, rrtype))
return 1;
}
* thus apply straight to the zone DNSKEY set.
* @param z: the auth zone.
* @param env: environment with time and temp buffers.
+ * @param mods: module stack for validator environment for dnssec validation.
* @param anchor: trust anchor to use
* @param is_insecure: returned, true if the zone is securely insecure.
* @param why_bogus: if the routine fails, returns the failure reason.