summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-splash/root/etc
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2008-08-07 20:21:38 +0000
committerSteven Barth <steven@midlink.org>2008-08-07 20:21:38 +0000
commitfbae92e522692d9bb34501ad9a805da794a47123 (patch)
tree2cf9e565ee268d4745177726ca29aae569a1876f /applications/luci-splash/root/etc
parente72a526984982f6fa2b6f2ed5ce01523094bfe43 (diff)
modules/admin-full: Added support for interface aliases
Diffstat (limited to 'applications/luci-splash/root/etc')
-rwxr-xr-xapplications/luci-splash/root/etc/init.d/luci_splash19
1 files changed, 12 insertions, 7 deletions
diff --git a/applications/luci-splash/root/etc/init.d/luci_splash b/applications/luci-splash/root/etc/init.d/luci_splash
index ad1a8b107..4761692b3 100755
--- a/applications/luci-splash/root/etc/init.d/luci_splash
+++ b/applications/luci-splash/root/etc/init.d/luci_splash
@@ -7,15 +7,20 @@ iface_add() {
config_get zone "$cfg" zone
[ -n "$zone" ] || return 0
- config_get gw "$cfg" gateway
- [ -n "$gw" ] || return 0
+ config_get net "$cfg" network
+ [ -n "$net" ] || return 0
- iptables -t nat -A zone_${zone}_prerouting -j luci_splash_portal
+ config_get ipaddr "$net" ipaddr
+ [ -n "$ipaddr" ] || return 0
- for i in $gw
- do
- iptables -t nat -A luci_splash_portal -d "$i" -p tcp -m multiport --dports 22,80,443 -j RETURN
- done
+ config_get netmask "$net" netmask
+ [ -n "$netmask" ] || return 0
+
+ eval "$(ipcalc.sh $ipaddr $netmask)"
+
+ iptables -t nat -A zone_${zone}_prerouting -s "$NETWORK/$PREFIX" -p ! tcp -j luci_splash_portal
+ iptables -t nat -A zone_${zone}_prerouting -s "$NETWORK/$PREFIX" -d ! "$ipaddr" -j luci_splash_portal
+ iptables -t nat -A zone_${zone}_prerouting -s "$NETWORK/$PREFIX" -d "$ipaddr" -p tcp -m multiport ! --dport 22,80,443 -j luci_splash_portal
}
blacklist_add() {