#!/bin/sh /etc/rc.common
START=59

apply_host() {
	local cfg="$1"

	config_get hostname "$cfg" hostname
	config_get ipaddr   "$cfg" ipaddr

	[ -n "$hostname" -a -n "$ipaddr" ] || return 0

	echo "$ipaddr $hostname" >> /var/etc/hosts
}

start() {
	if [ ! -L /etc/hosts ]; then
		test -f /etc/hosts && mv /etc/hosts /etc/hosts.local
		ln -s /var/etc/hosts /etc/hosts
	fi

	echo "# This file is autogenerated, use /etc/hosts.local instead" > /var/etc/hosts

	test -d /var/etc || mkdir -p /var/etc
	test -f /etc/hosts.local && cat /etc/hosts.local >> /var/etc/hosts

	config_load luci_hosts
	config_foreach apply_host host

	return 0
}

stop() {
	test -f /var/etc/hosts && rm -f /var/etc/hosts

	return 0
}