flm01/openwrt/packages/luci/host/etc/init.d/luci_hosts

37 lines
703 B
Bash
Executable File

#!/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
}