LuCI - OpenWrt Configuration Interface
Find a file
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
applications openwrt-18.06: merge master 2018-07-13 17:22:53 +02:00
build build: add check-controller.sh, a utility to test controller files 2018-04-06 12:02:37 +02:00
collections luci-nginx: fix nginx dependency 2018-07-06 17:34:39 +02:00
contrib/package lucihttp: update to latest HEAD 2018-05-18 16:34:28 +02:00
documentation documentation: regenerate documents from current code base 2018-04-30 14:45:25 +02:00
libs Revert "luci-lib-json: depend on luci-base" 2018-07-03 12:30:44 +02:00
modules openwrt-18.06: merge master 2018-07-13 17:22:53 +02:00
protocols luci-proto-qmi: register further network error codes 2018-07-12 18:10:59 +02:00
themes luci-theme-bootstrap: margin fix for multiple wifs on status overview 2018-07-13 16:31:14 +02:00
.buildpath * new project: ff-luci - Freifunk Lua Configuration Interface 2008-03-02 21:52:58 +00:00
.cproject More C-Functions (luci.cutil.instanceof, luci.cutil.pcdata) 2008-11-20 19:22:05 +00:00
.gitignore Update .gitignore 2015-04-20 10:08:23 +02:00
.project LuCI Core C-Rewrite: First steps 2008-11-19 23:02:36 +00:00
CONTRIBUTING.md CONTRIBUTING.md: clarify signed-off-by advice 2015-12-15 14:40:51 +02:00
LICENSE * new project: ff-luci - Freifunk Lua Configuration Interface 2008-03-02 21:52:58 +00:00
luci.mk Merge pull request #1915 from Ansuel/upgrade 2018-06-27 16:43:36 +02:00
NOTICE Update my email addresses in the license headers 2015-01-16 23:49:44 +01:00
README.md docs: link to the developer wiki documentation 2016-09-07 17:10:05 +00:00
THANKYOU * luci: replace all "OpenWRT" occurences with "OpenWrt" 2008-10-27 15:19:58 +00:00

OpenWrt luci feed

Description

This is the OpenWrt "luci"-feed containing LuCI - OpenWrt Configuration Interface.

Usage

This feed is enabled by default. Your feeds.conf.default (or feeds.conf) should contain a line like:

src-git luci https://github.com/openwrt/luci.git

To install all its package definitions, run:

./scripts/feeds update luci
./scripts/feeds install -a -p luci

API Reference

You can browse the generated API documentation directly on Github.

Development

Documentation for developing and extending LuCI can be found in the Wiki

License

See LICENSE file.

Package Guidelines

See CONTRIBUTING.md file.