diff --git a/AUTHORS b/AUTHORS
index 3da8b6c16239c3c5a5dd285f5eb47a10c023d937..2b2ad03b56778101fed0ff216b434491d13abf8b 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -18,3 +18,4 @@ Brad Fritz <brad@fritzfam.com> -- trac patch
 garcondumonde@riseup.net
 Martin Krafft madduck@debian.org -- admingroup patch
 Anarcat
+rhatto
diff --git a/ChangeLog b/ChangeLog
index 1ef63c801c1b7d744756cab648cd944270902ad5..4fece0db5a1d5e4dcfdc0405eba8273827b492eb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,6 +10,7 @@ version 0.9.4 -- unreleased
 	   Thanks to Martin Krafft for the patch (Closes: #370396).
 	 . When determining which backup actions to make, find now follows
 	   symlinks for $configdirectory
+	 . Changed order of -s to mail for compatibility
     handler changes
 	Added tar handler:
 	 . create tarballs
@@ -22,12 +23,14 @@ version 0.9.4 -- unreleased
 	 . Fixed inversed vsname emptiness check
 	 . Fixed su quote usage to be more posixy
 	 . Compress for sqldumps now happens in-line to save some disk space (Closes: #370778)
+	 . Fixed --defaults-file now as --defaults-extra-file (thanks rhatto)
 	pgsql:
 	 . Fixed inversed vsname emptiness check
 	 . Fixed su quote usage to be more posixy
 	 . Fixed shell expansion, thanks Thomas Kotzian (Closes: #363297)
 	 . postgres user UID is now the one from inside the vserver if necessary
 	 . Compress now happens in-line to save some disk space (Closes: #370778)
+	 . $PGSQLUSER is used instead of hardcoding user 'postgres' (although this is the default) 
 	svn:
 	 . Fixed inversed vsname emptiness check
 	rdiff:
diff --git a/handlers/mysql b/handlers/mysql
index a19509bf062545b0192b42db6974d49fa9a5d060..02289f1f2618e197c6e64bc59140869a9f1d31fc 100644
--- a/handlers/mysql
+++ b/handlers/mysql
@@ -75,7 +75,7 @@ fi
 # 1. setting the user, so that /home/user/.my.cnf is used.
 # 2. specifying the user and password in the handler config,
 #    which generates a temporary .my.cnf in /root/.my.cnf
-# 3. specify the config file with --defaults-file
+# 3. specify the config file with --defaults-extra-file
 #    (this option DOESN'T WORK WITH MYSQLHOTCOPY)
 #
 
@@ -130,16 +130,16 @@ EOF
 	umask $oldmask
 	if [ $usevserver = yes ] 
 	then
-	    defaultsfile="--defaults-file=$vhome/.my.cnf"
+	    defaultsfile="--defaults-extra-file=$vhome/.my.cnf"
 	else
-	    defaultsfile="--defaults-file=$mycnf"
+	    defaultsfile="--defaults-extra-file=$mycnf"
 	fi
 fi
 
 # if a user is not set, use $configfile, otherwise use $mycnf
 if [ "$user" == "" ]; then
 	user=root;
-	defaultsfile="--defaults-file=$configfile"
+	defaultsfile="--defaults-extra-file=$configfile"
 else
 	userset=true;
 	if [ $usevserver = yes ]
@@ -160,7 +160,7 @@ else
 	
 	debug "User home set to: $userhome"
 	[ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf"
-	defaultsfile="--defaults-file=$userhome/.my.cnf"
+	defaultsfile="--defaults-extra-file=$userhome/.my.cnf"
 	debug "using $defaultsfile"
 fi
 
diff --git a/handlers/pgsql b/handlers/pgsql
index 435bccab92bb0af12616c232b05bc864e9c34250..1b916247bc091233757cfcab98b4cc70adc1710c 100644
--- a/handlers/pgsql
+++ b/handlers/pgsql
@@ -62,7 +62,7 @@ fi
 # give backup dir the good uid and permissions
 # (in respect to the vserver, if $usevserver = yes)
 if [ $usevserver = yes ]; then
-   pguid=`$VSERVER $vsname exec getent passwd postgres | awk -F: '{print $3}'`
+   pguid=`$VSERVER $vsname exec getent passwd $PGSQLUSER | awk -F: '{print $3}'`
 else
    pguid=`getent passwd postgres | awk -F: '{print $3}'`
 fi