#60 Push dynamic database API to upstream
Closed: Fixed None Opened 12 years ago by pspacek.

Before pushing API to upstream is necessary to do:

  • code clean-up
  • complete API documentation
  • some sort of API tests
  • write example driver with BSD license, GPL is not acceptable

Really simple driver is acceptable (without any dynamic things).

I think it will be better to push API to upstream after deep DNSSEC
inspection and implementation design. Some problems can arise...


I have received an e-mail from upstream BIND that they are willing to include bind-dyndb interface but we have the provide the sample driver no later than in 4 months from now.

Requirements for the sample driver

Memory-only driver.

Configuration like:

dynamic-db "example-name" {
    library "example.so";
    arg "updzone ptr.sync.example.";
    arg "revzone 2.0.192.in-addr.arpa.";
}

It would work as an overlay above empty in-memory RBTDB for zone
ptr.sync.example. and only hook addrdataset (and company). The updzone would
be configured to accept dynamic updates from anyone and revzone would not
accept any updates directly.

Any modification to A RR in updzone will trigger automatic update of
corresponding PTR record in revzone.

For the record, I just sent link to https://github.com/spacekpe/bind-dynamic_db-examples upstream so now we are waiting for the first response.

Recent version of the API was accepted upstream:
https://source.isc.org/cgi-bin/gitweb.cgi?p=bind9.git;a=blob;f=bin/tests/system/dyndb/lib/dns/dyndb.c;h=ecea86ff06fb9a1d92f16cab2cdcc97a6f891f5b;hb=HEAD

We will have to port the plugin to new API when Fedora rebases to BIND 9.11. Porting should be handled in separate ticket #161.

Metadata Update from @pspacek:
- Issue assigned to pspacek
- Issue set to the milestone: Fedora 26

7 years ago

Login to comment on this ticket.

Metadata