luci-proto-wireguard: rewrite protocol handler
authorJo-Philipp Wich <jo@mein.io>
Tue, 17 May 2022 13:45:20 +0000 (15:45 +0200)
committerJo-Philipp Wich <jo@mein.io>
Tue, 17 May 2022 13:45:20 +0000 (15:45 +0200)
commit9ba20645b01aacb391ab8c69f57b3da60db8f630
tree71144e46bb8d1990aa897347697adf0f4057471f
parentc19020b2a4236945c1ad4a699ebb761a5dd7dc1f
luci-proto-wireguard: rewrite protocol handler

This commit rewrites large chunks of the WireGuard protocol handler in order
to simplify the process of importing and exporting configuration. The major
changes are:

1) The wireguard interface configuration tab (General Settings) gained an
   import assistant which allows dragging or pasting a native WireGuard
   configuration file in order to import required settrings into uci

2) The peer configuration tab gained a similar import assistant which allows
   importing the settings for a WireGuard peer from an existing native
   WireGuard configuration file

3) The QR code export feature has been rewritten to make the resulting codes
   actually useful for importing into a WireGuard client application.
   Additionally the plaintext native WireGuard configuration is displayed
   to allow copy-pasting it for use on a Linux or OS X system

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
protocols/luci-proto-wireguard/htdocs/luci-static/resources/protocol/wireguard.js
protocols/luci-proto-wireguard/root/usr/libexec/rpcd/luci.wireguard
protocols/luci-proto-wireguard/root/usr/share/rpcd/acl.d/luci-wireguard.json