diff options
Diffstat (limited to 'applications/luci-coovachilli/luasrc')
5 files changed, 280 insertions, 0 deletions
diff --git a/applications/luci-coovachilli/luasrc/controller/chillispot.lua b/applications/luci-coovachilli/luasrc/controller/chillispot.lua new file mode 100644 index 000000000..4cb9797b2 --- /dev/null +++ b/applications/luci-coovachilli/luasrc/controller/chillispot.lua @@ -0,0 +1,26 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- +module("luci.controller.chillispot", package.seeall) + +function index() + + require("luci.i18n") + local i18n = luci.i18n.translate + + entry( { "admin", "services", "chillispot" }, cbi("chillispot"), i18n("chillispot", "ChilliSpot"), 90) + entry( { "admin", "services", "chillispot", "network" }, cbi("chillispot_network"), i18n("chillispot_network", "Network Configuration"), 10) + entry( { "admin", "services", "chillispot", "radius" }, cbi("chillispot_radius"), i18n("chillispot_radius", "Radius Configuration"), 20) + entry( { "admin", "services", "chillispot", "auth" }, cbi("chillispot_auth"), i18n("chillispot_auth", "UAM and MAC Authentication"), 30) + +end diff --git a/applications/luci-coovachilli/luasrc/model/cbi/chillispot.lua b/applications/luci-coovachilli/luasrc/model/cbi/chillispot.lua new file mode 100644 index 000000000..48ec797f1 --- /dev/null +++ b/applications/luci-coovachilli/luasrc/model/cbi/chillispot.lua @@ -0,0 +1,38 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- + + +m = Map("chillispot") + +-- general +s1 = m:section(TypedSection, "general") +s1.anonymous = true + +s1:option( Flag, "debug" ) +s1:option( Value, "interval" ) +s1:option( Value, "pidfile" ).optional = true +s1:option( Value, "statedir" ).optional = true +s1:option( Value, "cmdsock" ).optional = true +s1:option( Value, "logfacility" ).optional = true + +-- remote config management +s2 = m:section(TypedSection, "remoteconfig") +s2.anonymous = true + +s2:option( Value, "confusername" ) +s2:option( Value, "confpassword" ) + + +return m diff --git a/applications/luci-coovachilli/luasrc/model/cbi/chillispot_auth.lua b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_auth.lua new file mode 100644 index 000000000..8f033f070 --- /dev/null +++ b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_auth.lua @@ -0,0 +1,76 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- + + +m = Map("chillispot") + +-- uam config +s1 = m:section(TypedSection, "uam") +s1.anonymous = true + +s1:option( Value, "uamserver" ) +s1:option( Value, "uamsecret" ).password = true + +s1:option( Flag, "uamanyip" ) +s1:option( Flag, "uamanydns" ) +s1:option( Flag, "dnsparanoia" ) +s1:option( Flag, "nouamsuccess" ) +s1:option( Flag, "nouamwispr" ) +s1:option( Flag, "usestatusfile" ) +s1:option( Flag, "chillixml" ) + +s1:option( Value, "uamhomepage" ).optional = true +s1:option( Value, "uamlisten" ).optional = true +s1:option( Value, "uamport" ).optional = true +s1:option( Value, "uamiport" ).optional = true +s1:option( Value, "uamdomain" ).optional = true +s1:option( Value, "uamlogoutip" ).optional = true +s1:option( DynamicList, "uamallowed" ).optional = true +s1:option( Value, "uamui" ).optional = true + +s1:option( Value, "wisprlogin" ).optional = true + +s1:option( Value, "defsessiontimeout" ).optional = true +s1:option( Value, "defidletimeout" ).optional = true +s1:option( Value, "definteriminterval" ).optional = true + +s1:option( Value, "ssid" ).optional = true +s1:option( Value, "vlan" ).optional = true +s1:option( Value, "nasip" ).optional = true +s1:option( Value, "nasmac" ).optional = true +s1:option( Value, "wwwdir" ).optional = true +s1:option( Value, "wwwbin" ).optional = true + +s1:option( Value, "localusers" ).optional = true +s1:option( Value, "postauthproxy" ).optional = true +s1:option( Value, "postauthproxyport" ).optional = true +s1:option( Value, "locationname" ).optional = true + + +-- mac authentication +s2 = m:section(TypedSection, "macauth") +s2.anonymous = true + +s2:option( Flag, "macauth" ) +s2:option( Flag, "macallowlocal" ) +s2:option( DynamicList, "macallowed" ) + +pw = s2:option( Value, "macpasswd" ) +pw.optional = true +pw.password = true + +s2:option( Value, "macsuffix" ).optional = true + +return m diff --git a/applications/luci-coovachilli/luasrc/model/cbi/chillispot_network.lua b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_network.lua new file mode 100644 index 000000000..e26f32e1a --- /dev/null +++ b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_network.lua @@ -0,0 +1,71 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- + +require("luci.sys") +require("luci.ip") + +m = Map("chillispot") + +-- tun +s1 = m:section(TypedSection, "tun") +s1.anonymous = true + +s1:option( Flag, "usetap" ) +s1:option( Value, "tundev" ).optional = true +s1:option( Value, "txqlen" ).optional = true + +net = s1:option( Value, "net" ) +for _, route in ipairs(luci.sys.net.routes()) do + if route.Iface ~= "lo" and route.Mask ~= "FFFFFFFF" then + local netmask = luci.ip.IPv4(route.Mask) + if netmask then + local netaddr = luci.ip.IPv4(route.Destination, netmask) + if netaddr then + net:value( netaddr:string() ) + end + end + end +end + +s1:option( Value, "dynip" ).optional = true +s1:option( Value, "statip" ).optional = true + +s1:option( Value, "dns1" ).optional = true +s1:option( Value, "dns2" ).optional = true +s1:option( Value, "domain" ).optional = true + +s1:option( Value, "ipup" ).optional = true +s1:option( Value, "ipdown" ).optional = true + +s1:option( Value, "conup" ).optional = true +s1:option( Value, "condown" ).optional = true + + +-- dhcp config +s2 = m:section(TypedSection, "dhcp") +s2.anonymous = true + +dif = s2:option( Value, "dhcpif" ) +for _, nif in ipairs(luci.sys.net.devices()) do + if nif ~= "lo" then dif:value(nif) end +end + +s2:option( Value, "dhcpmac" ).optional = true +s2:option( Value, "lease" ).optional = true +s2:option( Value, "dhcpstart" ).optional = true +s2:option( Value, "dhcpend" ).optional = true + + +return m diff --git a/applications/luci-coovachilli/luasrc/model/cbi/chillispot_radius.lua b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_radius.lua new file mode 100644 index 000000000..568c92f83 --- /dev/null +++ b/applications/luci-coovachilli/luasrc/model/cbi/chillispot_radius.lua @@ -0,0 +1,69 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +$Id$ +]]-- + + +m = Map("chillispot") + +-- radius server +s1 = m:section(TypedSection, "radius") +s1.anonymous = true + +s1:option( Value, "radiusserver1" ) +s1:option( Value, "radiusserver2" ) +s1:option( Value, "radiussecret" ).password = true + +s1:option( Value, "radiuslisten" ).optional = true +s1:option( Value, "radiusauthport" ).optional = true +s1:option( Value, "radiusacctport" ).optional = true + +s1:option( Value, "radiusnasid" ).optional = true +s1:option( Value, "radiusnasip" ).optional = true + +s1:option( Value, "radiuscalled" ).optional = true +s1:option( Value, "radiuslocationid" ).optional = true +s1:option( Value, "radiuslocationname" ).optional = true + +s1:option( Value, "radiusnasporttype" ).optional = true + +s1:option( Flag, "radiusoriginalurl" ) + +s1:option( Value, "adminuser" ).optional = true +rs = s1:option( Value, "adminpassword" ) +rs.optional = true +rs.password = true + +s1:option( Flag, "swapoctets" ) +s1:option( Flag, "openidauth" ) +s1:option( Flag, "wpaguests" ) +s1:option( Flag, "acctupdate" ) + +s1:option( Value, "coaport" ).optional = true +s1:option( Flag, "coanoipcheck" ) + +s1:option( Flag, "eapolenable" ).optional = true + + +-- radius proxy +s2 = m:section(TypedSection, "proxy") +s2.anonymous = true + +s2:option( Value, "proxylisten" ).optional = true +s2:option( Value, "proxyport" ).optional = true +s2:option( Value, "proxyclient" ).optional = true +ps = s2:option( Value, "proxysecret" ) +ps.optional = true +ps.password = true + +return m |