Always use braces around variable names

This commit is contained in:
Lorenz Schori 2017-05-15 18:14:54 +02:00
parent 5d518166ed
commit bb38fe1182

View File

@ -2,34 +2,34 @@
# openvpn learn-address script maintaining DNS entries of connected clients in
# unbound config.
DOMAIN="$1"
OP="$2"
IP="$3"
CN="$4"
DOMAIN="${1}"
OP="${2}"
IP="${3}"
CN="${4}"
DIR="/var/unbound"
PIDFILE="/var/run/unbound.pid"
if [ -n "$IP" -a "$(basename $IP)" = "$IP" ]; then
if [ -n "${IP}" -a "$(basename ${IP})" = "${IP}" ]; then
CONF="${DIR}/openvpn.client.${IP}.conf"
case "$OP" in
case "${OP}" in
add|update)
TMPCONF=$(mktemp "$CONF.XXXXXX")
TMPSRV=$(mktemp "$CONF.XXXXXX")
TMPCONF=$(mktemp "${CONF}.XXXXXX")
TMPSRV=$(mktemp "${CONF}.XXXXXX")
if [ -f "$TMPCONF" -a -f "$TMPSRV" ]; then
if [ -f "${TMPCONF}" -a -f "${TMPSRV}" ]; then
# Remove all configs which mention the FQDN
/usr/bin/grep -l -null "^local-data: \"${CN}.${DOMAIN} A " $DIR/openvpn.client.*.conf | /usr/bin/xargs -0 /bin/rm
/bin/test -f "$CONF" && /bin/rm "$CONF"
/usr/bin/grep -l -null "^local-data: \"${CN}.${DOMAIN} A " ${DIR}/openvpn.client.*.conf | /usr/bin/xargs -0 /bin/rm
/bin/test -f "${CONF}" && /bin/rm "${CONF}"
# Add new local-data entry.
(
echo "local-data-ptr: \"${IP} ${CN}.${DOMAIN}\"" &&
echo "local-data: \"${CN}.${DOMAIN} A ${IP}\"" &&
echo "local-data: \"${CN} A ${IP}\""
) > "$TMPCONF"
) > "${TMPCONF}"
# Check syntax, install configuration and restart unbound.
(
@ -37,21 +37,21 @@ if [ -n "$IP" -a "$(basename $IP)" = "$IP" ]; then
echo "chroot: ${DIR}" &&
echo "directory: ${DIR}" &&
echo "include: ${TMPCONF}"
) > "$TMPSRV"
) > "${TMPSRV}"
/bin/chmod 644 "$TMPCONF" "$TMPSRV"
/usr/local/sbin/unbound-checkconf "$TMPSRV" && /bin/mv "$TMPCONF" "$CONF"
/bin/chmod 644 "${TMPCONF}" "${TMPSRV}"
/usr/local/sbin/unbound-checkconf "${TMPSRV}" && /bin/mv "${TMPCONF}" "${CONF}"
/bin/pkill -HUP -F "$PIDFILE"
/bin/pkill -HUP -F "${PIDFILE}"
fi
/bin/test -f "$TMPCONF" && /bin/rm "$TMPCONF"
/bin/test -f "$TMPSRV" && /bin/rm "$TMPSRV"
/bin/test -f "${TMPCONF}" && /bin/rm "${TMPCONF}"
/bin/test -f "${TMPSRV}" && /bin/rm "${TMPSRV}"
;;
delete)
# CN is not set on delete.
/bin/test -f "$CONF" && /bin/rm "$CONF" && /bin/pkill -HUP -F "$PIDFILE"
/bin/test -f "${CONF}" && /bin/rm "${CONF}" && /bin/pkill -HUP -F "${PIDFILE}"
;;
esac