From e1cc8a90fa4edebab0285954a25c013de7ed2c8a Mon Sep 17 00:00:00 2001 From: Badlop Date: Wed, 9 Feb 2011 13:30:01 +0100 Subject: [PATCH] Escape output from ctlexec() to erl script (thanks to Dan Scott)(EJAB-1399) --- src/ejabberdctl.template | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) 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