#!/bin/sh ## The contents of this file are subject to the Mozilla Public License ## Version 1.1 (the "License"); you may not use this file except in ## compliance with the License. You may obtain a copy of the License at ## http://www.mozilla.org/MPL/ ## ## Software distributed under the License is distributed on an "AS IS" ## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the ## License for the specific language governing rights and limitations ## under the License. ## ## The Original Code is RabbitMQ. ## ## The Initial Developers of the Original Code are LShift Ltd, ## Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd. ## ## Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd, ## Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd ## are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial ## Technologies LLC, and Rabbit Technologies Ltd. ## ## Portions created by LShift Ltd are Copyright (C) 2007-2010 LShift ## Ltd. Portions created by Cohesive Financial Technologies LLC are ## Copyright (C) 2007-2010 Cohesive Financial Technologies ## LLC. Portions created by Rabbit Technologies Ltd are Copyright ## (C) 2007-2010 Rabbit Technologies Ltd. ## ## All Rights Reserved. ## ## Contributor(s): ______________________________________. ## # Escape spaces and quotes, because shell is revolting. for arg in "$@" ; do # Escape quotes in parameters, so that they're passed through cleanly. arg=$(sed -e 's/"/\\"/g' <<-END $arg END ) CMDLINE="${CMDLINE} \"${arg}\"" done cd /var/lib/rabbitmq SCRIPT=`basename $0` if [ `id -u` = 0 ] ; then su rabbitmq -s /bin/sh -c "/usr/lib/rabbitmq/bin/${SCRIPT} ${CMDLINE}" elif [ `id -u` = `id -u rabbitmq` ] ; then /usr/lib/rabbitmq/bin/${SCRIPT} "$@" else /usr/lib/rabbitmq/bin/${SCRIPT} "$@" VAL=$? if [ $VAL -gt 0 ] ; then echo echo "Only root or rabbitmq should run ${SCRIPT}" echo fi exit $VAL fi