divine is a utility for laptop users or people who use their machines in different networks all the time. It is meant to be run from the PCMCIA network initialization scripts.
DO NOT make divine setuid root. Divine contains tons of security holes like using system, it is meant as quick hack that will not hurt so much if it is run at boot time.
The idea is this:
· you describe the possible networks in /etc/divine.conf, including one or more machines that are probably up (routers and NIS servers come to mind).
· at boot time, you run divine.
· divine starts a thread that injects fake arp requests into the network. The thread will try again up to three times, pausing 1 second between retries.
If the last try times out again, the thread will print an error message, leave the interface in the original state and exit cleanly.
· the main thread just looks for arp replies and exits if one is found.
· You have one resolv.conf per network, for example /etc/resolv.conf.default and /etc/resolv.conf.work, and divine will symlink one of them to /etc/resolv.conf for you.
· You can specify a proxy server plus port and divine will write the proxy server to /etc/proxy. This can be evaluated inside your shell startup script, like this (zsh):
export http_proxy="http://`< /etc/proxy`/"
The included perl script edit-netscape-proxy.pl will edit the proxy settings in your Netscape 4 preferences file.
· You can even specify an additional script to be run for each selection. You can use this to edit /etc/printcap or /etc/issue or do something else I forgot.
What's New in This Release:
· upgraded to libnet 1.1.1 API. Add -DOLD_LIBNET to use old code.