}
}
-static void
-setownercase(dns_rdataset_t *rdataset, const dns_name_t *name) {
- if (dns_rdataset_isassociated(rdataset)) {
- dns_rdataset_setownercase(rdataset, name);
- }
-}
-
static const char *
optotext(dns_diffop_t op) {
switch (op) {
dns_rdataset_init(&rds);
dns_rdataset_init(&ardataset);
dns_rdatalist_tordataset(&rdl, &rds);
+ dns_rdataset_setownercase(&rds, name);
rds.trust = dns_trust_ultimate;
/*
dns_db_setsigningtime(db, &ardataset,
resign);
}
- if (op == DNS_DIFFOP_ADD ||
- op == DNS_DIFFOP_ADDRESIGN)
- {
- setownercase(&ardataset, name);
- }
if (op == DNS_DIFFOP_DEL ||
op == DNS_DIFFOP_DELRESIGN)
{
"update with no effect",
namebuf, classbuf);
}
- if (op == DNS_DIFFOP_ADD ||
- op == DNS_DIFFOP_ADDRESIGN)
- {
- setownercase(&ardataset, name);
- }
if (op == DNS_DIFFOP_DEL ||
op == DNS_DIFFOP_DELRESIGN)
{
newheader = (dns_slabheader_t *)region.base;
dns_slabheader_reset(newheader, (dns_dbnode_t *)node);
+ dns_slabheader_setownercase(newheader, name);
+
newheader->ttl = rdataset->ttl;
if (rdataset->ttl == 0U) {
DNS_SLABHEADER_SETATTR(newheader, DNS_SLABHEADERATTR_ZEROTTL);
static void
rdataset_clearprefetch(dns_rdataset_t *rdataset);
static void
-rdataset_setownercase(dns_rdataset_t *rdataset, const dns_name_t *name);
-static void
rdataset_getownercase(const dns_rdataset_t *rdataset, dns_name_t *name);
static dns_slabheader_t *
rdataset_getheader(const dns_rdataset_t *rdataset);
.settrust = rdataset_settrust,
.expire = rdataset_expire,
.clearprefetch = rdataset_clearprefetch,
- .setownercase = rdataset_setownercase,
.getownercase = rdataset_getownercase,
.getheader = rdataset_getheader,
};
dns_db_unlocknode(header->node, isc_rwlocktype_write);
}
-static void
-rdataset_setownercase(dns_rdataset_t *rdataset, const dns_name_t *name) {
- dns_slabheader_t *header = dns_rdataset_getheader(rdataset);
-
- /* The case could be set just once for the same header */
- if (CASESET(header)) {
- return;
- }
-
- dns_db_locknode(header->node, isc_rwlocktype_write);
- dns_slabheader_setownercase(header, name);
- dns_db_unlocknode(header->node, isc_rwlocktype_write);
-}
-
static void
rdataset_getownercase(const dns_rdataset_t *rdataset, dns_name_t *name) {
dns_slabheader_t *header = dns_rdataset_getheader(rdataset);
#include <setjmp.h>
#include <stdarg.h>
#include <stddef.h>
+#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
assert_int_equal(result, ISC_R_SUCCESS);
/* Store the case from name1 */
- dns_rdataset_setownercase(&rdataset, name1);
+ dns_slabheader_setownercase(&header, name1);
assert_true(CASESET(&header));