diff --git a/ejabberdctl.template b/ejabberdctl.template index 9d91e261c..791b09f8d 100755 --- a/ejabberdctl.template +++ b/ejabberdctl.template @@ -129,9 +129,16 @@ set_dist_client() # run command either directly or via su $INSTALLUSER exec_cmd() { - case $EXEC_CMD in - as_install_user) su -s /bin/sh -c 'exec "$0" "$@"' "$INSTALLUSER" -- "$@" ;; - as_current_user) "$@" ;; + case $EXEC_CMD,$(uname -s) in + as_install_user,OpenBSD) + su -s /bin/sh "$INSTALLUSER" -c 'exec "$0" "$@"' "$@" + ;; + as_install_user,*) + su -s /bin/sh -c 'exec "$0" "$@"' "$INSTALLUSER" -- "$@" + ;; + as_current_user,*) + "$@" + ;; esac } exec_erl()