Annotation of embedaddon/dhcp/contrib/sethostname.sh, revision 1.1.1.1

1.1       misho       1: #!/bin/sh
                      2: 
                      3: # This script can be installed in /etc/dhclient-enter-hooks to set the client's
                      4: # hostname based either on the hostname that the DHCP server supplied or the
                      5: # hostname in whatever ptr record exists for the assigned IP address.
                      6: 
                      7: if [ x$new_host_name = x ]; then
                      8:   ptrname=`echo $new_ip_address \
                      9:           |sed -e \
                     10:   's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\4.\3.\2.\1.in-addr.arpa/'`
                     11:   (echo "set type=ptr"; echo "$ptrname") |nslookup >/tmp/nslookup.$$
                     12:   set `sed -n -e "s/$ptrname[  ]*\(canonical \)*name *= *\(.*\)/\2 \1/p" \
                     13:                                                        < /tmp/nslookup.$$` _
                     14:   if [ x$1 = x_ ]; then
                     15:     new_host_name=""
                     16:   else
                     17:     if [ $# -gt 1 ] && [ x$2 = xcanonical ]; then
                     18:       new_host_name=`sed -n -e "s/$1[  ]*name *= *\(.*\)/\1/p" \
                     19:                                                        </tmp/nslookup.$$`
                     20:     else
                     21:       new_host_name=$1
                     22:     fi
                     23:   fi
                     24:   rm /tmp/nslookup.$$
                     25: fi
                     26: if [ x$new_host_name != x ]; then
                     27:   hostname $new_host_name
                     28: fi
                     29: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>