# This script runs last, after all network configuration
# has completed. It sets a property to let the framework
# know that setting up the interface is complete.

# For debugging:
setprop dhcp.${interface}.reason "${reason}"

case "${reason}" in
BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT)
    setprop dhcp.${interface}.ipaddress "${new_ip_address}"
    setprop dhcp.${interface}.gateway   "${new_routers%% *}"
    setprop dhcp.${interface}.mask      "${new_subnet_mask}"
    setprop dhcp.${interface}.leasetime "${new_dhcp_lease_time}"
    setprop dhcp.${interface}.server    "${new_dhcp_server_identifier}"

    setprop dhcp.${interface}.result "ok"
    ;;

EXPIRE|FAIL|IPV4LL|STOP)
    setprop dhcp.${interface}.result "failed"
    ;;

RELEASE)
    setprop dhcp.${interface}.result "released"
    ;;
esac
