Jo-Philipp Wich [Thu, 22 Oct 2015 06:35:34 +0000 (08:35 +0200)]
luci-mod-admin-full: restructure and fix backup, restore and sysuprade (#517)
Do not use standard post security checking for actions that require file upload
since reading the token value will trigger parsing of the http message body
before the file upload handler has been set, which causes LuCI to buffer the
entire request body in memory.
In order to simplify the code and logic flow, split action_flashops() into
separate handlers for reset, backup, restore and sysupgrade.
Let the backup restore and sysupgrade handlers use the new test_post_security()
method in luci.dispatcher to perform token checking *after* setting the upload
handler.
Jo-Philipp Wich [Wed, 21 Oct 2015 14:45:48 +0000 (16:45 +0200)]
luci-base: ensure that base url is emitted with trailing slash
Now that we don't have an url token anymore, '/cgi-bin/luci' becomes a valid
url while cookies are restricted to only '/cgi-bin/luci/' and below.
In order to ensure that the first request after login refers to a path
covered by the authentication cookie, change build_url() to always append
a trailing slash if we're referring to the base url.
This should fix the login problems mentioned in #516.
While we're touching the dispatcher, also remove remaining url token code.
Jo-Philipp Wich [Tue, 20 Oct 2015 22:31:27 +0000 (00:31 +0200)]
luci-base: remove security token from urls
Now that sensitive urls require post requests and only accept them if a valid
security token is sent along the request, we can drop the global random url
token to improve LuCI usability.
The main improvement is the ability to use multiple tabs with the same login
session, but also deep linking to specific urls without the need for another
login becomes feasible, e.g. for documentation purposes.
Jo-Philipp Wich [Tue, 20 Oct 2015 19:01:41 +0000 (21:01 +0200)]
luci-mod-admin-full: protect clock, flash and opkg ops with submit token
* Use post_on() target to require csrf token verification for modifying actions
* Ensure that package and flash operation handlers guard modifying operations
with parameter check
Jo-Philipp Wich [Tue, 20 Oct 2015 18:58:30 +0000 (20:58 +0200)]
luci-base: generalize post security token handling
* Add a generic helper function to check need for post / csrf token validation
* Remove custom token verification in cbi targets
* Support requiring post security depending on specific submit parameters,
usable through post_on() action
Hannu Nyman [Mon, 12 Oct 2015 07:58:09 +0000 (10:58 +0300)]
Timezone information: update to 2015g
Changes in 2015g:
http://mm.icann.org/pipermail/tz-announce/2015-October/000034.html
Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
New zone America/Fort_Nelson.
Note: the Turkey-related one-time rule change is not apparently catched by
the zoneinfo2lua script, so that change is not included in this commit.
(Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.)
Jo-Philipp Wich [Mon, 5 Oct 2015 13:13:44 +0000 (15:13 +0200)]
luci-app-statistics: add initial support for collect-mod-sensors
Due to a lack of a test environment this support only covers thermal graphs
so far. Please send the output of "rrdtool info /tmp/rrd/*/sensors-*/*.rrd"
if your system happens to support voltage, power or fanspeed sensors.
Jo-Philipp Wich [Sat, 3 Oct 2015 09:40:09 +0000 (11:40 +0200)]
luci-app-statistics: only render index view for more than one instance
If a plugin produces only one instance, e.g. netlink with just one interface
configured, then the controller will register no detail views which would
normally show all graphs but the index pacage of a given plugin will still
display the collapsed view without any possibility to reach the full listing.
Fix the problem by only rendering a linked index view when more than one
instance is present.
Hannu Nyman [Tue, 29 Sep 2015 08:44:53 +0000 (11:44 +0300)]
luci-base: change index.html to be more like current themes
Change index.html that is visible for a second when entering Luci:
* Black text on white background (instead of white on black)
* Specify font as Arial/Helvetica
Hannu Nyman [Sun, 27 Sep 2015 13:41:53 +0000 (16:41 +0300)]
luci-app-statistics: reorganise menu items
Reorganise the menu items of the Luci statistics module:
* Re-label "Collectd" to "Setup" and place it after the "Graphs" items.
- "Graphs" is used much more frequently so it should be first.
- Change "Collectd" menu item to "Setup" to clarify things.
* Re-label "System plugins" to "General plugins" to change sorting.
"Network / Output / System" changes to "General / Network / Output"
that is more logical order for the items.
David Woodhouse [Thu, 17 Sep 2015 10:35:38 +0000 (11:35 +0100)]
luci/statistics: Fix nut UPS graphs
At some point since I last checked, the nut plugin for collectd changed the
names of the timeleft and percent datasets. Update the luci module to match
so that those graphs are generated correctly again.
Hannu Nyman [Fri, 18 Sep 2015 13:00:06 +0000 (16:00 +0300)]
luci-base: set default mediaurlbase to bootstrap (current default theme)
The mediaurlbase option in the default /etc/config/luci still points
to the old openwrt.org theme that is not installed by default.
The discrepancy was noted in the commit message for 55ab4e4ce22
After 55ab4e4ce22 the installed theme's uci-defaults script will correct
the setting at first boot, but we should not have a deprecated theme as
the default value. Set the default value to the default theme 'bootstrap'.
Hannu Nyman [Wed, 16 Sep 2015 14:51:19 +0000 (17:51 +0300)]
documentation: delete obsoleted file that has a troublesome name
Remove SubmitPatchesHowTo:.md that contains obsolete advise about svn and
submitting patches via trac. The filename also contains ":", which causes
trouble for some git clients (e.g. TortoiseGit).
Hannu Nyman [Wed, 16 Sep 2015 09:47:48 +0000 (12:47 +0300)]
Luci opkg/packages: Show package size in list of available packages
Add package *.ipk size information to package listing in Luci,
as opkg was today extended to support listing also the size information.
Visible fields are now: name, version, size, description
That will help users considering installation of a certain package
to assess its size impact on flash.
Note: Opkg data includes the size of the .ipk file, not the expanded size.