diff --git a/src/ejabberdctl.template b/src/ejabberdctl.template index 11dd3037a..8ffdf9251 100644 --- a/src/ejabberdctl.template +++ b/src/ejabberdctl.template @@ -328,13 +328,21 @@ ctlexec () { CONN_NAME=$1; shift COMMAND=$@ - $EXEC_CMD "$ERL \ + + CTLEXEC="$ERL \ $NAME ${CONN_NAME} \ -noinput \ -hidden \ -pa $EJABBERD_EBIN_PATH \ $KERNEL_OPTS \ - -s ejabberd_ctl -extra $ERLANG_NODE $COMMAND" + -s ejabberd_ctl -extra $ERLANG_NODE" + + # quote input from the command line + for i in $COMMAND; do + CTLEXEC="$CTLEXEC '$i'"; + done + + $EXEC_CMD "$CTLEXEC" } # display ctl usage