diff options
Diffstat (limited to 'applications/luci-app-vpnbypass')
7 files changed, 316 insertions, 56 deletions
diff --git a/applications/luci-app-vpnbypass/Makefile b/applications/luci-app-vpnbypass/Makefile index 58b3d30d9c..0ca74ae38a 100644 --- a/applications/luci-app-vpnbypass/Makefile +++ b/applications/luci-app-vpnbypass/Makefile @@ -3,42 +3,14 @@ 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 +LUCI_TITLE:=VPN Bypass Web UI +LUCI_DEPENDS:=+vpnbypass +LUCI_PKGARCH:=all +PKG_RELEASE:=1 -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 +include ../../luci.mk -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))
\ No newline at end of file +# call BuildPackage - OpenWrt buildroot signature diff --git a/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua b/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua index 6becd67914..ed6f4f4da4 100644 --- a/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua +++ b/applications/luci-app-vpnbypass/luasrc/controller/vpnbypass.lua @@ -3,6 +3,5 @@ function index() if not nixio.fs.access("/etc/config/vpnbypass") then return end - entry({"admin", "services", "vpnbypass"}, cbi("vpnbypass"), translate("VPN Bypass"), 1) + entry({"admin", "services", "vpnbypass"}, cbi("vpnbypass"), _("VPN Bypass")) end - diff --git a/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua b/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua index 1957948382..b35a8e4e02 100644 --- a/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua +++ b/applications/luci-app-vpnbypass/luasrc/model/cbi/vpnbypass.lua @@ -1,35 +1,61 @@ -m = Map("vpnbypass", translate("VPN Bypass Settings"), translate("Configuration of VPN Bypass Settings")) +readmeURL = "https://github.com/openwrt/packages/blob/master/net/vpnbypass/files/README.md" + +m = Map("vpnbypass", translate("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 +e = s:option(Flag, "enabled", translate("Enable/start service")) +e.rmempty = false + +function e.cfgvalue(self, section) + return self.map:get(section, "enabled") == "1" and luci.sys.init.enabled("vpnbypass") and self.enabled or self.disabled +end + +function e.write(self, section, value) + if value == "1" then + luci.sys.call("/etc/init.d/vpnbypass enable >/dev/null") + luci.sys.call("/etc/init.d/vpnbypass start >/dev/null") + else + luci.sys.call("/etc/init.d/vpnbypass stop >/dev/null") + end + return Flag.write(self, section, value) +end -- 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 +p1.datatype = "portrange" +-- p1.placeholder = "0-65535" +p1.addremove = false +p1.optional = false -- 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 +p2.datatype = "portrange" +-- p2.placeholder = "0-65535" +p2.addremove = false +p2.optional = false -- 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 +r1 = s:option(DynamicList, "localsubnet", translate("Local IP Addresses to Bypass"), translate("Local IP addresses or subnets with direct internet access (outside of the VPN tunnel)")) +r1.datatype = "ip4addr" +-- r1.placeholder = luci.ip.new(uci.cursor():get("network", "lan", "ipaddr") .. "/" .. uci.cursor():get("network", "lan", "netmask")) +r1.addremove = false +r1.optional = false -- 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 +r2 = s:option(DynamicList, "remotesubnet", translate("Remote IP Addresses to Bypass"), translate("Remote IP addresses or subnets which will be accessed directly (outside of the VPN tunnel)")) +r2.datatype = "ip4addr" +-- r2.placeholder = "0.0.0.0/0" +r2.addremove = false +r2.optional = false -- 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 - +d = Map("dhcp") +s4 = d:section(TypedSection, "dnsmasq") +s4.anonymous = true +di = s4:option(DynamicList, "ipset", translate("Domains to Bypass"), + translate("Domains to be accessed directly (outside of the VPN tunnel), see ") + .. [[<a href="]] .. readmeURL .. [[#bypass-domains-formatsyntax" target="_blank">]] + .. translate("README") .. [[</a>]] .. translate(" for syntax")) + +return m, d diff --git a/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po b/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po new file mode 100644 index 0000000000..9f3fa2a679 --- /dev/null +++ b/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po @@ -0,0 +1,90 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Project-Id-Version: \n" +"POT-Creation-Date: \n" +"PO-Revision-Date: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" +"Last-Translator: Luiz Angelo Daros de Luca <luizluca@gmail.com>\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"Language: pt_BR\n" + +msgid "Domains to Bypass" +msgstr "Domínios para evitar a VPN" + +msgid "Domains to be accessed directly (outside of the VPN tunnel), see" +msgstr "" + +msgid "Enable/start service" +msgstr "" + +msgid "Local IP Addresses to Bypass" +msgstr "" + +msgid "" +"Local IP addresses or subnets with direct internet access (outside of the " +"VPN tunnel)" +msgstr "" + +msgid "Local Ports to Bypass" +msgstr "Portas locais para evitar a VPN" + +msgid "Local ports to trigger VPN Bypass" +msgstr "Portas locais para disparar o VPN Bypass" + +msgid "README" +msgstr "" + +msgid "Remote IP Addresses to Bypass" +msgstr "" + +msgid "" +"Remote IP addresses or subnets which will be accessed directly (outside of " +"the VPN tunnel)" +msgstr "" + +msgid "Remote Ports to Bypass" +msgstr "Portas remotas para evitar a VPN" + +msgid "Remote ports to trigger VPN Bypass" +msgstr "Portas remotas para disparar o VPN Bypass" + +msgid "VPN Bypass" +msgstr "VPN Bypass" + +msgid "VPN Bypass Settings" +msgstr "Configurações do VPN Bypass" + +msgid "for syntax" +msgstr "" + +#~ msgid "Enable VPN Bypass" +#~ msgstr "Habilitar o VPN Bypass" + +#~ msgid "Configuration of VPN Bypass Settings" +#~ msgstr "Configurações do VPN Bypass" + +#~ msgid "Domains which will be accessed directly (outside of the VPN tunnel)" +#~ msgstr "Domínios que serão acessados diretamente (fora do túnel VPN)" + +#~ msgid "Local IP Subnets to Bypass" +#~ msgstr "Subredes IP locais para evitar a VPN" + +#~ msgid "" +#~ "Local IP ranges with direct internet access (outside of the VPN tunnel)" +#~ msgstr "" +#~ "Faixa de endereços IP locais que terão acesso internet direto (fora do " +#~ "túnel VPN)" + +#~ msgid "Remote IP Subnets to Bypass" +#~ msgstr "Subredes IP remotas para evitar a VPN" + +#~ msgid "" +#~ "Remote IP ranges which will be accessed directly (outside of the VPN " +#~ "tunnel)" +#~ msgstr "" +#~ "Faixa de endereços IP remotos que serão acessados diretamente (fora do " +#~ "túnel VPN)" diff --git a/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot b/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot new file mode 100644 index 0000000000..fd92b5e8a8 --- /dev/null +++ b/applications/luci-app-vpnbypass/po/templates/vpnbypass.pot @@ -0,0 +1,51 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8" + +msgid "Domains to Bypass" +msgstr "" + +msgid "Domains to be accessed directly (outside of the VPN tunnel), see" +msgstr "" + +msgid "Enable/start service" +msgstr "" + +msgid "Local IP Addresses to Bypass" +msgstr "" + +msgid "" +"Local IP addresses or subnets with direct internet access (outside of the " +"VPN tunnel)" +msgstr "" + +msgid "Local Ports to Bypass" +msgstr "" + +msgid "Local ports to trigger VPN Bypass" +msgstr "" + +msgid "README" +msgstr "" + +msgid "Remote IP Addresses to Bypass" +msgstr "" + +msgid "" +"Remote IP addresses or subnets which will be accessed directly (outside of " +"the VPN tunnel)" +msgstr "" + +msgid "Remote Ports to Bypass" +msgstr "" + +msgid "Remote ports to trigger VPN Bypass" +msgstr "" + +msgid "VPN Bypass" +msgstr "" + +msgid "VPN Bypass Settings" +msgstr "" + +msgid "for syntax" +msgstr "" diff --git a/applications/luci-app-vpnbypass/po/zh-cn/vpnbypass.po b/applications/luci-app-vpnbypass/po/zh-cn/vpnbypass.po new file mode 100644 index 0000000000..a1539171fc --- /dev/null +++ b/applications/luci-app-vpnbypass/po/zh-cn/vpnbypass.po @@ -0,0 +1,61 @@ +# +# Yangfl <mmyangfl@gmail.com>, 2017. +# +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Last-Translator: Yangfl <mmyangfl@gmail.com>\n" +"Language-Team: <debian-l10n-chinese@lists.debian.org>\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"PO-Revision-Date: 2017-10-29 15:30+0800\n" +"X-Generator: Gtranslator 2.91.7\n" + +msgid "Domains to Bypass" +msgstr "要绕过的域" + +msgid "Domains to be accessed directly (outside of the VPN tunnel), see" +msgstr "要直接访问的域(不使用 VPN 隧道),请参见" + +msgid "Enable/start service" +msgstr "启用/启动服务" + +msgid "Local IP Addresses to Bypass" +msgstr "要绕过的本地 IP 地址" + +msgid "" +"Local IP addresses or subnets with direct internet access (outside of the " +"VPN tunnel)" +msgstr "直接访问的本地 IP 地址或子网(不使用 VPN 隧道)" + +msgid "Local Ports to Bypass" +msgstr "要绕过的本地端口" + +msgid "Local ports to trigger VPN Bypass" +msgstr "触发 VPN 绕过的本地端口" + +msgid "README" +msgstr "README" + +msgid "Remote IP Addresses to Bypass" +msgstr "要绕过的远程 IP 地址" + +msgid "" +"Remote IP addresses or subnets which will be accessed directly (outside of " +"the VPN tunnel)" +msgstr "将直接访问的远程 IP 地址或子网(不使用 VPN 隧道)" + +msgid "Remote Ports to Bypass" +msgstr "要绕过的远程端口" + +msgid "Remote ports to trigger VPN Bypass" +msgstr "触发 VPN 绕过的远程端口" + +msgid "VPN Bypass" +msgstr "VPN 绕过" + +msgid "VPN Bypass Settings" +msgstr "VPN 绕过设置" + +msgid "for syntax" +msgstr "对于语法" diff --git a/applications/luci-app-vpnbypass/po/zh-tw/vpnbypass.po b/applications/luci-app-vpnbypass/po/zh-tw/vpnbypass.po new file mode 100644 index 0000000000..90ba85f7ce --- /dev/null +++ b/applications/luci-app-vpnbypass/po/zh-tw/vpnbypass.po @@ -0,0 +1,61 @@ +# +# Yangfl <mmyangfl@gmail.com>, 2017. +# +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Last-Translator: Yangfl <mmyangfl@gmail.com>\n" +"Language-Team: <debian-l10n-chinese@lists.debian.org>\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"PO-Revision-Date: 2017-10-29 15:30+0800\n" +"X-Generator: Gtranslator 2.91.7\n" + +msgid "Domains to Bypass" +msgstr "要繞過的域" + +msgid "Domains to be accessed directly (outside of the VPN tunnel), see" +msgstr "要直接訪問的域(不使用 VPN 隧道),請參見" + +msgid "Enable/start service" +msgstr "啟用/啟動服務" + +msgid "Local IP Addresses to Bypass" +msgstr "要繞過的本地 IP 位址" + +msgid "" +"Local IP addresses or subnets with direct internet access (outside of the " +"VPN tunnel)" +msgstr "直接訪問的本地 IP 位址或子網(不使用 VPN 隧道)" + +msgid "Local Ports to Bypass" +msgstr "要繞過的本地埠" + +msgid "Local ports to trigger VPN Bypass" +msgstr "觸發 VPN 繞過的本地埠" + +msgid "README" +msgstr "README" + +msgid "Remote IP Addresses to Bypass" +msgstr "要繞過的遠端 IP 位址" + +msgid "" +"Remote IP addresses or subnets which will be accessed directly (outside of " +"the VPN tunnel)" +msgstr "將直接訪問的遠端 IP 位址或子網(不使用 VPN 隧道)" + +msgid "Remote Ports to Bypass" +msgstr "要繞過的遠端埠" + +msgid "Remote ports to trigger VPN Bypass" +msgstr "觸發 VPN 繞過的遠端埠" + +msgid "VPN Bypass" +msgstr "VPN 繞過" + +msgid "VPN Bypass Settings" +msgstr "VPN 繞過設定" + +msgid "for syntax" +msgstr "對於語法" |