From f2c6c064dd88c3b1cad7f44a868d6ed107bf3f41 Mon Sep 17 00:00:00 2001 From: Badlop Date: Thu, 15 Apr 2021 19:40:28 +0200 Subject: [PATCH] ejabberdctl: fix parameter parsing Cherry-picked from ejabberd upstream 18.03-60-gc43037887 --- ecs/bin/ejabberdctl | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/ecs/bin/ejabberdctl b/ecs/bin/ejabberdctl index aec982d..1537679 100755 --- a/ecs/bin/ejabberdctl +++ b/ecs/bin/ejabberdctl @@ -46,19 +46,17 @@ case $(id -un) in esac # parse command line parameters -for arg; do - case $arg in - -n|--node) ERLANG_NODE_ARG=$2; shift;; - -s|--spool) SPOOL_DIR=$2; shift;; - -l|--logs) LOGS_DIR=$2; shift;; - -f|--config) EJABBERD_CONFIG_PATH=$2; shift;; - -c|--ctl-config) EJABBERDCTL_CONFIG_PATH=$2; shift;; - -d|--config-dir) ETC_DIR=$2; shift;; - -t|--no-timeout) NO_TIMEOUT="--no-timeout";; - --) :;; +while [ $# -gt 0 ]; do + case $1 in + -n|--node) ERLANG_NODE_ARG=$2; shift 2;; + -s|--spool) SPOOL_DIR=$2; shift 2;; + -l|--logs) LOGS_DIR=$2; shift 2;; + -f|--config) EJABBERD_CONFIG_PATH=$2; shift 2;; + -c|--ctl-config) EJABBERDCTL_CONFIG_PATH=$2; shift 2;; + -d|--config-dir) ETC_DIR=$2; shift 2;; + -t|--no-timeout) NO_TIMEOUT="--no-timeout"; shift;; *) break;; esac - shift done # define ejabberd variables if not already defined from the command line