summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/luasrc
AgeCommit message (Collapse)Author
2017-02-09luci-base: add hexstring datatypeHannu Nyman
Add datatype 'hexstring' for input validaiton datatypes. It will accept any hexadecimal string. (no length validation, as rangelength can be used for that.) Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-02-07Merge pull request #965 from cshore-firmware/pull-request-odhcpd-macDaniel Dickinson
base: status: For odhpcd leases display MAC formatted with colons
2017-01-30luci-base: fix logic errors in ipmask4 and ipmask6 datatype validatorsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-28mod-admin-full: Add IPv6 Prefix Delegation information to Status PagesCody R. Brown
The Overview page and Network>Interfaces page currently do not give much information about IPv6, particularly with Prefix Delegated setups. In these setups, ISP will delegate a prefix to the router. Currently LuCI doesn't display this Prefix Delegation from the ISP anywhere. A number of changes was added to this commit: 1) self:_ubus("ipv6-prefix") was extracted and put into protocol.ip6prefix. 2) Network>Interfaces page, if a .ip6prefix is present, show it under Status. (IPv6-PD). 3) On the Overview page, "Type" and "Prefix Delegated" has been added to the IPv6 Network Overview Status: - Type will display the .proto, similar to the IPv4 case. If a .ip6prefix is present, it'll display a "-pd" at the end of the Type: i.e. dhcpv6-pd vs. dhcpv6. - If no .ip6prefix is present, it'll do what it does currently, and just show Address, or :: if no address is present. - If .ip6prefix is present, it'll show the "Prefix Delegated", it'll also hide "Address" if no address is present, else it'll show ifc6.ip6addr as well. Signed-off-by: Cody R. Brown <dev@codybrown.ca>
2017-01-26luci-base: mvalue: fix column wrappingJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-24luci-base: datatypes.lua: add missing parentheses in conditionalJo-Philipp Wich
The missing parens lead to a wrong expression precedence, causing a runtime error when attempting to compare nil with a number. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-23luci-base: ipmask, ipmask4 and ipmask6 validatorsJo-Philipp Wich
These validators accept IP address specifications in the form - address - address/bits - address/netmask Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-23luci-base: datatypes.lua: cleanup white spaceJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-23luci-base: luci.tools.status: properly parse infinite dnsmasq leasesCody R. Brown
The expiry time in a dnsmasq lease file line may be 0 (i.e. expiry date = 01/01/1970 00:00:00 GMT) to denote an infinite lease time, so adjust the code to properly support that. The expiry attribute of the lease object will be set to "false" in case of an infinite lease. This is to mimic the odhcp code below. If the expiry date is not equal to 0, then just do exactly what was done before (return the os.diff of current time and ts). Signed-off-by: Cody R. Brown <dev@codybrown.ca>
2017-01-20base: status: For odhpcd leases display MAC formatted with colonsDaniel Dickinson
This should result in the MAC address display being the same using odhcpd for v4 DHCP as when using DNSMasq for v4 DHCP. Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2016-12-30base: webadmin: Don't take substring of nil variableDaniel Dickinson
When converting interface names to UCI network names webadmin fails if there is no UCI network name because webadmin failed to ensure uciname has a value before attempting to take a substring. Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2016-12-21luci-base: luci.sys.iptparser: properly check for table supportJo-Philipp Wich
Do not assume that the "raw" table is present on any system, instead check /proc/net/ip{,6}_tables_names to determine which iptables tables are available. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-10Merge pull request #663 from NeoRaider/styleable-checkboxesDaniel Dickinson
luci-base: view: make checkboxes and radio buttons styleable
2016-12-09time zone data: Update to 2016jHannu Nyman
Changes: Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00. This hives off a new zone Europe/Saratov from Europe/Volgograd. The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like Asia/Aqtau except it switched from +04/+05 to +05/+06 in spring 1999, not fall 1994. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-12-09luci-base: luci.tools.status: properly parse infinite odhcpd leasesJo-Philipp Wich
The expiry time in an odhcpd lease file line may be -1 to denote an infinite lease time, so adjust the code to properly support that. The expiry attribute of the lease object will be set to "false" in case of an infinite lease. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-11-08time zone data: Update to 2016iHannu Nyman
Note that several of the time zones now use a numeric name that is quoted with < > (e.g. "<+03>-3") musl 1.1.15 and earlier have a bug with < > quoted time zone names. Fix for the bug * has already been patched in musl upstream with http://git.musl-libc.org/cgit/musl/commit/?id=8ca27ac4bfe73bff785d0c26c1de0da92b55e5c6 * has been committed in LEDE with https://github.com/lede-project/source/commit/671cb35880308404a17c430c4b3b13dd506a5671 * has been submitted to Openwrt as pull request https://github.com/openwrt/openwrt/pull/163 Key changes in 2016d-2016i: --------------------------- 2016d: America/Caracas switches from -0430 to -04 on 2016-05-01. Asia/Magadan switches from +10 to +11 on 2016-04-24. New zone Asia/Tomsk, split off from Asia/Novosibirsk. 2016f: Asia/Novosibirsk switches from +06 to +07 on 2016-07-24. Asia/Novokuznetsk and Asia/Novosibirsk now use numeric time zone abbreviations instead of invented ones. 2016g: Turkey switched from EET/EEST (+02/+03) to permanent +03, effective 2016-09-07. Use "+03" rather than an invented abbreviation for the new time. Several zones in Antarctica and the former Soviet Union, along with zones intended for ships at sea that cannot use POSIX TZ strings, now use numeric time zone abbreviations instead of invented or obsolete alphanumeric abbreviations. 2016h: Asia/Gaza and Asia/Hebron end DST on 2016-10-29, not 2016-10-21. Predict that future fall transitions will be on the last Saturday of October. Asia/Colombo now uses numeric time zone abbreviations like "+0530" instead of alphabetic ones like "IST" and "LKT". 2016i: Pacific/Tongatapu begins DST on 2016-11-06, ending on 2017-01-15. Assume future observances in Tonga will be from the first Sunday in November through the third Sunday in January, like Fiji. Switch to numeric time zone abbreviations for this zone. Northern Cyprus is now +03 year round, causing a split in Cyprus time zones starting 2016-10-30 at 04:00. This creates a zone Asia/Famagusta. Antarctica/Casey switched from +08 to +11 on 2016-10-22. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-18luci-base: properly style login alert messageJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-15luci-base: support reading switch topology from /etc/board.jsonJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-04luci-base: fix handling of monitor ifacesJo-Philipp Wich
Wireless monitor interfaces usually have no SSID set in their config and various network model utility functions did not handle this case properly, mainly while trying to incorperate the SSID string into various description labels. Fall back to the internal network id (radioX.networkY) in cases where neither the SSID nor the BSSID are available. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-04luci-base: improve string format error reportingJo-Philipp Wich
In mod metamethod, execute string format under pcall() and rethrow error in caller context to report caller of function in errors and not the meta method itself. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-06-03luci-base: fix whitespaceHannu Nyman
change spaces to tabs Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-04-26luci-base: fix syntax error in luci.model.networkJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-04-26luci-base: add more ignore patterns to luci.model.networkJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-04-26luci-base: fix luci.model.network.ignore_interface()Jo-Philipp Wich
Fix the underlying _iface_ignore() function to not ignore virtual interfaces, in order to let ignore_interface() return true for PPP and similar devices. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-04-17luci-base: read odhcpd leasefile location via uciHannu Nyman
Check the location of the odhcpd leasefile from /etc/config/dhcp via uci. Fallback to the default location. This fixes #702 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-04-08luci-base: utils: Make checklib return a booleanDaniel Dickinson
Using tristate is counter-intuitive and probably doesn't provide a lot of benefit so we use a boolean and treat "don't know" as false (because it is safer than showing options that are not actually available). Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>
2016-04-01Update network.luaOskari Rauta
Fix display of WAN status when WAN is provided by using WWAN device or similar with other similar similar methods. Explanation: Before this, protocol was fetched from /etc/config/network for interface which often is wan_4 - but protocol is configured in file as wan, and therefore protocol is always none, since configuration is made for wan and then setup as wan_4 and possibly wan_6 if ipv6 is being used. This commit uses ubus to get used active protocol. For example, in case of qmi, it displays protocol as dhcp since even if I configured wan to use qmi, dhcp was used as a protocol for getting IP address.
2016-03-30timezone data: update to 2016cHannu Nyman
Update timezone data to 2016c. 2016b: http://mm.icann.org/pipermail/tz-announce/2016-March/000036.html Changes affecting future time stamps New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on 2016-03-27 at 02:00 local time. They need distinct zones since their post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and Altai Republic, Russia, which will switch from +06 to +07 on the same date and local time. Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00. As a trial of a new system that needs less information to be made up, the new zones use numeric time zone abbreviations like "+04" instead of invented abbreviations like "ASTT". Haiti will not observe DST in 2016. Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00. Guess future transitions will be March's last Saturday at 01:00, not March's last Friday at 24:00. 2016c: http://mm.icann.org/pipermail/tz-announce/2016-March/000037.html Changes affecting future time stamps Azerbaijan no longer observes DST. Chile reverts from permanent to seasonal DST. Guess that future transitions are August's and May's second Saturdays at 24:00 mainland time. Also, call the period from 2014-09-07 through 2016-05-14 daylight saving time instead of standard time, as that seems more appropriate now. Note for Openwrt usage: Either musl or busybox does not like the new timezone format. Although the rule looks ok in /etc/TZ, timezone is interpreted wrongly by date, uptime etc. "Old timezones" are handle correctly, but these new "<+04>-4" style zones do not work. Example below: Europe/Helsinki root@OpenWrt:~# cat /etc/TZ EET-2EEST,M3.5.0/3,M10.5.0/4 root@OpenWrt:~# uptime 11:00:52 up 18:17, load average: 0.43, 0.13, 0.11 root@OpenWrt:~# date Wed Mar 30 11:00:55 EEST 2016 Europe/Astrakhan ( Time is showed as GMT instead of the correct zone and zone name is parsed wrongly ) root@OpenWrt:~# cat /etc/TZ <+04>-4 root@OpenWrt:~# uptime 08:02:52 up 18:19, load average: 0.17, 0.18, 0.13 root@OpenWrt:~# date Wed Mar 30 08:02:59 +04>-4 2016 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-03-25luci-base: Add option to check linked librariesDaniel Dickinson
Some packages have different variants that have different capabilities depending on which libraries against which they are linked. Add a function to check which library a binary links against in order to determine available functionality. Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>
2016-03-20luci-base: fix bug in util.lua in 'shellsqescape'Hannu Nyman
Fix a bug introduced by #561 Function 'shellsqescape' calls 'gsub' with the empty result string 'res' instead of the actual parameter 'value'. This leads into error: .../util.lua:160: bad argument #1 to 'gsub' (string expected, got nil) Fix error by passing the correct parameter to the function. After the fix, the unmount button introduced by #561 finally works. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-03-16Add support for showing ipv6 NAT table in LuciHannu Nyman
When kmod-nf-nat6 and kmod-ipt-nat6 are installed, the firewall has also the 'nat' table for ipv6, and packages like 'adblock' utilize that table. Currently that table is not shown on the Luci firewall status page, although it is visible by 'ip6tables -L -v -t nat' from console. Detect 'nat' table's presence from /proc/net/ip6_tables_names Show 'nat' table in Status->Firewall->IPv6 if that table is present. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-03-03luci-base: view: make checkboxes and radio buttons styleableMatthias Schiffer
Add an empty, normally invisible label after checkboxes and radio buttons with cbi-input-{checkbox,radio} classes to allow CSS styling them as suggested on http://www.paulund.co.uk/style-checkboxes-with-css Signed-off-by: Nils Schneider <nils@nilsschneider.net> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-03-01modules/base: dispatcher: use default language if automatic choice failsMatthias Schiffer
Fall back to default language if "auto" is configured, but none provided by the browser matches. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-02-24luci-base: cbi: fix misplaced ID in nullsection templateJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-24luci-base: cbi: also initialize JS if pageactions are disabledJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-23luci-base: cbi: fix dependency handling of list and multivalues with ↵Jo-Philipp Wich
radio/checkbox widgets Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-20luci-base: luci.sys: canonicalize src and dest addrs in luci.sys.net.conntrack()Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-18Merge pull request #644 from chris5560/masterChristian Schoenebeck
luci-base: fixed tabbed map when using NamedSection of same type
2016-02-10luci-base: cbi: rely on auto-serialization for combobox choicesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10luci-base: cbi: rework ListValue and MultiValue templatesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10luci-base: dispatcher: let attr() automatically serialize JSONJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-10luci-base: cbi: further refactoringJo-Philipp Wich
Eliminate more inline scripts in favor to global initialization, use a global object for sharing fixed strings instead of passing them to each invocation. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-09luci-base: fix dependency handling of optionals (#645)Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-09luci-base: cbi: remove duplicate id from templateJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-08luci-base: fixed tabbed map when using NamedSection of same typeChristian Schoenebeck
* fixed tabbed map when using NamedSection of same sectiontype * add error message on which tab(s) the invalid/required fields are located Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2016-02-07timezone data: update to 2016aHannu Nyman
Update timezone data to 2016a. http://mm.icann.org/pipermail/tz-announce/2016-January/000035.html Changes affecting future time stamps America/Cayman will not observe daylight saving this year after all. Revert our guess that it would. (Thanks to Matt Johnson.) Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00. (Thanks to Alexander Krivenyshev.) Asia/Tehran now has DST predictions for the year 2038 and later, to be March 21 00:00 to September 21 00:00. This is likely better than predicting no DST, albeit off by a day every now and then. Changes affecting past and future time stamps America/Metlakatla switched from PST all year to AKST/AKDT on 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.) America/Santa_Isabel has been removed, and replaced with a backward compatibility link to America/Tijuana. Its contents were apparently based on a misreading of Mexican legislation. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-02-02luci-base: fix parsing of non-TCP streams in conntrack tableJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-02-02Fix embedded links: github instead of luci.subsignal.orgHannu Nyman
Fix links to point into Github repo instead of luci.subsignal.org - the hint to file a bug in dispatcher - footers of Bootstrap and Firefunk themes Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-01-23luci-base: fix initialization of MultiValue optionsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2016-01-21sys.lua _nethints(): read location of dhcp.lease file from uciChristian Schoenebeck
status.lua - change default directory of dhcp.leases file sys.lua - read location of dhcp.leases file from uci Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>