On Fri, May 03, 2013 at 06:08:15PM -0700, Scott wrote: > Ken, > Thanks for the tip! pkg_scripts did the trick (I'd never seen that > mechanism before). With regards to making adsuck play nice with dhcp (yes, > I tired the "script" line from the readme only to get errors), maybe the > dhclient-adsuck script was rewritten? I've done nothing special and yet it > all just works. Following is my setup on 5.3 i386 (after your advice): > > # grep adsuck /etc/rc.conf.local: > pkg_scripts="adsuck" # notice I've removed the adsuck_flags variable > > # grep nameserver /etc/resolv.conf: > nameserver 127.0.0.1 > > # cat /etc/dhclient.conf: > supersede domain-name-servers 127.0.0.1; > request subnet-mask, broadcast-address, routers, > domain-name-servers, domain-name, host-name; > > # grep nameserver /var/adsuck/files/resolv.conf: > nameserver 75.75.75.75 > nameserver 75.75.76.76 > > # ls /var/adsuck/files/hosts.small: > /var/adsuck/files/hosts.small > > Although I thrashed around a lot trying to get it to work, once I rolled > back all my changes I guess all that needs to happen (in my case) is: > > cp /etc/resolv.conf /var/adsuck/files/ > print 'pkg_scripts="adsuck"' >>/etc/rc.conf.local > print "prepend domain-name-servers 127.0.0.1;" >>/etc/dhclient.conf > > and change /etc/resolv.conf to contain only: > nameserver 127.0.0.1 > > Thanks again for your help. > -Scott
Excellent. The only problem I see with your setup (not being an adsuck user, so all advice should be taken with a grain of salt) is that if the domain name server info that dhclient gets changes, your setup may fail. Obviously, if it does you simply need to manually refresh the contents of /var/asuck/files/resolv.conf. Thanks for the update. .... Ken > > > On Fri, May 3, 2013 at 3:40 PM, Kenneth R Westerback <kwesterb...@rogers.com > > wrote: > > > On Fri, May 03, 2013 at 02:52:06PM -0700, Scott wrote: > > > Good day, > > > I can't get adsuck to start at boot on OpenBSD 5.3. I copied strings > > like a > > > monkey and thought them over (even testing them in shell), but no luck. > > > > > > # grep adsuck /etc/rc.conf.local: > > > adsuck_flags="-c /var/adsuck -f /files/resolv.conf /files/hosts.small" > > > > > > # cat /etc/rc.local: > > > if [ "$adsuck_flags" != "NO" -a -x /usr/local/sbin/adsuck ]; then > > > echo -n ' adsuck' > > > /usr/local/sbin/adsuck "$adsuck_flags" > > > fi > > > > You may want to use the pkg_scripts variable in rc.conf.local. i.e. > > rather than modifying /etc/rc.local. > > > > > > > > # which adsuck: > > > /usr/local/sbin/adsuck > > > > > > Adsuck does work properly if started manually using: > > > sudo adsuck -c /var/adsuck -f /files/resolv.conf /files/hosts.small > > > > As far as I can see from a quick install of adsuck, I don't think it has > > been adapted to the removal of the dhclient-script from dhclient's > > operation. So if you are using dhcp you may be out of luck at the moment. > > Or > > if you are using dhcp and aduck is working on 5.3 I'd be interested in more > > details on your setup, and where you got directions on setting it up. > > > > > > > > So I know it's just something I'm doing wrong with my rc scripts. I read > > > the readme in /usr/local/shar/docs/pkg-readmes/, but that only covers > > > interaction with dhclient and resolv.conf. > > > > And, alas, does it wrong. 'script' is no longer a valid statement > > in dhclient.conf and thus the provided /usr/local/sbin/dhclient-adsuck > > will not be invoked by dhclient. > > > > .... Ken > > > > > > > > > > > Any help would be MUCH appreciated. > > > > > > -Scott