Merge pull request #977 from stangri/luci-app-vpnbypass
luci-app-vpnbypass: initial commit of companion app to vpnbypass package
This commit is contained in:
commit
4e6010cd73
4 changed files with 98 additions and 0 deletions
44
applications/luci-app-vpnbypass/Makefile
Normal file
44
applications/luci-app-vpnbypass/Makefile
Normal file
|
@ -0,0 +1,44 @@
|
|||
# Copyright (c) 2017 Stan Grishin (stangri@melmac.net)
|
||||
# This is free software, licensed under the GNU General Public License v3.
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-vpnbypass
|
||||
PKG_VERSION:=1.0.0
|
||||
PKG_RELEASE:=3
|
||||
PKG_LICENSE:=GPL-3.0+
|
||||
PKG_MAINTAINER:=Stan Grishin <stangri@melmac.net>
|
||||
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/luci-app-vpnbypass
|
||||
SECTION:=luci
|
||||
CATEGORY:=LuCI
|
||||
SUBMENU:=3. Applications
|
||||
TITLE:=VPN Bypass Web UI
|
||||
DEPENDS:=+luci-mod-admin-full +vpnbypass
|
||||
PKGARCH:=all
|
||||
endef
|
||||
|
||||
define Package/luci-app-vpnbypass/description
|
||||
This package will install VPN Bypass Web UI.
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
endef
|
||||
|
||||
define Build/Configure
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
endef
|
||||
|
||||
define Package/luci-app-vpnbypass/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/lua/luci/controller/
|
||||
$(INSTALL_BIN) ./luasrc/controller/vpnbypass.lua $(1)/usr/lib/lua/luci/controller/vpnbypass.lua
|
||||
$(INSTALL_DIR) $(1)/usr/lib/lua/luci/model/cbi/
|
||||
$(INSTALL_BIN) ./luasrc/model/cbi/vpnbypass.lua $(1)/usr/lib/lua/luci/model/cbi/vpnbypass.lua
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,luci-app-vpnbypass))
|
|
@ -0,0 +1,8 @@
|
|||
module("luci.controller.vpnbypass", package.seeall)
|
||||
function index()
|
||||
if not nixio.fs.access("/etc/config/vpnbypass") then
|
||||
return
|
||||
end
|
||||
entry({"admin", "services", "vpnbypass"}, cbi("vpnbypass"), translate("VPN Bypass"), 1)
|
||||
end
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
m = Map("vpnbypass", translate("VPN Bypass Settings"), translate("Configuration of VPN Bypass Settings"))
|
||||
s = m:section(NamedSection, "config", "vpnbypass")
|
||||
|
||||
-- General options
|
||||
o1 = s:option(Flag, "enabled", translate("Enable VPN Bypass"))
|
||||
o1.rmempty = false
|
||||
o1.default = 0
|
||||
|
||||
-- Local Ports
|
||||
p1 = s:option(DynamicList, "localport", translate("Local Ports to Bypass"), translate("Local ports to trigger VPN Bypass"))
|
||||
p1.addremove = true
|
||||
p1.optional = true
|
||||
|
||||
-- Remote Ports
|
||||
p2 = s:option(DynamicList, "remoteport", translate("Remote Ports to Bypass"), translate("Remote ports to trigger VPN Bypass"))
|
||||
p2.addremove = true
|
||||
p2.optional = true
|
||||
|
||||
-- Local Subnets
|
||||
r1 = s:option(DynamicList, "localsubnet", translate("Local IP Subnets to Bypass"), translate("Local IP ranges with direct internet access (outside of the VPN tunnel)"))
|
||||
r1.addremove = true
|
||||
r1.optional = true
|
||||
|
||||
-- Remote Subnets
|
||||
r2 = s:option(DynamicList, "remotesubnet", translate("Remote IP Subnets to Bypass"), translate("Remote IP ranges which will be accessed directly (outside of the VPN tunnel)"))
|
||||
r2.addremove = true
|
||||
r2.optional = true
|
||||
|
||||
-- Domains
|
||||
d1 = s:option(DynamicList, "domain", translate("Domains to Bypass"), translate("Domains which will be accessed directly (outside of the VPN tunnel)"))
|
||||
d1.addremove = true
|
||||
d1.optional = true
|
||||
|
||||
return m
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
delete ucitrack.@vpnbypass[-1]
|
||||
add ucitrack vpnbypass
|
||||
set ucitrack.@vpnbypass[-1].init=vpnbypass
|
||||
commit ucitrack
|
||||
EOF
|
||||
|
||||
rm -f /tmp/luci-indexcache
|
||||
exit 0
|
||||
|
Loading…
Reference in a new issue