Commit graph

89 commits

Author SHA1 Message Date
Jo-Philipp Wich
fb817df836 openwrt-18.06: merge master
Due to a huge number of fixes and diverging development histories, I decided
to completely merge the current LuCI master into the 18.06 release branch to
have a common code base for upcoming maintenance releases.

Some LuCI apps have minor style glitches yet but I do not deem them to be
release critical as non-default components need to be opkg-installed anyway
and the package repositories are continuously refreshed, so we do not need
to fix everything for OpenWrt 18.06.0-rc2.

The most important changes introduced by this merge are:

1) New HTTP handling library in C

  The new library should vastly reduce the required RAM for processing
  large POST bodies while implementing some slightly more strict parsing
  logic.

2) Apply/Rollback workflow

  The ubus rpcd based apply/rollback handling will automatically revert
  config changes if access to the device is lost for a certain period
  of time, this is mainly intended for preventing issues with bad
  config settings and the like.

  The feature is not 100% error-proof yet but it successfully prevents a
  large number of issues already. For final, the handling of the firewall
  conntrack cache needs to be fixed yet as adding "lockout" firewall rules
  is not yet catched due to the open HTTP session allowed by netfilter
  conntrack

3) Template markup and theme style modifications

  A large number of changes have been made to the markup in the various
  templates, mainly to allow for responsive styling of tables.

  The only theme currently making full use of that is the non-default
  OpenWrt theme which will break table rows into disjunct boxes on
  very narrow screens.

  The changes have been tested on IE 11, MS Edge, Firefox, Chrome, an
  iPhone 5s, iPhone 6 and iPad Air.

4) Initial LuCI support for displaying virtual dynamic network interfaces

  Some protocol handlers will spawn purely dynamic sub-interfaces which
  are not present in UCI. Such interfaces have been invisible in LuCI so
  far which caused confusion especialy wrt. missing IP addresses etc.

  LuCI will now display such dynamic interfaces on the interface overview.

5) Initial LuCI support for display interface runtime error information

  LuCI will now expose interface error information stored in the ubus
  runtime information by protocol handlers.

  This is mainly useful to get notified of low level problems like
  bad SIM codes are missing APN information.

6) Various XSS and CSRF bypass fixes

  A number of code places performing inadequate markup escaping have been
  fixed and the dispatcher CSRF token enforcement rules have been reworked
  to actually catch all POST security cases.

7) Initial support for running under nginx

  Various bugs have been fixed to allow LuCI to function under nginx using
  a FastCGI wrapper.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-13 17:22:53 +02:00
Yurii
1455ab6574
luci-app-firewall: update Ukrainian translation
Updated with the latest synchronization of the translation.

Signed-off-by: Yurii yuripet@gmail.com
2018-07-01 23:48:45 +03:00
INAGAKI Hiroshi
ad08b56577 luci-app-firewall: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-30 23:19:50 +09:00
INAGAKI Hiroshi
ca0a086a2d i18n: sync translations
Synchronized translations with sources.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-30 23:10:45 +09:00
Jo-Philipp Wich
e097d3f734 luci-app-firewall: cleanup template markup
Rework the cbi section add template markup to properly render with the
latest responsive design changes.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-23 18:01:43 +02:00
Jo-Philipp Wich
5142e40f9e luci-app-firewall: update cbi models
- allow multiple src/dest ips for rules (#1637)
 - restrict ICMP type list to ICMP protocol
 - add section title callbacks
 - remove size annotations
 - fix validation error with aliased zone fields (#1882)

Fixes #1637, #1882.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-22 11:15:39 +02:00
Yurii
1dcf85b78d
luci-app-firewall: update Ukrainian translation
Updated with the latest synchronization of the translation.
2018-06-18 20:25:43 +03:00
Hannu Nyman
6cc547fdc6
Merge pull request #1891 from YuriPet/master
Correcting native name Ukrainian language & update Ukrainian translation
2018-06-18 19:52:01 +03:00
INAGAKI Hiroshi
88f03a6142 luci-app-firewall: update Japanese translation
Updated japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-18 16:57:08 +09:00
INAGAKI Hiroshi
7001e8f3b1 luci-app-firewall: sync translations
Synchronized translations with sources.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-18 15:57:22 +09:00
Yurii
83dc5e075e
luci-app-firewall: update Ukrainian translation 2018-06-17 23:37:21 +03:00
INAGAKI Hiroshi
fe591dd1cc i18n: fix syntax errors in Ukrainian po
"Content-Type: text/plain; charset=UTF-8" was wrote twice in each
of base.po and firewall.po, and one was an incorrect place which
was the cause of the errors.

And, The escape in abbr HTML tag was incorrect, so I fixed it.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-16 23:36:18 +09:00
Zheng Qian
934e954a76 luci-app-firewall: zh_CN: change better translation for offloading
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-06-12 12:07:33 +08:00
Zheng Qian
21a1cc9d9b luci-app-firewall: zh_CN: change better translation for offloading
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-06-12 12:06:34 +08:00
Kristian Evensen
d3aa12b8ed luci-app-firewall: Fix typo in forwards redirect
When creating a forwarding rule with protocol set to other, a user is
forwarded to the configuration page. The URL for the configuration page
contained a typo - the user was forwarded to
admin/network/firewall/redirect/cfg... and not
admin/network/firewall/forwards/cfg..., leading to a 404.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-06-11 07:10:48 +02:00
Hannu Nyman
8363d0ad6c
Merge pull request #1875 from YuriPet/master
luci-base & luci-app-firewall: update Ukrainian translation
2018-06-10 18:04:32 +03:00
Tom Hodder
658d11e751 luci-app-firewall: disable port fields when protocol is not TCP or UDP
It's currently possible to generate nonsensical firewall rules by inputting
combinations which include:

i) protocols other than UDP/TCP
ii) source and destination ports.

There is some discussion of the issue on the forum here and the issue is
here; #1850.

This patch makes fields like src_port and dest_port depend on protocol being
tcp, udp or "tcp udp" in the input, forwarding and source NAT forms.

Signed-off-by: Tom Hodder <tom@limepepper.co.uk>
[reword commit message, squash commits]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-10 16:24:07 +02:00
Yurii
cebe38dcfe
luci-app-firewall: update Ukrainian translation
Updated Ukrainian translations.

Signed-off-by: Yurii yuripet@gmail.com
2018-06-10 17:16:01 +03:00
Zheng Qian
987a3a0a82 luci-app-firewall: zh_CN: update Simplified Chinese translation
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-06-09 21:38:01 +08:00
Jo-Philipp Wich
2eb4015e18 luci-app-firewall: recognize egress rules in rule overview
Along with 74be6f397
("treewide: switch firewall zone, network and iface lists to dropdown code"),
this change allows luci-app-firewall to recognize OUTPUT rules.

Fixes #1457.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 17:09:18 +02:00
Jo-Philipp Wich
0e0ee2fed5 luci-mod-admin-full: git rid of embedded newlines in translation strings
Also switch one usage of raw '<%_ ... %>' interpolation to '<%: ... %>' in
order to avoid issues with translations using apostrophes.

Globally resnyc translations after the fix.

Fixes #1866.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 13:50:14 +02:00
Jo-Philipp Wich
74be6f3974 treewide: switch firewall zone, network and iface lists to dropdown code
Also switch the weekday and monthday lists in the firewall rule details to
cbi dropdowns, vastly uncluttering the form.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-08 08:19:20 +02:00
Jo-Philipp Wich
067d7dc9f7 treewide: convert HTML tables to div
Mostly convert HTML tables to div based markup to allow for easier styling
in the future. Also change JS accessor code accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-28 15:18:45 +02:00
Zheng Qian
c69bbd194d luci-app-firewall: zh_CN: update Simplified Chinese translation
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-05-28 12:41:23 +08:00
INAGAKI Hiroshi
f569e7fc6a luci-app-firewall: update Japanese translation
Added Japanese translations for offloading options.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
(cherry picked from commit a3be234992)
2018-05-27 19:27:40 +03:00
INAGAKI Hiroshi
2742a1efa6 luci-app-firewall: sync translations
Synchronized translations with sources.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
(cherry picked from commit b4d484e372)
2018-05-27 19:27:28 +03:00
Hannu Nyman
1a918d8fae luci-app-firewall: expose flow offloading options
Expose options related to routing/NAT flow offloading
feature in firewall3. Offloading is available in kernel 4.14+

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
(cherry picked from commit 177224c14a)
2018-05-27 19:26:39 +03:00
INAGAKI Hiroshi
a3be234992 luci-app-firewall: update Japanese translation
Added Japanese translations for offloading options.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-05-27 21:27:32 +09:00
INAGAKI Hiroshi
b4d484e372 luci-app-firewall: sync translations
Synchronized translations with sources.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-05-27 21:07:07 +09:00
Hannu Nyman
177224c14a luci-app-firewall: expose flow offloading options
Expose options related to routing/NAT flow offloading
feature in firewall3. Offloading is available in kernel 4.14+

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-05-26 20:31:23 +03:00
Florian Eckert
c1eba6a046 luci-app-firewall: redirect to overview page on zone details save
This fixes an inconsistency because on the interface configuration if
you press Save&Apply it will go back to overview page.  It is also the
case with "Firewall - Traffic Rules" details.  On firewall zone it only
goes back to firewall zone-detail. Same behaviour on all pages is a good
user experience.

Signed-off-by: Florian Eckert <Eckert.Florian@googlemail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-07 21:46:38 +08:00
Jo-Philipp Wich
1443ff121d luci-app-firewall: dispatch SimpleForm model using the form() action
This fixes issues dicovered by check-controllers.sh

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-06 12:07:49 +02:00
Florian Eckert
7bb2cd6213 luci-app-firewall: only show SNAT template if there are more then one zone
Only show SNAT template if there are more then one zone.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-01 12:33:43 +01:00
Florian Eckert
a5b970d5f2 luci-app-firewall: on forward rule change preselection
Change the preselection for the src zone to wan and the dest zon to lan
because this is the normal situation.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-01 12:33:43 +01:00
Florian Eckert
846fb1f8bc luci-app-firewall: only show portforward template if there are more then one zone
Only show portforward template if there are more then one zone.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-03-01 12:33:43 +01:00
Qian Zheng
dbdb91e964 luci-app-firewall: zh-cn: Update Simplified Chinese translation
Signed-off-by: Qian Zheng <sotux82@gmail.com>
2018-01-25 10:05:31 +08:00
Vladimir
bb87aac852 i18n-ru: Edits on the general pattern of Russian translation
Signed-off-by: Vladimir <picfun@ya.ru>
2018-01-20 14:02:48 +03:00
INAGAKI Hiroshi
2dfb330f45 luci-app-firewall: update Japanese translation
Updated Japanese translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-01-15 15:00:05 +09:00
Vladimir
7541a2705e added project info, were reviewed in graphical mode, ready for a stable release
Signed-off-by: Vladimir <picfun@ya.ru>
2018-01-14 23:15:59 +03:00
Vladimir
72b9aa414e fixed russian translation
Signed-off-by: Vladimir <picfun@ya.ru>
2018-01-12 23:11:58 +03:00
Vladimir
26d60e9c7f fixed and updated russian translation
Signed-off-by: Vladimir <picfun@ya.ru>
2018-01-12 19:39:21 +03:00
Hannu Nyman
846be36cf0 i18n: sync translations
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-12 17:21:02 +02:00
Jo-Philipp Wich
e79a0ded7f luci-app-firewall: rename tr() helper function to _()
Rename tr() to _() so that i18n-scan.pl picks up the language strings.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-12 15:07:47 +01:00
Florian Eckert
93c830869d luci-app-firewall: show port opening cbi section independently of lan zone definition
Current the append traffic rules for "port forwarding" and "port opening"
to the router are only shown if 'wan' and 'lan' zone are defined at
once.

For "port opening" to the router only need a 'wan' zone. Removing
'lan' zone dependency for 'port opening' reflect this behavior.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-01-09 08:06:23 +01:00
Vladimir
ad3ee48813 fixed and updated russian translation
Signed-off-by: Vladimir <picfun@ya.ru>
2018-01-08 01:48:03 +03:00
INAGAKI Hiroshi
7f48b25038 i18n: Sync translations
Synchronized translations.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2017-11-11 12:14:52 +09:00
yangfl
4dc055be85 i18n: Update Chinese translation
Signed-off-by: David Yang <mmyangfl@gmail.com>
2017-10-29 16:00:27 +08:00
yangfl
7dd75df093 i18n: Update Chinese translation
Signed-off-by: David Yang <mmyangfl@gmail.com>
2017-10-28 18:57:21 +08:00
Hannu Nyman
2545566ef8 i18n: sync translations
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-09-05 20:33:50 +03:00
Bubu83
d21609852d luci-app-firewall: Fix typos in Italian translation
Signed-off-by: Alessio Casagrande bubu83@gmail.com
2017-09-05 16:29:57 +02:00