summaryrefslogtreecommitdiffhomepage
path: root/contrib
AgeCommit message (Collapse)Author
2022-08-30ucode-mod-lua: various fixesJo-Philipp Wich
Properly handle accesses to properties of the userdatum itself in the lua_uv_index() __index metamethod and treat integer keys as array indexes in case of wrapped ucode array values. Also fix an incorrect refcount decrement in the function. Also fix uc_lua_vm_get() and uc_lua_lv_getraw() to gracefully handle accesses to not defined or non-table values and ensure that those functions properly reset the Lua stack after they complete. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-08-26ucode-mod-lua: support prototype lookups and method calls on ucode valuesJo-Philipp Wich
Expose ucode arrays and objects with prototypes as userdata proxy objects to Lua and extend the userdata metadatable with an __index metamethod to lookup not found properties in the ucode values prototype chain. Also extend the __call metamethod implementation to infer method call status from the activation record in order to invoke ucode functions with the correct `this` context when called as method from Lua. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-07-27ucode-mod-lua: add workaround for dynamic Lua extension loadingJo-Philipp Wich
Reopen self with dlopen(RTLD_GLOBAL) in order to export liblua symbols for runtime loading of dynamic Lua extensions. Reported-by: Stijn Tintel <stijn@linux-ipv6.be> Tested-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-07-08lucihttp: update to latest Git HEADJo-Philipp Wich
6e68a10 utils: also compare attribute name length in lh_header_attribute() 7b721af testcases: adjust urldecode tests Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-05-30contrib: introduce ucode-mod-luaJo-Philipp Wich
The ucode-mod-lua library provides an ucode-to-Lua bridge and a set of functions to instantiate Lua VMs, invoke Lua functions as well as exchanging data structures between ucode and Lua. Example usage: #!/usr/bin/ucode 'use strict'; const lua = require("lua"); let vm = lua.create(); vm.set({ hello: function(...args) { print(`A ucode "Hello world" function called from Lua! Got arguments: ${args}\n`); }, data_from_ucode: { bool: true, float: 1.3, int: 0x11223344, string: "Hello from ucode!", array: [ 1, 2, 3, null, 5 ], object: { apple: "green", banana: "yellow", [5]: "foo", [-1]: null, nested: { a: [ 5, 6 ], b: { c: NaN } } }, regexp: /foo/ } }); vm.invoke("hello", true, 123, "Foo"); vm.eval('print("Print from Lua!", data_from_ucode.int * data_from_ucode.float);'); try { vm.invoke("error", "Throwing a Lua exception..."); } catch (e) { print(`Caught exception: ${e}\n`); } print(`Lua VM version is: ${vm.get('_G', '_VERSION').value()}\n`); Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-02-21lucihttp: update to latest Git HEADJo-Philipp Wich
cc85183 ucode: add ucode library binding Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-13csstidy: update to latest Git HEADJo-Philipp Wich
707feae parse_css: do not omit white space in url() property values Ref: https://github.com/openwrt/luci/commit/69608199973651baf585d24a095edf8c0c42e21f#commitcomment-52088358 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-06-11lucihttp: update to latest Git HEADJo-Philipp Wich
Fixes compilation under 32bit systems by using the proper printf format specifier for size_t values. Also fixes compilation with Ninja by appending instead of overwriting CMAKE_OPTIONS. Fixes: #5116 Suggested-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-07-05lucihttp: update to latest Git HEADJo-Philipp Wich
a34a17d src: allow overriding buffer size from cli in multipart tester 730a46f lib: fix potentially lost bytes in boundary parsing across buffer limits 8734af2 lib: add buffer tracing to multipart parser 913051b src: add file dump option to multipart test utility c419539 src: allow specifying custom buffer sizes in multipart testcases f6e0564 lib: fix handling of empty multipart fields Fixes: #2816 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-06-05lucihttp: update to latest Git HEADJo-Philipp Wich
f6e0564 lib: fix handling of empty multipart fields 91c01c3 lib: fix multipart state transition in boundary parsing Fixes: #2737 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-02-13treewide: move freifunk-related packages to separate repoSven Roederer
Even Freifunk was one of the major factory to create the LuCI-system, it's now only a very small part of LuCI. LuCI has become a much bigger thing and it seems that it's time to move the packages only relating to Freifunk into it's own feed. On the mailinglist it was discussed [1] and a repo below the general Freifunk team on github was created. This commit removes all packages that will be hosted in the new repo [2] 1 - http://lists.freifunk.net/pipermail/wlannews-freifunk.net/2019-February/004818.html 2 - https://github.com/freifunk/openwrt-packages Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
2019-01-24lucihttp: update to latest Git HEADJo-Philipp Wich
1afbdcc build: add soversion to library Also adjust ABI_VERSION and install recipe accordingly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20csstidy: update to latest Git HEADJo-Philipp Wich
1d56201 prepare: do not consider "overflow" to be a shorthand for -x, -y Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-12csstidy: update to latest Git headJo-Philipp Wich
33594b4 ("csstidy: do not dequote selector strings") Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-12contrib: add csstidy packageJo-Philipp Wich
Package a fork of the CSSTidy C++ implementation for CSS minification use in a later commit. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-02community-profiles: create profile for FürstenwaldeMartin Hübner
New profile for Fürstenwalde. At the moment we use parts of the Berlin- infrastructure. Thus I have not changed the ip-address-related things. Signed-off-by: Martin Hübner <martin.hubner@web.de> [reword and rewrap commit message] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-10-25get rid of library version numbers in luci olsrd codePhilipp Borgers
Signed-off-by: Philipp Borgers <borgers@mi.fu-berlin.de>
2018-10-12freifunk-watchdog: Fix typosyangfl
Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-10-10treewide: Fix typos in commentsyangfl
Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-10-04freifunk profiles: add nameserver 80.67.169.40 from www.fdn.fr/actions/dnspmelange
Signed-off-by: pmelange <isprotejesvalkata@gmail.com>
2018-09-24community-profiles: change subnet of mesh_network option for BerlinPhilipp Borgers
The mesh_network option is used to check the user input. The wizard checks if the input ip address is part of the mesh_network. We use multiple /16 networks. There is no support for multiple ranges so we the 10.0.0.0/8. For reference the ip list: https://wiki.freifunk.net/IP-Netze Signed-off-by: Philipp Borgers <borgers@mi.fu-berlin.de>
2018-07-26Merge pull request #1761 from pmelange/ff_olsr_watchdog_del_tnlJo-Philipp Wich
ff_olsr_watchdog: delete stale tunnels
2018-07-25ff_olsrd_watchdog: delete existing tunnelspmelange
When OLSRd crashes, the old tunnels still exist. This can lead to unexpected behaviour. The tunnels to be removed start with "tnl_" See freifunk-berlin/firmware#522 Signed-off-by: pmelange <isprotejesvalkata@gmail.com>
2018-05-18lucihttp: update to latest HEADJo-Philipp Wich
6ddea4c utils: fix crash with zero length input string in lh_header_attribute() cb119de lib: add support for setting the maximum allowed data size Fixes #1784. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-23Removed retired nameserver 213.73.91.35 from the Freifunk profilespmelange
See issue openwrt/luci#1757 Signed-off-by: Perry Melange <isprotejesvalkata@gmail.com>
2018-04-22lucihttp: update to latest HEADJo-Philipp Wich
ccc685e lua: expose LH_URLDECODE_PLUS flag in Lua library Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-20lucihttp: update to latest HEADJo-Philipp Wich
c7c9c66 src: extend multipart parser test program 5071efb testcases: add multipart parsing edge cases 689e3d0 lib: multipart-parser: fix various edge cases Fixes #1754. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-18freifunk-common: explicitely depend on libuci-luaJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-18lucihttp: update to latest HEADJo-Philipp Wich
8617997 lib: cast size_t values in printf() to prevent compielr warnings Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-18lucihttp: update to latest HEADJo-Philipp Wich
b7470d1 lua: back out early when instantiating parser with bad boundary e1b1b1f testcases: remove stray .swp file b46a6ca utils: introduce new LH_URLDECODE_PLUS flag Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-17contrib: package liblucihttpJo-Philipp Wich
Package liblucihttp, a utility library providing HTTP parsing and data decoding helpers. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-28community-profiles: potsdam - changed SSIDHannes Fuchs
After some discussion in our meetings and on the maling list we decided to change the SSID to a fixed one. Signed-off-by: Hannes Fuchs <hannes.fuchs@gmx.org>
2018-01-20freifunk-p2pblock / luci-app-p2pblock: remove from repoHannu Nyman
Remove freifunk-p2pblock and luci-app-p2pblock as they have been BROKEN since 2016. Packages depend on the removed l7-protocols as well as the deprecated l7 support in the iptables kernel modules. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-09community-profiles: remove HannoverJoda Stößer
2017-10-21meshwizard: upgrade version for some olsr-pluginsFreifunkUFO
inside OLSR some plugins recently got newer version numbers (and of course improvements) Signed-off-by: Ufo <ufo@rund.freifunk.net>
2017-03-01updated community-profile for potsdamHannes Fuchs
- fixed ssid - disable IPv6 - added more interface settings - added settings for 5GHz wifi - added ssidscheme - added dhcp leasetime setting - added LinkQualityAlgorithm for olsrd Signed-off-by: Hannes Fuchs <hannes.fuchs@gmx.org>
2017-02-28meshwizard: cleanup references to madwifiHannu Nyman
Remove the code related to the deprecated madwifi driver. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-02-28freifunk-common: cleanup references to madwifiHannu Nyman
Remove the code related to the deprecated madwifi driver. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-02-10remote-update: remove ancient non-maintained packageHannu Nyman
Remove the ancient 'remote-update' package that has not been updated for years. It e.g. references two non-existing targets. Reference to discussion in #995 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-01-13freifunk-common: bump version as of recent changesSven Roederer
the updates for olsr-0.9.5 compatibility should have changed the release-number Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
2016-12-31community-profiles: update BerlinSven Roederer
since Kathleen-0.2.0 Release there is a new owm-api-url Signed-off-by: Sven Roederer devel-sven@geroedel.de
2016-12-13freifunk-common: neigh.sh: work also with unprettyfied JSON outputBastian Bittorf
Older OLSRd-version outputs JSON humanreadable over multiple lines. The introduced change in 524439cd1647e5d6d7b48f9c75ec5800a5444109 broke the output for those users. Fix that be a finer filter regex. Thanks to Thomas Huehn <thomas@net.t-labs.tu-berlin.de> for spotting that.
2016-12-12freifunk-common: neigh.sh: fix for new olsrd 0.9.5Bastian Bittorf
Starting with version 0.9.5 the new olsr-deamon behaves more standard-compliant and outputs correct HTTP-headers. This would confuse the script and abort parsing. Fix that by only trying to parse the JSON-value and just ignore the other stuff. After this, we can see neighbours again. Thanks to FreifunkUFO <ufo@rund.freifunk.net> for spotting this.
2016-12-09meshwizard: remove local variable definitions outside functionsHannu Nyman
Adapted from PR #819 by FreifunkUFO Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-09-22freifunk-p2pblock / luci-app-p2pblock: mark BROKENHannu Nyman
Mark freifunk-p2pblock and luci-app-p2pblock BROKEN as p2pblock needs layer7 support in iptables, which was removed in early 2015 from iptables-mod-filter: https://dev.openwrt.org/changeset/45423 https://dev.openwrt.org/changeset/45424 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-07-05Update LibreTulum Profileplatschi
2016-07-01Add LibreTulumplatschi
Adding Profile for LibreTulum
2016-05-01freifunk-profiles: remove depreciated profilesSven Roederer
- 31C3: this was used back in 2014, looking forward for new the congress - seefeld: died in march 2013 ... (as per note on their Wiki-page) Signed-off-by: Sven Roederer devel-sven@geroedel.de
2016-02-29remove bensheim and heppenheim as requested here: ↵Manuel Munz
https://github.com/freifunk/meshkit/issues/20
2016-01-27Use numeric prefixes for uci-defaults scriptsJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>