1*83ee113eSDavid van Moolenbroek#!/bin/sh 2*83ee113eSDavid van Moolenbroek# 3*83ee113eSDavid van Moolenbroek# simplified dhclient-script for NeXTSTEP/OPENSTEP 4*83ee113eSDavid van Moolenbroek# 5*83ee113eSDavid van Moolenbroek# removed a lot of the cruft from the netbsd version since NeXTSTEP doesn't 6*83ee113eSDavid van Moolenbroek# support aliases and lots of things were breaking for no good reason 7*83ee113eSDavid van Moolenbroek# 8*83ee113eSDavid van Moolenbroek# 14 Sep 1997, David W. Young 9*83ee113eSDavid van Moolenbroek# 10*83ee113eSDavid van Moolenbroekif [ x$reason = xPREINIT ]; then 11*83ee113eSDavid van Moolenbroek ifconfig $interface inet 0.0.0.0 netmask 0.0.0.0 up >/dev/null 2>&1 12*83ee113eSDavid van Moolenbroek exit 0 13*83ee113eSDavid van Moolenbroekfi 14*83ee113eSDavid van Moolenbroekif [ x$reason = xBOUND ] || [ x$reason = xRENEW ] || \ 15*83ee113eSDavid van Moolenbroek [ x$reason = xREBIND ] || [ x$reason = xREBOOT ]; then 16*83ee113eSDavid van Moolenbroek current_hostname=`hostname` 17*83ee113eSDavid van Moolenbroek if [ x$current_hostname = x ] || \ 18*83ee113eSDavid van Moolenbroek [ x$current_hostname = x$old_host_name ]; then 19*83ee113eSDavid van Moolenbroek if [ x$current_hostname = x ] || \ 20*83ee113eSDavid van Moolenbroek [ x$new_host_name != x$old_host_name ]; then 21*83ee113eSDavid van Moolenbroek hostname $new_host_name 22*83ee113eSDavid van Moolenbroek fi 23*83ee113eSDavid van Moolenbroek fi 24*83ee113eSDavid van Moolenbroek 25*83ee113eSDavid van Moolenbroek if [ x$old_ip_address != x ] && [ x$old_ip_address != x$new_ip_address ] 26*83ee113eSDavid van Moolenbroek then 27*83ee113eSDavid van Moolenbroek ifconfig $interface $new_ip_address netmask $new_subnet_mask \ 28*83ee113eSDavid van Moolenbroek >/dev/null 2>&1 29*83ee113eSDavid van Moolenbroek route add $new_ip_address 127.1 0 >/dev/null 2>&1 30*83ee113eSDavid van Moolenbroek for router in $new_routers ; do 31*83ee113eSDavid van Moolenbroek route add default $router 1 >/dev/null 2>&1 32*83ee113eSDavid van Moolenbroek done 33*83ee113eSDavid van Moolenbroek fi 34*83ee113eSDavid van Moolenbroek if [ x"$new_domain_name_servers" != x ]; then 35*83ee113eSDavid van Moolenbroek cat /dev/null > /etc/resolv.conf.dhclient 36*83ee113eSDavid van Moolenbroek if [ "x$new_domain_search" != x ]; then 37*83ee113eSDavid van Moolenbroek echo search $new_domain_search >> /etc/resolv.conf.dhclient 38*83ee113eSDavid van Moolenbroek elif [ "x$new_domain_name" != x ]; then 39*83ee113eSDavid van Moolenbroek # Note that the DHCP 'Domain Name Option' is really just a domain 40*83ee113eSDavid van Moolenbroek # name, and that this practice of using the domain name option as 41*83ee113eSDavid van Moolenbroek # a search path is both nonstandard and deprecated. 42*83ee113eSDavid van Moolenbroek echo search $new_domain_name >> /etc/resolv.conf.dhclient 43*83ee113eSDavid van Moolenbroek fi 44*83ee113eSDavid van Moolenbroek for nameserver in $new_domain_name_servers; do 45*83ee113eSDavid van Moolenbroek echo nameserver $nameserver >>/etc/resolv.conf.dhclient 46*83ee113eSDavid van Moolenbroek done 47*83ee113eSDavid van Moolenbroek 48*83ee113eSDavid van Moolenbroek mv /etc/resolv.conf.dhclient /etc/resolv.conf 49*83ee113eSDavid van Moolenbroek fi 50*83ee113eSDavid van Moolenbroek exit 0 51*83ee113eSDavid van Moolenbroekfi 52*83ee113eSDavid van Moolenbroekif [ x$reason = xEXPIRE ] || [ x$reason = xFAIL ] || [ x$reason = xRELEASE ] \ 53*83ee113eSDavid van Moolenbroek || [ x$reason = xSTOP ]; then 54*83ee113eSDavid van Moolenbroek if [ x$old_ip_address != x ]; then 55*83ee113eSDavid van Moolenbroek route delete $old_ip_address 127.1 >/dev/null 2>&1 56*83ee113eSDavid van Moolenbroek for $router in $old_routers ; do 57*83ee113eSDavid van Moolenbroek route delete default $router >/dev/null 2>&1 58*83ee113eSDavid van Moolenbroek done 59*83ee113eSDavid van Moolenbroek fi 60*83ee113eSDavid van Moolenbroek exit 0 61*83ee113eSDavid van Moolenbroekfi 62