return (result);
}
-static isc_result_t
-make_dnskey(dst_key_t *key, unsigned char *buf, int bufsize,
- dns_rdata_t *target) {
+isc_result_t
+dns_dnssec_make_dnskey(dst_key_t *key, unsigned char *buf, int bufsize,
+ dns_rdata_t *target) {
isc_result_t result;
isc_buffer_t b;
isc_region_t r;
dns_rdata_t dnskey = DNS_RDATA_INIT;
dns_rdata_reset(&dnskey);
- RETERR(make_dnskey(key->key, buf, sizeof(buf), &dnskey));
+ RETERR(dns_dnssec_make_dnskey(key->key, buf, sizeof(buf), &dnskey));
dst_key_format(key->key, keystr, sizeof(keystr));
report("Fetching %s (%s) from key %s.", keystr,
report("Removing %s key %s/%d/%s from DNSKEY RRset.", reason, namebuf,
dst_key_id(key->key), alg);
- RETERR(make_dnskey(key->key, buf, sizeof(buf), &dnskey));
+ RETERR(dns_dnssec_make_dnskey(key->key, buf, sizeof(buf), &dnskey));
result = delrdata(&dnskey, diff, origin, ttl, mctx);
failure:
dns_rdata_t cdnskeyrdata = DNS_RDATA_INIT;
dns_name_t *origin = dst_key_name(key->key);
- RETERR(make_dnskey(key->key, keybuf, sizeof(keybuf),
- &cdnskeyrdata));
+ RETERR(dns_dnssec_make_dnskey(key->key, keybuf, sizeof(keybuf),
+ &cdnskeyrdata));
cdnskeyrdata.type = dns_rdatatype_cdnskey;
if (syncpublish(key->key, now)) {
char keystr[DST_KEY_FORMATSIZE];
dst_key_format(key->key, keystr, sizeof(keystr));
- RETERR(make_dnskey(key->key, keybuf, sizeof(keybuf),
- &cdnskeyrdata));
+ RETERR(dns_dnssec_make_dnskey(key->key, keybuf, sizeof(keybuf),
+ &cdnskeyrdata));
if (dns_rdataset_isassociated(cds)) {
delete_cds(key, &cdnskeyrdata, (const char *)keystr,
*\li various errors from dns_name_totext
*/
+isc_result_t
+dns_dnssec_make_dnskey(dst_key_t *key, unsigned char *buf, int bufsize,
+ dns_rdata_t *target);
+/*%<
+ * Convert a DST key into a DNS record.
+ *
+ * Requires:
+ *\li 'key' is not NULL
+ *\li 'buf' is not NULL
+ *\li 'bufsize' equals DST_KEY_MAXSIZE
+ *\li 'target' is not NULL
+ *
+ * Returns:
+ *\li #ISC_R_SUCCESS
+ *\li various errors from dst_key_todns
+ */
+
isc_result_t
dns_dnssec_sign(const dns_name_t *name, dns_rdataset_t *set, dst_key_t *key,
isc_stdtime_t *inception, isc_stdtime_t *expire,