1 # Set the hostname from DHCP data if required 2 3 need_hostname() 4 { 5 case "$(hostname)" in 6 ""|"(none)"|localhost|localhost.localdomain) 7 [ -n "${new_host_name}" -o -n "${new_fqdn_name}" ];; 8 "${old_host_name}"|"${old_fqdn_name}") 9 true;; 10 *) 11 false;; 12 esac 13 } 14 15 set_hostname() 16 { 17 if need_hostname; then 18 if [ -n "${new_host_name}" ]; then 19 hostname "${new_host_name}" 20 else 21 hostname "${new_fqdn_name}" 22 fi 23 fi 24 } 25 26 case "${reason}" in 27 BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT) set_hostname;; 28 esac 29