mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-02 15:45:25 +00:00
rndc dumpdb -expired: print when RRsets expired
When calling 'rndc dumpdb -expired', also print when the RRset expired.
This commit is contained in:
@@ -1245,7 +1245,7 @@ if [ $ret != 0 ]; then echo_i "failed"; fi
|
|||||||
status=$((status+ret))
|
status=$((status+ret))
|
||||||
# Check that expired records are not dumped.
|
# Check that expired records are not dumped.
|
||||||
ret=0
|
ret=0
|
||||||
grep "; expired (awaiting cleanup)" ns5/named_dump.db.test$n && ret=1
|
grep "; expired since .* (awaiting cleanup)" ns5/named_dump.db.test$n && ret=1
|
||||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||||
status=$((status+ret))
|
status=$((status+ret))
|
||||||
|
|
||||||
@@ -1261,13 +1261,13 @@ status=$((status+ret))
|
|||||||
echo_i "check rndc dump expired data.example ($n)"
|
echo_i "check rndc dump expired data.example ($n)"
|
||||||
ret=0
|
ret=0
|
||||||
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
||||||
grep "; expired (awaiting cleanup) data\.example\..*A text record with a 2 second ttl" > /dev/null 2>&1 || ret=1
|
grep "; expired since .* (awaiting cleanup) data\.example\..*A text record with a 2 second ttl" > /dev/null 2>&1 || ret=1
|
||||||
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
||||||
grep "; expired (awaiting cleanup) nodata\.example\." > /dev/null 2>&1 || ret=1
|
grep "; expired since .* (awaiting cleanup) nodata\.example\." > /dev/null 2>&1 || ret=1
|
||||||
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
||||||
grep "; expired (awaiting cleanup) nxdomain\.example\." > /dev/null 2>&1 || ret=1
|
grep "; expired since .* (awaiting cleanup) nxdomain\.example\." > /dev/null 2>&1 || ret=1
|
||||||
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
awk '/; expired/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
||||||
grep "; expired (awaiting cleanup) othertype\.example\." > /dev/null 2>&1 || ret=1
|
grep "; expired since .* (awaiting cleanup) othertype\.example\." > /dev/null 2>&1 || ret=1
|
||||||
# Also make sure the not expired data does not have an expired comment.
|
# Also make sure the not expired data does not have an expired comment.
|
||||||
awk '/; answer/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
awk '/; answer/ { x=$0; getline; print x, $0}' ns5/named_dump.db.test$n |
|
||||||
grep "; answer longttl\.example.*A text record with a 600 second ttl" > /dev/null 2>&1 || ret=1
|
grep "; answer longttl\.example.*A text record with a 600 second ttl" > /dev/null 2>&1 || ret=1
|
||||||
|
@@ -1114,7 +1114,15 @@ again:
|
|||||||
(rds->stale_ttl -
|
(rds->stale_ttl -
|
||||||
ctx->serve_stale_ttl));
|
ctx->serve_stale_ttl));
|
||||||
} else if (ANCIENT(rds)) {
|
} else if (ANCIENT(rds)) {
|
||||||
fprintf(f, "; expired (awaiting cleanup)\n");
|
isc_buffer_t b;
|
||||||
|
char buf[sizeof("YYYYMMDDHHMMSS")];
|
||||||
|
memset(buf, 0, sizeof(buf));
|
||||||
|
isc_buffer_init(&b, buf, sizeof(buf) - 1);
|
||||||
|
dns_time64_totext((uint64_t)rds->stale_ttl, &b);
|
||||||
|
fprintf(f,
|
||||||
|
"; expired since %s "
|
||||||
|
"(awaiting cleanup)\n",
|
||||||
|
buf);
|
||||||
}
|
}
|
||||||
result = dump_rdataset(mctx, name, rds, ctx, buffer, f);
|
result = dump_rdataset(mctx, name, rds, ctx, buffer, f);
|
||||||
if (result != ISC_R_SUCCESS) {
|
if (result != ISC_R_SUCCESS) {
|
||||||
|
@@ -3146,7 +3146,7 @@ bind_rdataset(dns_rbtdb_t *rbtdb, dns_rbtnode_t *node, rdatasetheader_t *header,
|
|||||||
rdataset->ttl = 0;
|
rdataset->ttl = 0;
|
||||||
} else if (header->rdh_ttl < now) {
|
} else if (header->rdh_ttl < now) {
|
||||||
rdataset->attributes |= DNS_RDATASETATTR_ANCIENT;
|
rdataset->attributes |= DNS_RDATASETATTR_ANCIENT;
|
||||||
rdataset->stale_ttl = 0;
|
rdataset->stale_ttl = header->rdh_ttl;
|
||||||
rdataset->ttl = 0;
|
rdataset->ttl = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user