# Sample dhcpcd hook for ypbind # This script is only suitable for the Linux version. ypbind_pid() { [ -s /var/run/ypbind.pid ] && cat /var/run/ypbind.pid } make_yp_conf() { [ -z "${new_nis_domain}" -a -z "${new_nis_servers}" ] && return 0 local cf=/etc/yp.conf."${interface}" prefix= x= pid= rm -f "${cf}" echo "${signature}" > "${cf}" if [ -n "${new_nis_domain}" ]; then domainname "${new_nis_domain}" if [ -n "${new_nis_servers}" ]; then prefix="domain ${new_nis_domain} server " else echo "domain ${new_nis_domain} broadcast" >> "${cf}" fi else prefix="ypserver " fi for x in ${new_nis_servers}; do echo "${prefix}${x}" >> "${cf}" done save_conf /etc/yp.conf mv -f "${cf}" /etc/yp.conf pid="$(ypbind_pid)" if [ -n "${pid}" ]; then kill -HUP "${pid}" fi } restore_yp_conf() { [ -n "${old_nis_domain}" ] && domainname "" restore_conf /etc/yp.conf || return 0 local pid="$(ypbind_pid)" if [ -n "${pid}" ]; then kill -HUP "${pid}" fi } case "${reason}" in BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT) make_yp_conf;; EXPIRE|FAIL|IPV4LL|RELEASE|STOP) restore_yp_conf;; esac