mariadb: Use double quotes where possible

Just to make sure, add double quotes around strings and various
variables. In some cases it could prevent some issues, in other cases it
is just a good practice.

Signed-off-by: Michal Hrusecky <michal.hrusecky@turris.com>
This commit is contained in:
Michal Hrusecky 2020-10-01 16:10:10 +02:00
parent 173314eb8f
commit bb6e0d799c
No known key found for this signature in database
GPG key ID: 7B7562FE6F4D91EF

View file

@ -9,12 +9,12 @@ NAME=mysqld
LOGGER="/usr/bin/logger -p user.err -s -t $NAME --" LOGGER="/usr/bin/logger -p user.err -s -t $NAME --"
[ -x "$LOGGER" ] || LOGGER="echo" [ -x "$LOGGER" ] || LOGGER="echo"
MYSQLADMIN=/usr/bin/mysqladmin MYSQLADMIN="/usr/bin/mysqladmin"
MYSQLD=/usr/bin/$NAME MYSQLD="/usr/bin/$NAME"
MYSQLDSAFE=/usr/bin/mysqld_safe MYSQLDSAFE="/usr/bin/mysqld_safe"
# mysqladmin likes to read /root/.my.cnf which could cause issues. # mysqladmin likes to read /root/.my.cnf which could cause issues.
export HOME=/etc/mysql export HOME="/etc/mysql"
# Safeguard (relative paths, core dumps...) # Safeguard (relative paths, core dumps...)
cd / cd /
@ -41,8 +41,8 @@ mysqld_status() {
fi fi
ps_alive=0 ps_alive=0
pidfile=$(mysqld_get_param pid-file) pidfile="$(mysqld_get_param pid-file)"
if [ -f "$pidfile" ] && kill -0 $(cat "$pidfile") >/dev/null 2>&1; then if [ -f "$pidfile" ] && kill -0 "$(cat "$pidfile")" >/dev/null 2>&1; then
ps_alive=1 ps_alive=1
fi fi
@ -63,85 +63,85 @@ start() {
hint="please fix your server configuration in /etc/mysql/" hint="please fix your server configuration in /etc/mysql/"
for i in $MYSQLD $MYSQLADMIN $MYSQLDSAFE; do for i in "$MYSQLD" "$MYSQLADMIN" "$MYSQLDSAFE"; do
if [ ! -x $i ]; then if [ ! -x "$i" ]; then
$LOGGER $i is missing $LOGGER "$i is missing"
exit 1 exit 1
fi fi
done done
if [ ! -r $conf ]; then if [ ! -r "$conf" ]; then
$LOGGER $conf cannot be read $LOGGER "$conf cannot be read"
exit 1 exit 1
fi fi
config_load $NAME config_load "$NAME"
config_get_bool enabled general enabled 0 config_get_bool enabled general enabled 0
if [ $enabled -eq 0 ]; then if [ "$enabled" -eq 0 ]; then
$LOGGER service not enabled in /etc/config/$NAME $LOGGER "service not enabled in /etc/config/$NAME"
exit 1 exit 1
fi fi
config_get options general options config_get options general options
datadir=$(mysqld_get_param datadir) datadir="$(mysqld_get_param datadir)"
tmpdir=$(mysqld_get_param tmpdir) tmpdir="$(mysqld_get_param tmpdir)"
if [ -z "$datadir" ]; then if [ -z "$datadir" ]; then
$LOGGER datadir is not set $LOGGER "datadir is not set"
$LOGGER $hint $LOGGER "$hint"
exit 1 exit 1
fi fi
if [ -z "$tmpdir" ]; then if [ -z "$tmpdir" ]; then
$LOGGER tmpdir is not set $LOGGER "tmpdir is not set"
$LOGGER $hint $LOGGER "$hint"
exit 1 exit 1
fi fi
if [ ! -f "$datadir/mysql/tables_priv.MAD" ]; then if [ ! -f "$datadir/mysql/tables_priv.MAD" ]; then
args="--force" args="--force"
basedir=$(mysqld_get_param basedir) basedir="$(mysqld_get_param basedir)"
[ -n "$basedir" ] && args="$args --basedir=$basedir" [ -n "$basedir" ] && args="$args --basedir=$basedir"
$LOGGER Cannot detect privileges table. You might need to run $LOGGER "Cannot detect privileges table. You might need to run"
$LOGGER \'mysql_install_db "$args"\' $LOGGER "'mysql_install_db \"$args\"'"
$LOGGER to initialize the system tables. $LOGGER "to initialize the system tables."
exit 1 exit 1
fi fi
# Start daemon # Start daemon
if mysqld_status check_alive; then if mysqld_status check_alive; then
$LOGGER already running $LOGGER "server is already running"
else else
for i in $logdir $rundir; do for i in "$logdir" "$rundir"; do
opts="-m 0750" opts="-m 0750"
if ! [ -e $i ]; then if ! [ -e "$i" ]; then
# $rundir needs to be accessible for # $rundir needs to be accessible for
# clients # clients
if [ $i = $rundir ]; then if [ "$i" = "$rundir" ]; then
opts= opts=
fi fi
mkdir -p $opts $i mkdir -p $opts "$i"
[ -d $i ] && chown mariadb:mariadb $i [ -d "$i" ] && chown mariadb:mariadb "$i"
fi fi
done done
$MYSQLDSAFE $options >/dev/null 2>&1 & "$MYSQLDSAFE" $options >/dev/null 2>&1 &
fi fi
} }
stop() { stop() {
if ! mysqld_status check_dead; then if ! mysqld_status check_dead; then
$MYSQLADMIN shutdown "$MYSQLADMIN" shutdown
fi fi
} }
reload() { reload() {
if mysqld_status check_alive; then if mysqld_status check_alive; then
$MYSQLADMIN reload "$MYSQLADMIN" reload
else else
$LOGGER not running $LOGGER "server is not running"
fi fi
} }