From: Daniel Golle Date: Tue, 15 Mar 2022 18:32:32 +0000 (+0000) Subject: gnunet: improve init script X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=f951f610050a5013df7f11b71797bbbfb2ec637f;p=feed%2Fpackages.git gnunet: improve init script Ensure correct ownership of /etc/gnunet. Quote variables and more or less make shellcheck happy. Signed-off-by: Daniel Golle --- diff --git a/net/gnunet/files/gnunet.init b/net/gnunet/files/gnunet.init index 8401168621..8cf3e15996 100755 --- a/net/gnunet/files/gnunet.init +++ b/net/gnunet/files/gnunet.init @@ -13,44 +13,41 @@ CONFIGFILE=$GNUNET_HOME/gnunet.conf extra_command "restart_transport" "Restart transport" prepare_config() { - local had_exit_service=0; + local had_exit_service=0 if [ ! -e "$GNUNET_HOME" ]; then - mkdir -p $GNUNET_HOME - chown gnunet:gnunet $GNUNET_HOME - chmod 0750 $GNUNET_HOME + mkdir -m 0750 -p "$GNUNET_HOME" + chown gnunet:gnunet "$GNUNET_HOME" fi - touch $CONFIGFILE - chown gnunet:gnunet $CONFIGFILE - chmod 0640 $CONFIGFILE - gnunet-config -c $CONFIGFILE -s PATHS -o GNUNET_HOME -V $GNUNET_HOME + touch "$CONFIGFILE" + chown gnunet:gnunet "$CONFIGFILE" + chmod 0640 "$CONFIGFILE" + gnunet-config -c "$CONFIGFILE" -s PATHS -o GNUNET_HOME -V "$GNUNET_HOME" # minimal persistency in /etc/gnunet - [ ! -d /etc/gnunet ] && { - mkdir -p /etc/gnunet - chown gnunet:gnunet /etc/gnunet - } + [ ! -d /etc/gnunet ] && mkdir -m 0750 -p /etc/gnunet + chown gnunet:gnunet /etc/gnunet # defaults paths for persistent files - gnunet-config -c $CONFIGFILE -s PATHS -o GNUNET_CONFIG_HOME -V /etc/gnunet - gnunet-config -c $CONFIGFILE -s PEER -o PRIVATE_KEY -V /etc/gnunet/private_key.ecc - gnunet-config -c $CONFIGFILE -s identity -o EGODIR -V /etc/gnunet/identity/egos - gnunet-config -c $CONFIGFILE -s revocation -o DATABASE -V /etc/gnunet/revocation.dat - gnunet-config -c $CONFIGFILE -s nse -o PROOFFILE -V /etc/gnunet/proof.dat + gnunet-config -c "$CONFIGFILE" -s PATHS -o GNUNET_CONFIG_HOME -V /etc/gnunet + gnunet-config -c "$CONFIGFILE" -s PEER -o PRIVATE_KEY -V /etc/gnunet/private_key.ecc + gnunet-config -c "$CONFIGFILE" -s identity -o EGODIR -V /etc/gnunet/identity/egos + gnunet-config -c "$CONFIGFILE" -s revocation -o DATABASE -V /etc/gnunet/revocation.dat + gnunet-config -c "$CONFIGFILE" -s nse -o PROOFFILE -V /etc/gnunet/proof.dat # enable all installed transport plugins - transport_plugins=$(gnunet-config -c $CONFIGFILE -s transport -o PLUGINS) + transport_plugins=$(gnunet-config -c "$CONFIGFILE" -s transport -o PLUGINS) for transplug in /usr/lib/gnunet/libgnunet_plugin_transport_*.so; do - transplug=$( echo $transplug | - sed -ne 's!^.*_transport_\(.*\)\.so$!\1!p' ) - [ -n "$( echo $transport_plugins | grep $transplug )" ] || + transplug="$( echo "$transplug" | + sed -ne 's!^.*_transport_\(.*\)\.so$!\1!p' )" + echo "$transport_plugins" | grep -q "$transplug" || transport_plugins="$transport_plugins $transplug" done - gnunet-config -c $CONFIGFILE -s transport -o PLUGINS -V "$transport_plugins" + gnunet-config -c "$CONFIGFILE" -s transport -o PLUGINS -V "$transport_plugins" # do not touch sysctl, iptables and routing - gnunet-config -c $CONFIGFILE -s dns -o SKIP_ROUTING_SETUP -V YES - gnunet-config -c $CONFIGFILE -s exit -o EXIT_IFNAME -V '' + gnunet-config -c "$CONFIGFILE" -s dns -o SKIP_ROUTING_SETUP -V YES + gnunet-config -c "$CONFIGFILE" -s exit -o EXIT_IFNAME -V '' # apply config from UCI _gnunet_section="" @@ -71,19 +68,19 @@ prepare_config() { # $2 value local __OPT="$1" local __VAL="$2" - gnunet-config -c $CONFIGFILE -s ${_gnunet_section} -o ${__OPT} -V "${__VAL}" + gnunet-config -c "$CONFIGFILE" -s "${_gnunet_section}" -o "${__OPT}" -V "${__VAL}" } config_load gnunet - [ "$had_exit_service" -eq 1 ] && gnunet-config -c $CONFIGFILE -s exit -o FORCESTART -V YES + [ "$had_exit_service" -eq 1 ] && gnunet-config -c "$CONFIGFILE" -s exit -o FORCESTART -V YES return 0 } restart_transport() { - gnunet-arm -c $CONFIGFILE -k transport - gnunet-arm -c $CONFIGFILE -i transport + gnunet-arm -c "$CONFIGFILE" -k transport + gnunet-arm -c "$CONFIGFILE" -i transport } start_service() { @@ -93,8 +90,8 @@ start_service() { procd_set_param user gnunet # procd_set_param env GNUNET_LOG="dht;;;;info" procd_set_param stderr 1 - procd_set_param command $PROG -c $CONFIGFILE - [ "$LOGFILE" ] && procd_append_param command -l $LOGFILE + procd_set_param command "$PROG" -c "$CONFIGFILE" + [ "$LOGFILE" ] && procd_append_param command -l "$LOGFILE" procd_set_param respawn procd_close_instance }