Here is update for pdnsd script from resolvconf that works with openresolv-2.0.
Created attachment 173493 [details] Updated pdnsd script, version 2008-11-26
Reassigning to net-dialup herd.
Sorry, wrong assignment. This belongs to openresolv package, not pdnsd. Fixing summary as well...
Created attachment 175599 [details] Updated pdnsd script, version 2008-12-17 This is a bug-fix of previous update. Some variable expansions used wrongly first/shortest matches.
The file is part of pdnsd currently, so why the openresolv assignment?
This script is supposed to reside in /etc/resolvconf/update.d/, right? If yes, /etc/resolvconf belongs to net-dns/openresolv package and not net-dns/pdnsd. That's why I assigned this bug to openresolv-maintainer since the current 2.0 package also installs the scripts for dnsmasq and named...
Ok, no problem. I just want to have it somewhere. If there are any problems with my script, don't hesitate to report it here.
Created attachment 178849 [details] Updated pdnsd script, version 2009-01-18 Updated configuration description for openresolv-2.0 (update /etc/conf.d/resolvconf/resolv.conf.d/base instead of /etc/conf.d/net).
Is here some progress? The old resolvconf script simply doesn't work with openresolv-2.0, so the user cannot use it!
Please make ANY progress on this bug report. I'm very unhappy to see that nobody wants to put a single file into the portage tree. During the last updates guys from pdnsd were MUCH faster in including the update. Once more I repeat the the update script is _unusable_ in the unchanged state with openresolv-2+. THANKS!
And this is a bug fix, not an enhancement.
Hi, I'm the new maintainer of openresolv, so let's see what we can do about this. Does this script work with openresolv-3.x as well? Or just 2.x? Please let me know exactly what versions this script works with, and I'd be glad to include it. By the way, have you tried contacting openresolv upstream to see if they would be interested in putting this in the official distribution?
Created attachment 190334 [details] Updated pdnsd script, version 2009-05-04 Included usage description for openresolv-3*
Hi Jim, thanks for hearing me :-) I've tested the script now and it works with both versions - 3.3 and 2.0. It worked with 1.x last time I've checked it (December 2008). There haven't been no functional changes since then, only the activation description had to be tuned a little bit for openresolv-2.x and 3.x (see top of the file). Thanks.
(In reply to comment #12) > By the way, have you tried contacting openresolv upstream to see if they would > be interested in putting this in the official distribution? I didn't try to contact any maintainer of openresolv, because it always worked this way (via Bugzilla) flawlessly. And because the script was part of Gentoo's pdnsd package already, I didn't have any need to push anybody to update the script - until now... I don't have much spare time (building a house), so I preffer to use Bugzilla - the thread doesn't go away like it does on IRC with an online, but not responding maintainer.
openresolv-3.3.2 tarball includes a subscriber for the PowerDNS recursor as that is what should be used here. However, it's not installed by default because there is no ability to set global forwarders. Aside from that it's good. I see no reason why PowerDNS itself couldn't be supported either, but I do have a lot of issues with the subscriber attached here becoming part of upstream. * Needs to be same code style as other subscribers * Needs to work with /bin/sh (ie, not bash) * Restricted to POSIX interfaces for all userland tools so it works on the BSD family and others * Try and avoid using any program found in /usr on any platform as there is no guarantee /usr is available when resolvconf runs. The last point rules out using tools suchs as awk, grep and sed on the BSDs.
(In reply to comment #16) > * Needs to be same code style as other subscribers > * Needs to work with /bin/sh (ie, not bash) > * Restricted to POSIX interfaces for all userland tools so it works on the BSD > family and others > * Try and avoid using any program found in /usr on any platform as there is no > guarantee /usr is available when resolvconf runs. > > The last point rules out using tools suchs as awk, grep and sed on the BSDs. That is bad, because I don't have much time to rewrite the script (do the parsing in bash instead of generating the sed script). Better choice would be to have it written in python/C, but former requirement was to have it in shell language. I will see how much time I will have, but it would be better to have clear requirements from the beginning. Should it be written to work with /bin/sh only, or could it be a perl, python (prefferable) script or a C program? Language doesn't limit me at all (as you can see programming in `sed` is also possible) :-)
(In reply to comment #16) > openresolv-3.3.2 tarball includes a subscriber for the PowerDNS recursor as > that is what should be used here. However, it's not installed by default > because there is no ability to set global forwarders. Aside from that it's > good. This is about support for pdnsd (http://www.phys.uu.nl/~rombouts/pdnsd.html), not PowerDNS.
Well, for now I've added this to the Gentoo ebuilds... Since they're all unstable except for 2.0, I've added them directly to all the versions there except for 2.0, which I rev-bumped to 2.0-r1.
You two will have to support it then :)
The net-dns/pdnsd also needs new revision, because it provides the old version of the script; net-dns/openresolv needs to block old revisions afterwards.
(In reply to comment #20) > You two will have to support it then :) I'm providing support for my script for a long time now and see no problem providing it in future too :-)
The current version of /lib/resolvconf/pdnsd installed with openresolv-3.3.2 is not posix compliant. /sbin/resolvconf sources every file in /lib/resolvconf/ and, since resolvconf itself uses /bin/sh, those scripts must be sh-compliant too. Currently pdnsd script contains bashisms, thus it doesn't work on systems where /bin/sh points to another shell (dash for example).
Created attachment 208673 [details] Updated pdnsd script, version 2009-10-29 Updated to be more POSIX compliant.
Created attachment 208675 [details] Updated pdnsd script, version 2009-10-29 (2) Updated to call /bin/sh
(In reply to comment #23) > The current version of /lib/resolvconf/pdnsd installed with openresolv-3.3.2 is > not posix compliant. > /sbin/resolvconf sources every file in /lib/resolvconf/ and, since resolvconf > itself uses /bin/sh, those scripts must be sh-compliant too. Currently pdnsd > script contains bashisms, thus it doesn't work on systems where /bin/sh points > to another shell (dash for example). I did some updates according to what I found about the POSIX shells on the internet. Can you please have a look at the updated script? Thanks!
You must use printf instead of 'echo -e', 'echo -n', etc... POSIX echo does not support any options. And replace '&>/dev/null' with '>/dev/null 2>&1' too (I think you can use grep -q in the first occurrence). Apart from that it looks fine to me. Thanks!
Created attachment 208808 [details] Updated pdnsd script, version 2009-10-30 1. Fixed usage of echo (replaced by clearer printf) 2. Replaced &>/dev/null by >/dev/null 2>&1 3. Fixed bug with missing ending @ in "@RULE"
(In reply to comment #27) > You must use printf instead of 'echo -e', 'echo -n', etc... POSIX echo does not > support any options. > And replace '&>/dev/null' with '>/dev/null 2>&1' too (I think you can use grep > -q in the first occurrence). > > Apart from that it looks fine to me. Thanks! Fixed in new version. Thanks for comments :-)
(In reply to comment #29) > (In reply to comment #27) > Fixed in new version. Thanks for comments :-) > Version of what?
(In reply to comment #30) > (In reply to comment #29) > > (In reply to comment #27) > > > Fixed in new version. Thanks for comments :-) > > > > Version of what? > Version of attachment of this bug. This "project" doesn't have any home page, nor I'm Gentoo dev to have a Git tree. Currently if there is no Gentoo dev to apply the changes to the portage tree, it will not be there. If you have any questions, don't hesitate to ask here :-)
The file is part of net-dns/pdnsd, but the tree has an old version. Also new is that for openresolv-3* it needs to be put in /lib/resolvconf/pdnsd, not in /etc/resolvconf/update.d.
(In reply to comment #32) > The file is part of net-dns/pdnsd, but the tree has an old version. Also new is > that for openresolv-3* it needs to be put in /lib/resolvconf/pdnsd, not in > /etc/resolvconf/update.d. Sorry, wrong information. The file _was_ part of net-dns/pdnsd, you can find in with in-tree version of net-dns/openresolv (version 3). I either case, the newest version isn't included.
(In reply to comment #33) > (In reply to comment #32) > > The file is part of net-dns/pdnsd, but the tree has an old version. Also new is > > that for openresolv-3* it needs to be put in /lib/resolvconf/pdnsd, not in > > /etc/resolvconf/update.d. > > Sorry, wrong information. The file _was_ part of net-dns/pdnsd, you can find in > with in-tree version of net-dns/openresolv (version 3). I either case, the > newest version isn't included. > Ok, thanks. I now see the missing link. It is this file: %% qlist openresolv | grep pdns /lib/resolvconf/pdnsd Well, it is too bad that Roy doesn't want to support it/add it. I'll remove him from CC (comment #20). Should I drop the new file in for the 3.3.4 version?
(In reply to comment #34) > Should I drop the new file in for the 3.3.4 version? Yes, please (3.3.4-r1).
I've dropped it in for all current versions, as well as revbumped 3.3.4-r1 so everyone gets it.