Go to file
Andre Heider c23789a576 rpcd-mod-wireguard: add new package
The rpcd wireguard plugin provides essential functions similar to the `wg`
tool.

It uses the embeddable-wg-library [0], which describes itself as:
"This is a mini single-file library, meant to be embedded directly into the
source code of your program. Copy wireguard.c and wireguard.h into your
project. They should build with any C89 compiler. There are no dependencies
except libc"

The plugin does exactly that and therefor inherits the LGPL license.

At this point it provides the following functions:

'wireguard'
    "status":{}
    "genkey":{}
    "genpsk":{}
    "pubkey":{"private":"String"}

Examples:

$ ubus call wireguard status
{
        "wg0": {
                "ifindex": 12,
                "public_key": "<base64 encoded public key>",
                "listen_port": 1234,
                "peers": {
                        "<base64 encoded public peer key>": {
                                "allowed_ips": [
                                        "192.168.1.123/32"
                                ],
                                "last_handshake": 0,
                                "rx_bytes": 0,
                                "tx_bytes": 0
                        },
                        "<another base64 encoded public peer key>": {
                                "endpoint": "<ip:port>",
                                "allowed_ips": [
                                        "192.168.1.124/32"
                                ],
                                "last_handshake": 1676287619,
                                "rx_bytes": 8731604,
                                "tx_bytes": 88333652
                        }
                }
        }
}

$ ubus call wireguard genpsk
{
        "preshared": "EKQJ3XI/6xLoifAoGb5bNA39De1tiwZ3x7h8OS2zKkE="
}

$ ubus call wireguard genkey
{
        "private": "IFyGkfXlO+WO8DMO3cqhaDZ8rBfioP5pVnAoQlEpXnI=",
        "public": "uF2O6/ZXZjKnUnxBnldElBYIXfpyvvtUnZfKP+BSBSI="
}

$ ubus call wireguard pubkey '{"private":"IFyGkfXlO+WO8DMO3cqhaDZ8rBfioP5pVnAoQlEpXnI="}'
{
        "public": "uF2O6/ZXZjKnUnxBnldElBYIXfpyvvtUnZfKP+BSBSI="
}

Size comparison:
52436 /usr/bin/wg
18544 /usr/lib/rpcd/wireguard.so

[0] https://git.zx2c4.com/wireguard-tools/tree/contrib/embeddable-wg-library

Signed-off-by: Andre Heider <a.heider@gmail.com>
2023-08-25 10:18:26 +02:00
.circleci CircleCI: Add 22.03 public keys, 18.06 v2 gpg key, 18.06 usign key 2022-05-11 16:40:55 +08:00
.github CI: Fix finding test script 2023-07-17 20:17:44 +08:00
.keys build: move gpg keys into .keys directory 2018-04-30 13:14:25 -07:00
admin bottom: New package 2023-08-23 08:35:02 +08:00
devel gitlab-runner: Update to 16.0.2 2023-06-22 21:38:36 +03:00
fonts/dejavu-fonts-ttf [dejavu-fonts] add license info and myself as maintainer 2017-02-22 18:39:54 +01:00
ipv6 treewide: remove AUTORELEASE 2023-04-21 22:46:58 +02:00
kernel mdio-tools: update to 1.3.0 2023-08-23 21:57:56 +08:00
lang python-setuptools: Update to 68.1.2 2023-08-24 17:21:44 +08:00
libs libyang: update to 2.1.80 2023-08-17 16:55:01 -07:00
mail alpine: disable parallel build 2023-06-19 16:05:00 +03:00
multimedia yt-dlp: add missing dependencies 2023-08-10 05:07:31 +08:00
net xray-core: backport pending patch for Go 1.21 update 2023-08-24 17:18:24 +08:00
sound shairport-sync: fix init script 2023-07-13 16:18:44 -07:00
utils rpcd-mod-wireguard: add new package 2023-08-25 10:18:26 +02:00
CONTRIBUTING.md CONTRIBUTING: add CI information 2020-09-30 10:47:12 -10:00
LICENSE Add GPLv2 pro-forma license 2014-06-16 08:14:04 +02:00
README.md Update the SDK URL in the README. 2020-05-24 14:50:30 -07:00

README.md

OpenWrt packages feed

Description

This is the OpenWrt "packages"-feed containing community-maintained build scripts, options and patches for applications, modules and libraries used within OpenWrt.

Installation of pre-built packages is handled directly by the opkg utility within your running OpenWrt system or by using the OpenWrt SDK on a build system.

Usage

This repository is intended to be layered on-top of an OpenWrt buildroot. If you do not have an OpenWrt buildroot installed, see the documentation at: OpenWrt Buildroot Installation on the OpenWrt support site.

This feed is enabled by default. To install all its package definitions, run:

./scripts/feeds update packages
./scripts/feeds install -a -p packages

License

See LICENSE file.

Package Guidelines

See CONTRIBUTING.md file.