Fixed su quoting usage, as outlined here:

http://lists.debian.org/debian-devel-announce/2006/03/msg00003.html
This commit is contained in:
Micah Anderson 2006-03-20 23:08:07 +00:00
parent 0e353b42db
commit 8f7a366d32
4 changed files with 16 additions and 10 deletions

View File

@ -1,9 +1,15 @@
version 0.9.4 -- unreleased version 0.9.4 -- unreleased
handler changes handler changes
mysql, pgsql, svn: fixed inversed vsname emptyness check
mysql: mysql:
. Fixed improper use of $vuserhome (Debian: #351083) . Fixed improper use of $vuserhome (Debian: #351083)
. Fixed erroneous removal of tmpfile when it didn't exit . Fixed erroneous removal of tmpfile when it didn't exit
. Fixed inversed vsname emptiness check
. Fixed su quote usage to be more posixy
pgsql:
. Fixed inversed vsname emptiness check
. Fixed su quote usage to be more posixy
svn:
. Fixed inversed vsname emptiness check
rdiff: rdiff:
. Fixed improper include/exclude symlink dereference . Fixed improper include/exclude symlink dereference
dup: dup:

View File

@ -86,7 +86,7 @@ directory = /backups
host = backuphost host = backuphost
# make the files owned by this user. you must be able to # make the files owned by this user. you must be able to
# `su -c ssh backupuser@backhost` without specifying a password. # `su -c "ssh backupuser@backhost"` without specifying a password.
# only use if "[dest] type = remote" # only use if "[dest] type = remote"
user = backupuser user = backupuser

View File

@ -179,7 +179,7 @@ then
else else
execstr="$MYSQLHOTCOPY --quiet --allowold --regexp /.\*/./.\*/ $hotdir" execstr="$MYSQLHOTCOPY --quiet --allowold --regexp /.\*/./.\*/ $hotdir"
fi fi
debug "su $user -c '$execstr'" debug 'su $user -c "$execstr"'
if [ ! $test ] if [ ! $test ]
then then
output=`su $user -c "$execstr" 2>&1` output=`su $user -c "$execstr" 2>&1`
@ -202,7 +202,7 @@ then
else else
execstr="$MYSQLHOTCOPY --allowold $db $hotdir" execstr="$MYSQLHOTCOPY --allowold $db $hotdir"
fi fi
debug "su $user -c '$execstr'" debug 'su $user -c "$execstr"'
if [ ! $test ] if [ ! $test ]
then then
output=`su $user -c "$execstr" 2>&1` output=`su $user -c "$execstr" 2>&1`
@ -230,7 +230,7 @@ then
then then
if [ $usevserver = yes ] if [ $usevserver = yes ]
then then
debug "echo show databases | $VSERVER $vsname exec su $user -c $MYSQL $defaultsfile | grep -v Database" debug 'echo show databases | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database'
databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database` databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database`
if [ $? -ne 0 ] if [ $? -ne 0 ]
then then
@ -253,7 +253,7 @@ fi
else else
execstr="$MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $ignore $db > $dumpdir/${db}.sql" execstr="$MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $ignore $db > $dumpdir/${db}.sql"
fi fi
debug "su $user -c '$execstr'" debug 'su $user -c "$execstr"'
if [ ! $test ] if [ ! $test ]
then then
output=`su $user -c "$execstr" 2>&1` output=`su $user -c "$execstr" 2>&1`

View File

@ -72,9 +72,9 @@ chmod 700 $vroot$backupdir
# if $databases = all, use pg_dumpall # if $databases = all, use pg_dumpall
if [ "$databases" == "all" ]; then if [ "$databases" == "all" ]; then
if [ $usevserver = yes ]; then if [ $usevserver = yes ]; then
execstr="$VSERVER $vsname exec su - postgres -c $PGSQLDUMPALL > $backupdir/${vsname}.sql" execstr='$VSERVER $vsname exec su - postgres -c "$PGSQLDUMPALL > $backupdir/${vsname}.sql"'
else else
execstr="su - postgres -c $PGSQLDUMPALL > $backupdir/${localhost}-all.sql" execstr='su - postgres -c "$PGSQLDUMPALL > $backupdir/${localhost}-all.sql"'
fi fi
debug "$execstr" debug "$execstr"
if [ ! $test ]; then if [ ! $test ]; then
@ -94,9 +94,9 @@ else
for db in $databases; do for db in $databases; do
if [ $usevserver = yes ] if [ $usevserver = yes ]
then then
execstr="$VSERVER $vsname exec su - postgres -c $PGSQLDUMP $db > $backupdir/${db}.sql" execstr='$VSERVER $vsname exec su - postgres -c "$PGSQLDUMP $db > $backupdir/${db}.sql"'
else else
execstr="su - postgres -c $PGSQLDUMP $db > $backupdir/${db}.sql" execstr='su - postgres -c "$PGSQLDUMP $db > $backupdir/${db}.sql"'
fi fi
debug "$execstr" debug "$execstr"
if [ ! $test ]; then if [ ! $test ]; then