Processing module configuration and selection needs some more work
The way processing modules are configured for subtrees, along with the algorithm for selecting the appropriate processing modules for a given query, have some small but major shortcomings:
- just like with the regular catalog, the search key should not just be the QNAME, but the QCLASS/QNAME pair;
- the configuration file must provide facilities to configure default processing for the following cases:
- known class/zone combinations (similar to what is currently accomplished by configuring processing for the root zone),
- unknown class/zone combinations (so that by default, IBDNS will copy the question section into the response and set the RCODE to REFUSED),
- unsupported or deprecated opcodes like IQUERY (so that by default, IBDNS will copy the question section into the response and set the RCODE to NOTIMP);
- each subtree should inherit processing module configuration from their nearest ancestor.
The configuration file syntax will need to be adjusted accordingly and its syntax should be stabilized as quickly as possible, so there is a good reason to consider this issue to be urgent.