You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-im/ejabberd/files/ejabberd-17.04-ejabberdctl....

63 lines
2.1 KiB

From 185923a3c5f11c2d29599416a52b6594bc94d8c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name>
Date: Mon, 29 Aug 2016 22:29:41 +0100
Subject: [PATCH] Adjust ejabberdctl for Gentoo jabberbase setup
Set SHELL since the generic jabber user used on Gentoo for jabber
servers doesn't have a valid shell set by default and fix EXEC_CMD
otherwise it fails with "This account is currently not available" again
due to jabber not having a valid shell.
Also, workaround the assumption that jabber's $HOME is a directory when
instead it defaults to /dev/null on Gentoo.
---
ejabberdctl.template | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ejabberdctl.template b/ejabberdctl.template
index 5b34ebe..3c080fd 100755
--- a/ejabberdctl.template
+++ b/ejabberdctl.template
@@ -16,6 +16,7 @@ IEX={{bindir}}/iex
EPMD={{epmd}}
INSTALLUSER={{installuser}}
ERL_LIBS={{libdir}}
+SHELL=/bin/sh
# check the proper system user is used if defined
if [ "$INSTALLUSER" != "" ] ; then
@@ -23,11 +24,11 @@ if [ "$INSTALLUSER" != "" ] ; then
for GID in `id -G`; do
if [ $GID -eq 0 ] ; then
INSTALLUSER_HOME=$(getent passwd "$INSTALLUSER" | cut -d: -f6)
- if [ -n "$INSTALLUSER_HOME" ] && [ ! -d "$INSTALLUSER_HOME" ] ; then
+ if [ -n "$INSTALLUSER_HOME" ] && [ ! -e "$INSTALLUSER_HOME" ] ; then
mkdir -p "$INSTALLUSER_HOME"
chown "$INSTALLUSER" "$INSTALLUSER_HOME"
fi
- EXEC_CMD="su $INSTALLUSER -c"
+ EXEC_CMD="su $INSTALLUSER -p -c"
fi
done
if [ `id -g` -eq `id -g $INSTALLUSER` ] ; then
@@ -91,6 +92,7 @@ EJABBERD_LOG_PATH=$LOGS_DIR/ejabberd.log
DATETIME=`date "+%Y%m%d-%H%M%S"`
ERL_CRASH_DUMP=$LOGS_DIR/erl_crash_$DATETIME.dump
ERL_INETRC=$ETC_DIR/inetrc
+HOME=$SPOOL_DIR
# define mnesia options
MNESIA_OPTS="-mnesia dir \"\\\"$SPOOL_DIR\\\"\" $MNESIA_OPTIONS"
@@ -149,6 +151,8 @@ export ERL_MAX_ETS_TABLES
export CONTRIB_MODULES_PATH
export CONTRIB_MODULES_CONF_DIR
export ERL_LIBS
+export HOME
+export SHELL
shell_escape_str()
{
--
2.9.2