Commit graph

25 commits

Author SHA1 Message Date
Raito Bezarius
5da2275a98 chore: cleanup the repository
For Liminix, we don't need a bunch of things that assumes an OpenWRT
base.

Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 18:55:01 +02:00
Jo-Philipp Wich
4c532bfed2 ucode: add ucode interpreter plugin
The rpcd ucode plugin allows utilizing ucode scripts to register ubus
objects and to implement the objects method callbacks.

Upon startup, rpcd will compile and execute each ucode script in
`$INSTALL_PREFIX/share/ucode/` and register ubus proxy objects and
methods definitions according to the signature returned by the script.

Refer to examples/ucode/example-plugin.uc for details of the signature
format.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-12-08 20:09:24 +01:00
Jo-Philipp Wich
75a96dc281 build: honour CMake install prefix in hardcoded paths
Search plugins, ACL ressources and other data files relative to the compile
time CMAKE_INSTALL_PREFIX instead of hardcoding `/usr`.

Also ensure that plugin libraries are installed into the lib/rpcd subdir.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2021-12-08 20:09:24 +01:00
Rafał Miłecki
646daa0bec rc: new ubus object for handling /etc/init.d/ scripts
This commit adds "rc" ubus object with methods "list" and "exec" for
listing and calling init.d script appropriately. It's useful for all
kind of UIs (e.g. LuCI) and custom apps.

Example:
root@OpenWrt:~# ubus call rc list
{
	"blockd": {
		"start": 80,
		"enabled": true,
		"running": true
	},
	"dnsmasq": {
		"start": 19,
		"enabled": true,
		"running": true
	}
}
root@OpenWrt:~# ubus call rc init '{ "name": "blockd", "action": "disable" }'
root@OpenWrt:~# ubus call rc init '{ "name": "dnsmasq", "action": "stop" }'
root@OpenWrt:~# ubus call rc list
{
	"blockd": {
		"start": 80,
		"enabled": false,
		"running": true
	},
	"dnsmasq": {
		"start": 19,
		"enabled": true,
		"running": false
	}
}

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2020-09-10 13:18:09 +02:00
Petr Štetiar
89bfaa4246 Fix possible linker errors by using CMake find_library macro
Fixes following errors while compiling natively on x86:

 cc -fPIC -shared  -o rpcsys.so sys.c.o -lubox -lubus
 ld: cannot find -lubox
 ld: cannot find -lubus

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 13:10:50 +02:00
Florian Fainelli
0577cfc1ac cmake: Find libubox/blobmsg_json.h
Add a CMake FIND_PATH and INCLUDE_DIRECTORIES searching for blobmsg_json.h.
Some external toolchains which do not include standard locations would fail to
find the header otherwise.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2016-12-11 09:16:30 +01:00
Florian Fainelli
f4089654a3 cmake: Find libubus.h
Add a CMake FIND_PATH and INCLUDE_DIRECTORIES searching for libubus.h. Some
external toolchains which do not include standard locations would fail
to find the header otherwise.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2016-07-27 17:28:46 +02:00
John Crispin
032346f479 add a system object that allows us to set passwords and trigger sysupgrade
Signed-off-by: John Crispin <blogic@openwrt.org>
2015-08-25 23:56:32 +02:00
Jo-Philipp Wich
805e8ce891 cmake: fix libcrypt test
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-02-26 16:34:31 +01:00
Alexander Couzens
a511e620c8 rpcd: CMake: fix out of tree builds
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2013-10-10 12:19:01 +00:00
Jo-Philipp Wich
5a101fcc08 session: setup a persistent NULL section and implement login procedure 2013-09-10 19:56:36 +02:00
Jo-Philipp Wich
22fbf13086 Drop LuCI2 backend, it will move to its own repository 2013-09-09 16:32:53 +02:00
Jo-Philipp Wich
e0afdb10ae Move includes into subdirectory 2013-09-04 12:46:11 +02:00
Jo-Philipp Wich
07c2f0a9b1 Rename from "luci-rpcd" to "rpcd" 2013-09-02 17:23:30 +02:00
Jo-Philipp Wich
84642137f0 Add CMake definitions for plugins 2013-09-02 15:24:00 +02:00
Jo-Philipp Wich
3cac366777 Link json-c 2013-09-01 22:22:42 +02:00
Jo-Philipp Wich
a86ef267a4 Add initial plugin api support 2013-08-30 20:33:23 +02:00
Jo-Philipp Wich
f74be70327 luci2: add luci2.ui namespace 2013-08-13 17:16:56 +02:00
Jo-Philipp Wich
190708e539 Add rpc_exec() utility function 2013-07-04 14:56:20 +02:00
Jo-Philipp Wich
7c61c535be Add luci2 namespace to offer various backend methods required by the ui 2013-06-11 18:44:18 +02:00
Jo-Philipp Wich
bf838aaa2e Remove system namespace support again, the code has been merged into procd instead.
This reverts commit e5c9b0411d.
2013-06-04 17:20:36 +02:00
Jo-Philipp Wich
e5c9b0411d Add system namespace which offers various system information like software release, memory and swap info, uptime and load 2013-05-30 20:35:46 +02:00
Jo-Philipp Wich
9345600006 add ubus iwinfo api (lacks scanning, assoclist, countrylist and txpowerlist yet) 2013-02-02 20:48:51 +01:00
Jo-Philipp Wich
2dec70f271 add ubus uci api 2013-02-02 18:36:50 +01:00
Jo-Philipp Wich
0607cfda5b initial commit 2013-01-26 15:29:09 +01:00