type dhcpcd &> /dev/null || return dhcpcd_start() { if [[ $1 != "4" ]]; then report_error "Using 'dhcpcd' for IPv6 is currently not possible in netctl" return 1 fi # If using own dns, tell dhcpcd to NOT replace resolv.conf [[ $DNS ]] && DhcpcdOptions+=" -C resolv.conf" do_debug do_readable dhcpcd -4qL -t "${TimeoutDHCP:-30}" $DhcpcdOptions "$Interface" |& report_debug "$(cat)" # The first array value of PIPESTATUS is the exit status of dhcpcd if (( PIPESTATUS != 0 )); then report_error "DHCP IP lease attempt failed on interface '$Interface'" return 1 fi } dhcpcd_stop() { local stop="-x" if [[ -f "/run/dhcpcd-$Interface.pid" ]]; then is_yes "${DHCPReleaseOnStop:-no}" && stop="-k" do_debug dhcpcd -q $stop "$Interface" > /dev/null fi } # vim: ft=sh ts=4 et sw=4: