On 07/13/2012 03:42 PM, Adam Tkac wrote:
On Tue, Jul 10, 2012 at 03:57:24PM +0200, Petr Spacek wrote:
these patches provides SOA serial auto-increment feature for external changes.
Related ticket: https://fedorahosted.org/bind-dyndb-ldap/ticket/67
It is necessary to set "psearch" AND "serial_autoincrement" to "yes"
in /etc/named.conf to enable this feature.
In replicated environment idnsSOAserial attribute has to be declared
as non-replicated. It is done by mkosek's patch 281 for 389 DS &
For testing purposes it is enough to add "idnsSOAserial" to end of
exclude list in nsDS5ReplicatedAttributeList attribute for each
replication agreement located in cn=mapping tree,cn=config subtree.
My patch 28 contains "trick" necessary for replicated environments
with 389 DS. 389 sends entry change notification (ECN) in cases when
non-replicated attribute idnsSOAserial was changed on *other side*.
In that case no change is visible in DNS attributes, but ECN is sent
by 389. (Attribute modifyTimestamp is changed also.)
Patch 28 computes digest/hash from all resource records in idnsZone
object and compares old and new digest after each received ECN. This
approach eliminates "false changes".
Each patch depends on all preceding patches, but each patch
implements visible (and testable) part of functionality.
please check my comments below.
I did all changes except this one:
+rdatalist_length(const dns_rdatalist_t *rdlist)
There is no reason to have this function exported, please mark it as static (and
probably also as inline).
rdatalist_length() is used from rdlist.c and ldap_driver.c.
Rebased patches were pushed to master:
Freeipa-devel mailing list