On Mon, 21 Jan 2019, bert hubert wrote: > Providing free Oracle support is very expensive for us in terms of licensing > and time to setting up a working environment. > > We therefore only fix bugs in the Oracle backend from supported > (commercial) customers. > I hear what you're saying. Makes sense; especially in perspective of an Oracle licence (...). Althoug XE is free.
> The GitHub issue you cite has 'help-needed' attached to it, which reflects > that we are not going to fix the problem. > > > In resume: I need pre-4.1.x to have oracle working but post-4.0.x to have > > EDNS compliance. > > If you are willing to attempt to fix the errors, we'd welcome your pull > requests. If you have specific questions, also please ask them and maybe we > can see what the problem is. > Before doing so, this is what solved the problem: [user@host pdns-4.1.5]$ diff modules/oraclebackend/oraclebackend.cc modules/oraclebackend/oraclebackend.cc.orig 539c540 > string_to_cbuf(mQueryName, name.labelReverse().toString(" ", false)), > sizeof(mQueryName)); --- < string_to_cbuf(mQueryName, name.labelReverse().toString(" ", false), sizeof(mQueryName)); 557,558c558,559 > before = DNSName(boost::replace_all_copy(mResultPrevName," > ",".")).labelReverse(); > after = DNSName(boost::replace_all_copy(mResultNextName," > ",".")).labelReverse(); --- < before = DNSName(mResultPrevName); < after = DNSName(mResultNextName); [user@host pdns-4.1.5]$ diff ./modules/oraclebackend/oraclebackend.hh ./modules/oraclebackend/oraclebackend.hh.orig 78c78 < vector<string> getDomainMasters(const DNSName& domain, int zoneId); --- > vector<string> getDomainMasters(const DNSName& domain, int zoneId) override; 88c88 < bool feedRecord(const DNSResourceRecord &rr, const DNSName ordername); --- > bool feedRecord(const DNSResourceRecord &rr, const DNSName ordername) > override; 103c103 < bool delTSIGKey(const DNSName& name); --- > bool delTSIGKey(const DNSName& name) override; All credit for that solution goes to Guy Nir, DBA, not limited to an Oracle orientation, and no fear to tangle/mangle/untangle/unmangle C code (but neither of us consider ourself real programmers). The first "patch" shows too many ")"'s. Then second, the function "replace_all_copy" seems missing. Removing it removed the obstacle / solved it. But I guess the removal will decrease speed of regular users. Therefor I guess this straight as a pull reuqest isn't desired. However to me it looks like Guy found the solution pretty rapid. Bytheway, another worth-to-mention thing he did in the past was avoiding any DNSSEC requirements, using mviews in Oracle (m as in materialized). So; it's still possible to run with the very old data structure - something I often heard of it was impossible. -- Met vriendelijke groet, With kind regards, Leo Vandewoestijne <***@dns.company> <www.dns.company> _______________________________________________ Pdns-users mailing list Pdns-users@mailman.powerdns.com https://mailman.powerdns.com/mailman/listinfo/pdns-users