LuCI - OpenWrt Configuration Interface
Find a file
Cody R. Brown dd0b5cfd16 luci-app-upnp: Adding and displaying "Description" to upnp data
Getting the Description data from upnp_lease_file. This data often displays the Application Name which made the upnp call. If the upnp_lease_file doesn't exist, it'll just return a blank entry under "Description".

upnp_lease_file order example: TCP:33333:192.168.0.100:33333:1485578298:NAT-PMP 33333 tcp
As an optimisation, since the upnp_lease_file has only active leases and is ordered by epoch timestamp (5th column above), and since "iptables --line-numbers -t nat -xnvL MINIUPNPD" has active leases and is also displayed in order of rule applied (time). This means the order of these two sources will be the same. This prevents us from "searching" the upnp_lease_file for every rule, and instead for the n'th rule, look at the n'th upnp_lease_file line. As a result we only need to read in one line at a time. For a safety, the upnp_lease_file description is always checked to see if it matches the rule it's being assigned to. If it doesn't match it'll return blank. This means we'll never put an incorrect description to a upnp rule, even if someone messes with the upnp_lease_file.
This is the case on my system, more testing may be necessary? If this is false we'll need to loop over the upnp_lease_file for every rule, or read in the whole upnp_lease_file once for the iptables loop.

The Description column is added to the upnp_status, and the "Delete Redirect" renamed to "Delete" to make more horizontal space in the table.

Signed-off-by: Cody R. Brown <dev@codybrown.ca>
2017-01-28 07:20:23 -08:00
applications luci-app-upnp: Adding and displaying "Description" to upnp data 2017-01-28 07:20:23 -08:00
build build/luadoc: Fix typos (found by codespell) 2016-03-26 10:20:46 +01:00
collections luci-ssl-openssl: update note about px5g's SSL library usage 2017-01-09 17:54:05 +02:00
contrib/package freifunk-common: bump version as of recent changes 2017-01-13 23:28:42 +01:00
documentation documentation: Update i18n advice 2016-10-30 12:37:04 +02:00
libs Merge pull request #563 from cshore/pull-request-app-uhttpd 2016-01-15 15:20:41 +01:00
modules luci-base: Update Japanese translation 2017-01-26 18:50:51 +09:00
protocols luci-proto-wireguard: enable addressing for tunnel interfaces 2017-01-14 17:12:36 +01:00
themes luci-theme-bootstrap: tune default style select boxes 2017-01-02 11:59:21 +01: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 Adds Korean translation. 2016-12-20 23:11:11 +09: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.