]> git.ipfire.org Git - thirdparty/bind9.git/commit
dns_journal_iter_init() can now return the size of the delta
authorEvan Hunt <each@isc.org>
Sat, 22 Feb 2020 01:05:04 +0000 (17:05 -0800)
committerOndřej Surý <ondrej@sury.org>
Tue, 26 Jan 2021 11:38:32 +0000 (12:38 +0100)
commit70df95e9f5100d25b79efcd2fb1f7c76159c9cf8
treec81437ddd4530988fdcfc3e92ee2a66aa8e9e76b
parent57aadd6cea70189f979351f1d516f4e5a554b54c
dns_journal_iter_init() can now return the size of the delta

the call initailizing a journal iterator can now optionally return
to the caller the size in bytes of an IXFR message (not including
DNS header overhead, signatures etc) containing the differences from
the beginning to the ending serial number.

this is calculated by scanning the journal transaction headers to
calculate the transfer size. since journal file records contain a length
field that is not included in IXFR messages, we subtract out the length
of those fields from the overall transaction length.

this necessitated adding an "RR count" field to the journal transaction
header, so we know how many length fields to subract. NOTE: this will
make existing journal files stop working!
lib/dns/include/dns/journal.h
lib/dns/journal.c
lib/dns/zone.c
lib/ns/xfrout.c