summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-base/ucode
AgeCommit message (Collapse)Author
2022-11-03luci-base: fix luci.http.close()Jo-Philipp Wich
Ensure that `http.write()` or template rendering operations after a call to `http.close()` do not produce additional output. This is required for certain legacy Lua apps which invoke write and close operations in the middle of a server side cbi rendering process. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-02luci-base: runtime.uc: avoid Lua not installed exeption from trycompile()Jo-Philipp Wich
Make sure to request loading the Lua bridge as optional when initializing the Lua VM context from trycompile() in order to not raise a fatal exception in case the Lua runtime support is not present. Ref: https://forum.openwrt.org/t/x/141426 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-02luci-base: dispatcher.uc: apply ACLs to menu tree JSONJo-Philipp Wich
Add menu tree annotations for node readonly and dependency satisfied state in order to ensure that unreachable menu nodes are hidden from view. Fixes: ded8ccf93e ("luci-base-ucode: add initial ucode based LuCI runtime") Ref: https://forum.openwrt.org/t/x/141426/10 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-11-02luci-base: http.uc: fix invoking Lua file upload callbacksJo-Philipp Wich
In case a callback is installed from Lua code, the received callback argument is not a callable function but a resource object with a call method. Attempts to call it will leading to a `Type error: left-hand side is not a function` error. To solve this issue, invoke the internally set filehandler instead which wraps the resource if needed. Fixes: #6067 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-31timezone data: update to 2022fHannu Nyman
Update timezone data to 2022f. * http://mm.icann.org/pipermail/tz-announce/2022-October/000075.html - Mexico will no longer observe DST after 2022, except for areas near the US border that continue to observe US DST rules. On 2022-10-30 at 02:00 the Mexican state of Chihuahua moves from -07 (-06 with DST) to year-round -06. - Fiji will not observe DST in 2022/3. For now, assume DST is suspended indefinitely. - Simplify four Ontario zones. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2022-10-27luci-base: add ui indicator when fallback theme is usedJo-Philipp Wich
Add a ui indicator displaying error details when the configured theme failed to load and the next available one is being used instead. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-27luci-base: dispatcher.uc: update uci session ID in Lua contextJo-Philipp Wich
Make sure that the uci session ID of the `luci.model.uci` module within the Lua context is updated once we acquire the login session information. In case legacy themes are used, the probing of the theme header template might indirectly load the Lua runtime and the Lua side `luci.dispatcher` module which in turn will load the `luci.model.uci` and set the session ID there which is not yet initialized at this point in time. This results in broken uci change handling within legacy Lua applications when a legacy theme is loaded. Fixes: #6060 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: dispatcher.uc: ensure usage of dashes in language tagsJo-Philipp Wich
The LuCI uci configuration requires language tags with underscores due limitations of uci option names but the language catalogs themselves are designated with dash separated language tags. Make sure to substitute underscores with dashes when determining the desired request language in order to fix loading of languages such as `pt-br` or `zh-cn`. Ref: https://github.com/openwrt/luci/pull/5976#issuecomment-1290352951 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: dispatcher.uc: reintroduce support for 'absent' fs dependsJo-Philipp Wich
The ability to require certain paths to be absent for a menu entry to show up was lost during the ucode conversion. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: sys.uc: reliably skip TIME_WAIT connections in conntrack listJo-Philipp Wich
The TIME_WAIT indicator might not appear at the beginning of the tuple string in some cases, so match it anywhere. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> [add commit message] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: sys.uc: fix parsing conntrack listJo-Philipp Wich
Ensure that the extracted tuple string starts with a space to fully match all contained key-value pairs. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: sys.uc: increase init script START/STOP search spaceJo-Philipp Wich
Some init scripts, such as the sysfsutils one, declare their START or STOP variables very late in the file. Duplicate the search buffer to 2048 byte in order to catch these cases. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25luci-base: dispatcher.uc: support `cbi` and `form` action typesJo-Philipp Wich
Some existing LuCI apps ship menu.d JSON files with `cbi` and `form` typed dispatch targets, support those as well. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-10-25treewide: separate Lua runtime resourcesJo-Philipp Wich
Move classes required for Lua runtime support into a new `luci-lua-runtime` package. Also replace the `luci.http` and `luci.util` classes in `luci-lib-base` with stubbed versions interacting with the ucode based runtime environment. Finally merge `luci-base-ucode` into the remainders of `luci-base`. Signed-off-by: Jo-Philipp Wich <jo@mein.io>