]> granicus.if.org Git - ejabberd/commitdiff
ejabberdctl: Use $INSTALLUSER's home directory
authorHolger Weiss <holger@zedat.fu-berlin.de>
Thu, 24 Jul 2014 13:25:28 +0000 (15:25 +0200)
committerHolger Weiss <holger@zedat.fu-berlin.de>
Thu, 24 Jul 2014 13:25:28 +0000 (15:25 +0200)
Make sure ejabberdctl uses the $INSTALLUSER's .erlang.cookie file even
if the script was executed by root.

ejabberdctl.template

index a86694f67097878dce8b1f266f886ef37fe31a51..b9f372514fb12f868b1e331ef03aeef89274b877 100755 (executable)
@@ -22,7 +22,8 @@ if [ "$INSTALLUSER" != "" ] ; then
     EXEC_CMD="false"
     for GID in `id -G`; do
         if [ $GID -eq 0 ] ; then
-            EXEC_CMD="su $INSTALLUSER -p -c"
+            INSTALLUSER_HOME=$(getent passwd "$INSTALLUSER" | cut -d: -f6)
+            EXEC_CMD="env HOME=$INSTALLUSER_HOME su $INSTALLUSER -p -c"
         fi
     done
     if [ `id -g` -eq `id -g $INSTALLUSER` ] ; then