diff mbox series

[OpenWrt-Devel,1/2] wireguard.sh: Batch file writes

Message ID 20200101020822.21784-1-rosenp@gmail.com
State Superseded
Headers show
Series [OpenWrt-Devel,1/2] wireguard.sh: Batch file writes | expand

Commit Message

Rosen Penev Jan. 1, 2020, 2:08 a.m. UTC
Speeds up config generation.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
 .../utils/wireguard-tools/files/wireguard.sh  | 32 ++++++++-----------
 1 file changed, 14 insertions(+), 18 deletions(-)

Comments

Hartmut Knaack Jan. 1, 2020, 11:31 a.m. UTC | #1
Rosen Penev schrieb am 01.01.2020 um 03:08:
> Speeds up config generation.
>
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
> ---
>  .../utils/wireguard-tools/files/wireguard.sh  | 32 ++++++++-----------
>  1 file changed, 14 insertions(+), 18 deletions(-)
>
> diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh
> index 4c811c6ba9..1e424e7959 100644
> --- a/package/network/utils/wireguard-tools/files/wireguard.sh
> +++ b/package/network/utils/wireguard-tools/files/wireguard.sh
> @@ -42,13 +42,12 @@ proto_wireguard_setup_peer() {
>  	config_get endpoint_port "${peer_config}" "endpoint_port"
>  	config_get persistent_keepalive "${peer_config}" "persistent_keepalive"
>
> -	echo "[Peer]" >> "${wg_cfg}"
> -	echo "PublicKey=${public_key}" >> "${wg_cfg}"
> -	if [ "${preshared_key}" ]; then
> -		echo "PresharedKey=${preshared_key}" >> "${wg_cfg}"
> -	fi
> +	{
> +	echo "[Peer]"
> +	echo "PublicKey=${public_key}"
> +	[ "${preshared_key}" ] && echo "PresharedKey=${preshared_key}"
>  	for allowed_ip in $allowed_ips; do
> -		echo "AllowedIPs=${allowed_ip}" >> "${wg_cfg}"
> +		echo "AllowedIPs=${allowed_ip}"
>  	done
>  	if [ "${endpoint_host}" ]; then
>  		case "${endpoint_host}" in
> @@ -64,11 +63,10 @@ proto_wireguard_setup_peer() {
>  		else
>  			endpoint="${endpoint}:51820"
>  		fi
> -		echo "Endpoint=${endpoint}" >> "${wg_cfg}"
> -	fi
> -	if [ "${persistent_keepalive}" ]; then
> -		echo "PersistentKeepalive=${persistent_keepalive}" >> "${wg_cfg}"
> +		echo "Endpoint=${endpoint}"
>  	fi
> +	[ "${persistent_keepalive}" ] && echo "PersistentKeepalive=${persistent_keepalive}"
> +	} >> "${wg_cfg}"
>

Hi,
I would prefer to have the above code block indented, as well.

>  	if [ ${route_allowed_ips} -ne 0 ]; then
>  		for allowed_ip in ${allowed_ips}; do
> @@ -119,14 +117,12 @@ proto_wireguard_setup() {
>
>  	umask 077
>  	mkdir -p "${wg_dir}"
> -	echo "[Interface]" > "${wg_cfg}"
> -	echo "PrivateKey=${private_key}" >> "${wg_cfg}"
> -	if [ "${listen_port}" ]; then
> -		echo "ListenPort=${listen_port}" >> "${wg_cfg}"
> -	fi
> -	if [ "${fwmark}" ]; then
> -		echo "FwMark=${fwmark}" >> "${wg_cfg}"
> -	fi
> +	{
> +		echo "[Interface]"
> +		echo "PrivateKey=${private_key}"
> +		[ "${listen_port}" ] && echo "ListenPort=${listen_port}"
> +		[ "${fwmark}" ] && echo "FwMark=${fwmark}"
> +	} > "${wg_cfg}"
>  	config_foreach proto_wireguard_setup_peer "wireguard_${config}"
>
>  	# apply configuration file
>
Josef Schlehofer Jan. 1, 2020, 11:33 a.m. UTC | #2
Hi,

This needs version bump of PKG_RELEASE.

On 01. 01. 20 3:08, Rosen Penev wrote:
> Speeds up config generation.
>
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
> ---
>  .../utils/wireguard-tools/files/wireguard.sh  | 32 ++++++++-----------
>  1 file changed, 14 insertions(+), 18 deletions(-)
>
> diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh
> index 4c811c6ba9..1e424e7959 100644
> --- a/package/network/utils/wireguard-tools/files/wireguard.sh
> +++ b/package/network/utils/wireguard-tools/files/wireguard.sh
> @@ -42,13 +42,12 @@ proto_wireguard_setup_peer() {
>  	config_get endpoint_port "${peer_config}" "endpoint_port"
>  	config_get persistent_keepalive "${peer_config}" "persistent_keepalive"
>  
> -	echo "[Peer]" >> "${wg_cfg}"
> -	echo "PublicKey=${public_key}" >> "${wg_cfg}"
> -	if [ "${preshared_key}" ]; then
> -		echo "PresharedKey=${preshared_key}" >> "${wg_cfg}"
> -	fi
> +	{
> +	echo "[Peer]"
> +	echo "PublicKey=${public_key}"
> +	[ "${preshared_key}" ] && echo "PresharedKey=${preshared_key}"
>  	for allowed_ip in $allowed_ips; do
> -		echo "AllowedIPs=${allowed_ip}" >> "${wg_cfg}"
> +		echo "AllowedIPs=${allowed_ip}"
>  	done
>  	if [ "${endpoint_host}" ]; then
>  		case "${endpoint_host}" in
> @@ -64,11 +63,10 @@ proto_wireguard_setup_peer() {
>  		else
>  			endpoint="${endpoint}:51820"
>  		fi
> -		echo "Endpoint=${endpoint}" >> "${wg_cfg}"
> -	fi
> -	if [ "${persistent_keepalive}" ]; then
> -		echo "PersistentKeepalive=${persistent_keepalive}" >> "${wg_cfg}"
> +		echo "Endpoint=${endpoint}"
>  	fi
> +	[ "${persistent_keepalive}" ] && echo "PersistentKeepalive=${persistent_keepalive}"
> +	} >> "${wg_cfg}"
>  
>  	if [ ${route_allowed_ips} -ne 0 ]; then
>  		for allowed_ip in ${allowed_ips}; do
> @@ -119,14 +117,12 @@ proto_wireguard_setup() {
>  
>  	umask 077
>  	mkdir -p "${wg_dir}"
> -	echo "[Interface]" > "${wg_cfg}"
> -	echo "PrivateKey=${private_key}" >> "${wg_cfg}"
> -	if [ "${listen_port}" ]; then
> -		echo "ListenPort=${listen_port}" >> "${wg_cfg}"
> -	fi
> -	if [ "${fwmark}" ]; then
> -		echo "FwMark=${fwmark}" >> "${wg_cfg}"
> -	fi
> +	{
> +		echo "[Interface]"
> +		echo "PrivateKey=${private_key}"
> +		[ "${listen_port}" ] && echo "ListenPort=${listen_port}"
> +		[ "${fwmark}" ] && echo "FwMark=${fwmark}"
> +	} > "${wg_cfg}"
>  	config_foreach proto_wireguard_setup_peer "wireguard_${config}"
>  
>  	# apply configuration file
Rosen Penev Jan. 1, 2020, 10:44 p.m. UTC | #3
On Wed, Jan 1, 2020 at 3:31 AM Hartmut Knaack <knaack.h@gmx.de> wrote:
>
> Rosen Penev schrieb am 01.01.2020 um 03:08:
> > Speeds up config generation.
> >
> > Signed-off-by: Rosen Penev <rosenp@gmail.com>
> > ---
> >  .../utils/wireguard-tools/files/wireguard.sh  | 32 ++++++++-----------
> >  1 file changed, 14 insertions(+), 18 deletions(-)
> >
> > diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh
> > index 4c811c6ba9..1e424e7959 100644
> > --- a/package/network/utils/wireguard-tools/files/wireguard.sh
> > +++ b/package/network/utils/wireguard-tools/files/wireguard.sh
> > @@ -42,13 +42,12 @@ proto_wireguard_setup_peer() {
> >       config_get endpoint_port "${peer_config}" "endpoint_port"
> >       config_get persistent_keepalive "${peer_config}" "persistent_keepalive"
> >
> > -     echo "[Peer]" >> "${wg_cfg}"
> > -     echo "PublicKey=${public_key}" >> "${wg_cfg}"
> > -     if [ "${preshared_key}" ]; then
> > -             echo "PresharedKey=${preshared_key}" >> "${wg_cfg}"
> > -     fi
> > +     {
> > +     echo "[Peer]"
> > +     echo "PublicKey=${public_key}"
> > +     [ "${preshared_key}" ] && echo "PresharedKey=${preshared_key}"
> >       for allowed_ip in $allowed_ips; do
> > -             echo "AllowedIPs=${allowed_ip}" >> "${wg_cfg}"
> > +             echo "AllowedIPs=${allowed_ip}"
> >       done
> >       if [ "${endpoint_host}" ]; then
> >               case "${endpoint_host}" in
> > @@ -64,11 +63,10 @@ proto_wireguard_setup_peer() {
> >               else
> >                       endpoint="${endpoint}:51820"
> >               fi
> > -             echo "Endpoint=${endpoint}" >> "${wg_cfg}"
> > -     fi
> > -     if [ "${persistent_keepalive}" ]; then
> > -             echo "PersistentKeepalive=${persistent_keepalive}" >> "${wg_cfg}"
> > +             echo "Endpoint=${endpoint}"
> >       fi
> > +     [ "${persistent_keepalive}" ] && echo "PersistentKeepalive=${persistent_keepalive}"
> > +     } >> "${wg_cfg}"
> >
>
> Hi,
> I would prefer to have the above code block indented, as well.
Sure. I did so initially as I felt it was too indented.
>
> >       if [ ${route_allowed_ips} -ne 0 ]; then
> >               for allowed_ip in ${allowed_ips}; do
> > @@ -119,14 +117,12 @@ proto_wireguard_setup() {
> >
> >       umask 077
> >       mkdir -p "${wg_dir}"
> > -     echo "[Interface]" > "${wg_cfg}"
> > -     echo "PrivateKey=${private_key}" >> "${wg_cfg}"
> > -     if [ "${listen_port}" ]; then
> > -             echo "ListenPort=${listen_port}" >> "${wg_cfg}"
> > -     fi
> > -     if [ "${fwmark}" ]; then
> > -             echo "FwMark=${fwmark}" >> "${wg_cfg}"
> > -     fi
> > +     {
> > +             echo "[Interface]"
> > +             echo "PrivateKey=${private_key}"
> > +             [ "${listen_port}" ] && echo "ListenPort=${listen_port}"
> > +             [ "${fwmark}" ] && echo "FwMark=${fwmark}"
> > +     } > "${wg_cfg}"
> >       config_foreach proto_wireguard_setup_peer "wireguard_${config}"
> >
> >       # apply configuration file
> >
>
diff mbox series

Patch

diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh
index 4c811c6ba9..1e424e7959 100644
--- a/package/network/utils/wireguard-tools/files/wireguard.sh
+++ b/package/network/utils/wireguard-tools/files/wireguard.sh
@@ -42,13 +42,12 @@  proto_wireguard_setup_peer() {
 	config_get endpoint_port "${peer_config}" "endpoint_port"
 	config_get persistent_keepalive "${peer_config}" "persistent_keepalive"
 
-	echo "[Peer]" >> "${wg_cfg}"
-	echo "PublicKey=${public_key}" >> "${wg_cfg}"
-	if [ "${preshared_key}" ]; then
-		echo "PresharedKey=${preshared_key}" >> "${wg_cfg}"
-	fi
+	{
+	echo "[Peer]"
+	echo "PublicKey=${public_key}"
+	[ "${preshared_key}" ] && echo "PresharedKey=${preshared_key}"
 	for allowed_ip in $allowed_ips; do
-		echo "AllowedIPs=${allowed_ip}" >> "${wg_cfg}"
+		echo "AllowedIPs=${allowed_ip}"
 	done
 	if [ "${endpoint_host}" ]; then
 		case "${endpoint_host}" in
@@ -64,11 +63,10 @@  proto_wireguard_setup_peer() {
 		else
 			endpoint="${endpoint}:51820"
 		fi
-		echo "Endpoint=${endpoint}" >> "${wg_cfg}"
-	fi
-	if [ "${persistent_keepalive}" ]; then
-		echo "PersistentKeepalive=${persistent_keepalive}" >> "${wg_cfg}"
+		echo "Endpoint=${endpoint}"
 	fi
+	[ "${persistent_keepalive}" ] && echo "PersistentKeepalive=${persistent_keepalive}"
+	} >> "${wg_cfg}"
 
 	if [ ${route_allowed_ips} -ne 0 ]; then
 		for allowed_ip in ${allowed_ips}; do
@@ -119,14 +117,12 @@  proto_wireguard_setup() {
 
 	umask 077
 	mkdir -p "${wg_dir}"
-	echo "[Interface]" > "${wg_cfg}"
-	echo "PrivateKey=${private_key}" >> "${wg_cfg}"
-	if [ "${listen_port}" ]; then
-		echo "ListenPort=${listen_port}" >> "${wg_cfg}"
-	fi
-	if [ "${fwmark}" ]; then
-		echo "FwMark=${fwmark}" >> "${wg_cfg}"
-	fi
+	{
+		echo "[Interface]"
+		echo "PrivateKey=${private_key}"
+		[ "${listen_port}" ] && echo "ListenPort=${listen_port}"
+		[ "${fwmark}" ] && echo "FwMark=${fwmark}"
+	} > "${wg_cfg}"
 	config_foreach proto_wireguard_setup_peer "wireguard_${config}"
 
 	# apply configuration file