Backported Tinyproxy application

This commit is contained in:
Steven Barth 2008-10-03 16:28:28 +00:00
parent e729187444
commit 35f3c60956
9 changed files with 264 additions and 0 deletions

View file

@ -0,0 +1,2 @@
include ../../build/config.mk
include ../../build/module.mk

View file

@ -0,0 +1,25 @@
--[[
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$
]]--
module("luci.controller.tinyproxy", package.seeall)
function index()
if not luci.fs.isfile("/etc/config/tinyproxy") then
return
end
local page = entry({"admin", "services", "tinyproxy"}, cbi("tinyproxy"), "Tinyproxy")
page.dependent = true
page.i18n = "tinyproxy"
end

View file

@ -0,0 +1,32 @@
tinyproxy = 'Tinyproxy'
tinyproxy_desc = 'Tinyproxy ist ein schlanker HTTP(S)-Proxy ohne Zwischenspeicher'
tinyproxy_tinyproxy_allow = 'Proxyzugang erlauben von'
tinyproxy_tinyproxy_anonymous = 'Erlaube Header für anonymen Proxy'
tinyproxy_tinyproxy_bind = 'Ausgehendenden Verkehr an Adresse binden'
tinyproxy_tinyproxy_connectport = 'Ports für CONNECT-Methode'
tinyproxy_tinyproxy_connectport_desc = '0 = deaktiviert, leer = alle'
tinyproxy_tinyproxy_defaulterrorfile = 'Fehlerseite'
tinyproxy_tinyproxy_filter = 'Filterliste'
tinyproxy_tinyproxy_filtercasesensitive = 'Filter unterscheiden Groß-/Kleinschreibung'
tinyproxy_tinyproxy_filterdefaultdeny = 'Filterliste ist eine Whitelist'
tinyproxy_tinyproxy_filterextended = 'Erweiterte reguläre Ausdrücke für Filter'
tinyproxy_tinyproxy_filterurls = 'Filtere URLs statt Domains'
tinyproxy_tinyproxy_listen = 'An Adresse binden'
tinyproxy_tinyproxy_logfile = 'Protokolldatei'
tinyproxy_tinyproxy_loglevel = 'Protokolllevel'
tinyproxy_tinyproxy_maxclients = 'Maximale Anzahl an Clients'
tinyproxy_tinyproxy_maxrequestsperchild = 'Maximale Anfragen pro Prozess'
tinyproxy_tinyproxy_maxspareservers = 'Max. Prozesszahl'
tinyproxy_tinyproxy_minspareservers = 'Min. Prozesszahl'
tinyproxy_tinyproxy_startservers = 'Anfängliche Prozesszahl'
tinyproxy_tinyproxy_statfile = 'Statistikseite'
tinyproxy_tinyproxy_syslog = 'In Systemprotokoll schreiben'
tinyproxy_tinyproxy_timeout = 'Verbindungstimeout'
tinyproxy_tinyproxy_viaproxyname = 'Wert des Via-Headers'
tinyproxy_tinyproxy_xtinyproxy = 'Client-IP übertragen'
tinyproxy_type_proxy = 'Über Proxy'
tinyproxy_type_reject = 'Verbiete Zugriff'
tinyproxy_upstream = 'Zugangskontrolle'
tinyproxy_upstream_target = 'Zielhost'
tinyproxy_upstream_type = 'Methode'
tinyproxy_upstream_via = 'Zugangsproxy'

View file

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<i18n:msgs xmlns:i18n="http://luci.freifunk-halle.net/2008/i18n#" xmlns="http://www.w3.org/1999/xhtml">
<i18n:msg xml:id="tinyproxy">Tinyproxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_desc">Tinyproxy ist ein schlanker HTTP(S)-Proxy ohne Zwischenspeicher</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_allow">Proxyzugang erlauben von</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_anonymous">Erlaube Header für anonymen Proxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_bind">Ausgehendenden Verkehr an Adresse binden</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_connectport">Ports für CONNECT-Methode</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_connectport_desc">0 = deaktiviert, leer = alle</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_defaulterrorfile">Fehlerseite</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filter">Filterliste</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filtercasesensitive">Filter unterscheiden Groß-/Kleinschreibung</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterdefaultdeny">Filterliste ist eine Whitelist</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterextended">Erweiterte reguläre Ausdrücke für Filter</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterurls">Filtere URLs statt Domains</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_listen">An Adresse binden</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_logfile">Protokolldatei</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_loglevel">Protokolllevel</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxclients">Maximale Anzahl an Clients</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxrequestsperchild">Maximale Anfragen pro Prozess</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxspareservers">Max. Prozesszahl</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_minspareservers">Min. Prozesszahl</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_startservers">Anfängliche Prozesszahl</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_statfile">Statistikseite</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_syslog">In Systemprotokoll schreiben</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_timeout">Verbindungstimeout</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_viaproxyname">Wert des Via-Headers</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_xtinyproxy">Client-IP übertragen</i18n:msg>
<i18n:msg xml:id="tinyproxy_type_proxy">Über Proxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_type_reject">Verbiete Zugriff</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream">Zugangskontrolle</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_target">Zielhost</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_type">Methode</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_via">Zugangsproxy</i18n:msg>
</i18n:msgs>

View file

@ -0,0 +1,32 @@
tinyproxy = 'Tinyproxy'
tinyproxy_desc = 'Tinyproxy is a small and fast non-caching HTTP(S)-Proxy'
tinyproxy_tinyproxy_allow = 'Allow access from'
tinyproxy_tinyproxy_anonymous = 'Allowed headers for anonymous proxy'
tinyproxy_tinyproxy_bind = 'Bind outgoing traffic to address'
tinyproxy_tinyproxy_connectport = 'Ports allowed for CONNECT method'
tinyproxy_tinyproxy_connectport_desc = '0 = disabled, empty = all'
tinyproxy_tinyproxy_defaulterrorfile = 'Error document'
tinyproxy_tinyproxy_filter = 'Filter list'
tinyproxy_tinyproxy_filtercasesensitive = 'Case sensitive filters'
tinyproxy_tinyproxy_filterdefaultdeny = 'Filter list is a whitelist'
tinyproxy_tinyproxy_filterextended = 'Extended regular expression filters'
tinyproxy_tinyproxy_filterurls = 'Filter URLs instead of domains'
tinyproxy_tinyproxy_listen = 'Listen on address'
tinyproxy_tinyproxy_logfile = 'Logfile'
tinyproxy_tinyproxy_loglevel = 'Log level'
tinyproxy_tinyproxy_maxclients = 'Maximum number of clients'
tinyproxy_tinyproxy_maxrequestsperchild = 'Maximum requests per thread'
tinyproxy_tinyproxy_maxspareservers = 'Max. spare servers'
tinyproxy_tinyproxy_minspareservers = 'Min. spare servers'
tinyproxy_tinyproxy_startservers = 'Spare servers to start with'
tinyproxy_tinyproxy_statfile = 'Statistic document'
tinyproxy_tinyproxy_syslog = 'Write to syslog'
tinyproxy_tinyproxy_timeout = 'Connection Timeout'
tinyproxy_tinyproxy_viaproxyname = 'Value of Via-Header'
tinyproxy_tinyproxy_xtinyproxy = 'Include client IP'
tinyproxy_type_proxy = 'Via proxy'
tinyproxy_type_reject = 'Reject access'
tinyproxy_upstream = 'Upstream Control'
tinyproxy_upstream_target = 'Target host'
tinyproxy_upstream_type = 'Type'
tinyproxy_upstream_via = 'Upstream Proxy'

View file

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<i18n:msgs xmlns:i18n="http://luci.freifunk-halle.net/2008/i18n#" xmlns="http://www.w3.org/1999/xhtml">
<i18n:msg xml:id="tinyproxy">Tinyproxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_desc">Tinyproxy is a small and fast non-caching HTTP(S)-Proxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_allow">Allow access from</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_anonymous">Allowed headers for anonymous proxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_bind">Bind outgoing traffic to address</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_connectport">Ports allowed for CONNECT method</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_connectport_desc">0 = disabled, empty = all</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_defaulterrorfile">Error document</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filter">Filter list</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filtercasesensitive">Case sensitive filters</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterdefaultdeny">Filter list is a whitelist</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterextended">Extended regular expression filters</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_filterurls">Filter URLs instead of domains</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_listen">Listen on address</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_logfile">Logfile</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_loglevel">Log level</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxclients">Maximum number of clients</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxrequestsperchild">Maximum requests per thread</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_maxspareservers">Max. spare servers</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_minspareservers">Min. spare servers</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_startservers">Spare servers to start with</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_statfile">Statistic document</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_syslog">Write to syslog</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_timeout">Connection Timeout</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_viaproxyname">Value of Via-Header</i18n:msg>
<i18n:msg xml:id="tinyproxy_tinyproxy_xtinyproxy">Include client IP</i18n:msg>
<i18n:msg xml:id="tinyproxy_type_proxy">Via proxy</i18n:msg>
<i18n:msg xml:id="tinyproxy_type_reject">Reject access</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream">Upstream Control</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_target">Target host</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_type">Type</i18n:msg>
<i18n:msg xml:id="tinyproxy_upstream_via">Upstream Proxy</i18n:msg>
</i18n:msgs>

View file

@ -0,0 +1,80 @@
--[[
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("tinyproxy", translate("tinyproxy"), translate("tinyproxy_desc"))
s = m:section(TypedSection, "tinyproxy", translate("general"))
s.anonymous = true
s:option(Flag, "enable", translate("enable"))
s:option(Value, "Port", translate("port"))
s:option(Value, "Listen").optional = true
s:option(Value, "Bind").optional = true
s:option(Value, "Timeout").optional = true
s:option(Value, "DefaultErrorFile").optional = true
s:option(Value, "StatFile").optional = true
s:option(Flag, "Syslog").optional = true
f = s:option(Value, "Logfile")
f.optional = true
l = s:option(ListValue, "LogLevel")
l.optional = true
l:value("Critical")
l:value("Error")
l:value("Warning")
l:value("Notice")
l:value("Connect")
l:value("Info")
s:option(DynamicList, "XTinyproxy").optional = true
s:option(DynamicList, "Allow")
s:option(Value, "ViaProxyName")
s:option(FileUpload, "Filter")
s:option(Flag, "FilterURLs")
s:option(Flag, "FilterExtended")
s:option(Flag, "FilterCaseSensitive")
s:option(Flag, "FilterDefaultDeny")
s:option(DynamicList, "Anonymous")
s:option(DynamicList, "ConnectPort")
s:option(Value, "User").optional = true
s:option(Value, "Group").optional = true
s:option(Value, "MaxClients").optional = true
s:option(Value, "MinSpareServers").optional = true
s:option(Value, "MaxSpareServers").optional = true
s:option(Value, "StartServers").optional = true
s:option(Value, "MaxRequestsPerChild").optional = true
s = m:section(TypedSection, "upstream")
s.anonymous = true
s.addremove = true
t = s:option(ListValue, "type")
t:value("proxy", translate("tinyproxy_type_proxy"))
t:value("reject", translate("tinyproxy_type_reject"))
ta = s:option(Value, "target")
ta.rmempty = true
v = s:option(Value, "via")
v:depends({type="proxy"})
return m

View file

@ -408,6 +408,16 @@ define Package/luci-app-hd_idle/install
$(call Package/luci/install/template,$(1),applications/luci-hd_idle)
endef
define Package/luci-app-tinyproxy
$(call Package/luci/webtemplate)
DEPENDS+=+luci-admin-full +tinyproxy
TITLE:=Tinyproxy - HTTP(S)-Proxy
endef
define Package/luci-app-tinyproxy/install
$(call Package/luci/install/template,$(1),applications/luci-tinyproxy)
endef
### Server Gateway Interfaces ###
@ -564,6 +574,9 @@ endif
ifneq ($(CONFIG_PACKAGE_luci-app-hd_idle),)
PKG_SELECTED_MODULES+=applications/luci-hd_idle
endif
ifneq ($(CONFIG_PACKAGE_luci-app-tinyproxy),)
PKG_SELECTED_MODULES+=applications/luci-tinyproxy
endif
ifneq ($(CONFIG_PACKAGE_luci-sgi-cgi),)
@ -628,6 +641,7 @@ $(eval $(call BuildPackage,luci-app-uvc_streamer))
$(eval $(call BuildPackage,luci-app-p910nd))
$(eval $(call BuildPackage,luci-app-ushare))
$(eval $(call BuildPackage,luci-app-hd_idle))
$(eval $(call BuildPackage,luci-app-tinyproxy))
$(eval $(call BuildPackage,luci-sgi-cgi))

View file

@ -50,3 +50,6 @@ config ntpclient
config samba
option init samba
config tinyproxy
option init tinyproxy