From: Jo-Philipp Wich Date: Mon, 2 Jun 2008 01:49:51 +0000 (+0000) Subject: * luci/statistics: add init script X-Git-Tag: 0.8.0~929 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=9f4428eefca7e5f4400fcbba57a7185519631628;p=oweals%2Fluci.git * luci/statistics: add init script --- diff --git a/applications/luci-statistics/luasrc/view/public_statistics/graph.htm b/applications/luci-statistics/luasrc/view/public_statistics/graph.htm index effe0c401..33678bdcb 100644 --- a/applications/luci-statistics/luasrc/view/public_statistics/graph.htm +++ b/applications/luci-statistics/luasrc/view/public_statistics/graph.htm @@ -3,7 +3,7 @@

Statistik

<% for i, img in ipairs(images) do %> - + <% end %> <%+footer%> diff --git a/applications/luci-statistics/root/etc/init.d/luci_statistics b/applications/luci-statistics/root/etc/init.d/luci_statistics index 20f7865fd..68a5cf97a 100644 --- a/applications/luci-statistics/root/etc/init.d/luci_statistics +++ b/applications/luci-statistics/root/etc/init.d/luci_statistics @@ -1,85 +1,20 @@ #!/bin/sh /etc/rc.common -START=70 - -iface_add() { - local cfg="$1" - - config_get net "$cfg" network - [ -n "$net" ] || return 0 - - config_get iface "$net" ifname - [ -n "$iface" ] || return 0 - iface="${iface%%:*}" - - config_get ipaddr "$net" ipaddr - [ -n "$ipaddr" ] || return 0 - - config_get netmask "$net" netmask - [ -n "$netmask" ] || return 0 - - eval "$(ipcalc.sh $ipaddr $netmask)" - - iptables -t nat -A luci_splash -i "$iface" -s "$NETWORK/$PREFIX" -j luci_splash_portal - iptables -t nat -A luci_splash_portal -i "$iface" -s "$NETWORK/$PREFIX" -d "$ipaddr" -p tcp -m multiport --dports 22,80,443 -j RETURN -} - -blacklist_add() { - local cfg="$1" - - config_get mac "$cfg" mac - [ -n "$mac" ] && iptables -t nat -A luci_splash_portal -m mac --mac-source "$mac" -j DROP -} - -whitelist_add() { - local cfg="$1" - - config_get mac "$cfg" mac - [ -n "$mac" ] && iptables -t nat -A luci_splash_portal -m mac --mac-source "$mac" -j RETURN -} +START=79 start() { - ### Read chains from config - include /lib/network - scan_interfaces - config_load luci_splash - - ### Create subchains - iptables -t nat -N luci_splash - iptables -t nat -N luci_splash_portal - iptables -t nat -N luci_splash_leases - - ### Build the main and portal rule - config_foreach blacklist_add blacklist - config_foreach whitelist_add whitelist - config_foreach iface_add iface - - ### Build the portal rule - iptables -t nat -A luci_splash_portal -p udp --dport 53 -j RETURN - iptables -t nat -A luci_splash_portal -j luci_splash_leases - - ### Build the leases rule - iptables -t nat -A luci_splash_leases -p tcp --dport 80 -j REDIRECT --to-ports 8082 - iptables -t nat -A luci_splash_leases -j DROP - - ### Start the splash httpd - httpd -c /etc/luci_splash_httpd.conf -p 8082 -h /usr/lib/luci-splash/htdocs - - ### Hook in the chain - iptables -t nat -A prerouting_rule -j luci_splash -} + ### replace shipped config with symlink + if [ ! -L /etc/collectd.conf ]; then + test -f /etc/collectd.conf && mv /etc/collectd.conf /etc/collectd.conf.bak + ln -s /var/etc/collectd.conf /etc/collectd.conf + fi -stop() { - ### Hook out the chain - iptables -t nat -D prerouting_rule -j luci_splash - - ### Clear subchains - iptables -t nat -F luci_splash_leases - iptables -t nat -F luci_splash_portal - iptables -t nat -F luci_splash - - ### Delete subchains - iptables -t nat -X luci_splash_leases - iptables -t nat -X luci_splash_portal - iptables -t nat -X luci_splash -} + ### create config + mkdir -p /var/etc + /usr/bin/stat-genconfig > /var/etc/collectd.conf + ### prepare rrdimg directory + if [ ! -L /www/rrdimg ]; then + imagepath="$(uci get luci_statistics.rrdtool.image_path)" + ln -s ${imagepath:-/tmp/rrdimg}/ /www/rrdimg + fi +}