Skip to content
Snippets Groups Projects
Select Git revision
  • f49813b52fd1ee8f418f47c1a086d3c280c6e2a1
  • experimental default protected
  • v2023.2.5-ffs
  • nrb/ex400-remove-wps
  • nrb/airmax-test
  • v2023.2.4-ffs
  • nrb/ar9344-reset-sequence
  • autinerd/experimental-openwrt-24.10
  • v2023.2.3-ffs
  • v2023.2.2-ffs
  • v2023.2-ffs
  • v2023.1-ffs
  • v2022.1.4-ffs
  • feature/addMikrotikwAP
  • v2022.1.3-ffs
  • v2021.1.2-ffs
  • v2022.1.1-ffs
  • master protected
  • v2021.1.1-ffs
  • nrb/gluon-master-cpe510
  • v2021.1-ffs
  • experimental-2025-08-29
  • experimental-2025-08-29-base
  • experimental-2025-08-26
  • experimental-2025-08-26-base
  • experimental-2025-08-25
  • experimental-2025-08-25-base
  • experimental-2025-08-20
  • experimental-2025-08-20-base
  • experimental-2025-08-13
  • experimental-2025-08-13-base
  • experimental-2025-08-04
  • experimental-2025-08-04-base
  • experimental-2025-07-31
  • experimental-2025-07-31-base
  • experimental-2025-07-29
  • experimental-2025-07-29-base
  • experimental-2025-07-28
  • experimental-2025-07-28-base
  • experimental-2025-07-26
  • experimental-2025-07-26-base
41 results

x86-generic

Blame
  • 0006-wireguard-tools-allow-generating-private_key-v3.patch 1.88 KiB
    From: lemoer <git@irrelefant.net>
    Date: Sat, 3 Jul 2021 22:50:29 +0200
    Subject: wireguard-tools: allow generating private_key (v3)
    
    When the uci configuration is created automatically during a very early
    stage, where no entropy daemon is set up, generating the key directly is
    not an option. Therefore we allow to set the private_key to "generate"
    and generate the private key directly before the interface is taken up.
    
    v3: Somebody has implemented another uci cli flag '-t' upstream to handle
        this, before my patch to implement the new uci flag '-x' syntax was
        accepted. So I dropped my suggestion of '-x'.
    v2: We now use a new uci cli flag to commit only the private_key and do
        not commit uncommited user changes. This is not yet upstream as of
        now.
    
    diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh
    index 63261aea71daa058bf37014ba7d670a5e74a2e04..845f9eb902bf3655b631d52aa3ee69231366f657 100644
    --- a/package/network/utils/wireguard-tools/files/wireguard.sh
    +++ b/package/network/utils/wireguard-tools/files/wireguard.sh
    @@ -95,6 +95,23 @@ proto_wireguard_setup_peer() {
     	fi
     }
     
    +ensure_key_is_generated() {
    +	local private_key
    +	private_key="$(uci get network."$1".private_key)"
    +
    +	if [ "$private_key" == "generate" ]; then
    +		local ucitmp
    +		oldmask="$(umask)"
    +		umask 077
    +		ucitmp="$(mktemp -d)"
    +		private_key="$("${WG}" genkey)"
    +		uci -q -t "$ucitmp" set network."$1".private_key="$private_key" && \
    +			uci -q -t "$ucitmp" commit network
    +		rm -rf "$ucitmp"
    +		umask "$oldmask"
    +	fi
    +}
    +
     proto_wireguard_setup() {
     	local config="$1"
     	local wg_dir="/tmp/wireguard"
    @@ -104,6 +121,8 @@ proto_wireguard_setup() {
     	local listen_port
     	local mtu
     
    +	ensure_key_is_generated "${config}"
    +
     	config_load network
     	config_get private_key "${config}" "private_key"
     	config_get listen_port "${config}" "listen_port"