On Thu, 12 Dec 2024 23:35:14 +0100,
Kirill A. Korinsky <kir...@korins.ky> wrote:
> 
> Which is a bug. Here the fix which:
> 
> 1. waits until ejabberd is started or stopped, with 1 minute timeout.
> 
> 2. kills epmd after ping, which is used to rc_check.
>

after discussion with volker@ outside the list I'd like a suggest different
patch for ejabberd which switched off using epmd out of the box.

Index: Makefile
===================================================================
RCS file: /home/cvs/ports/net/ejabberd/Makefile,v
diff -u -p -r1.54 Makefile
--- Makefile    11 Dec 2024 22:16:30 -0000      1.54
+++ Makefile    12 Dec 2024 22:31:55 -0000
@@ -1,7 +1,7 @@
 COMMENT =              robust, ubiquitous and massively scalable messaging 
platform
 
 V =                    24.10
-REVISION =             2
+REVISION =             3
 DIST_TUPLE +=          github processone ejabberd ${V} .
 
 CATEGORIES =           net
Index: patches/patch-ejabberdctl_cfg_example
===================================================================
RCS file: patches/patch-ejabberdctl_cfg_example
diff -N patches/patch-ejabberdctl_cfg_example
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-ejabberdctl_cfg_example       13 Dec 2024 13:52:59 -0000
@@ -0,0 +1,14 @@
+Do not use epmd out of the box to prevent killing system's epmd
+
+Index: ejabberdctl.cfg.example
+--- ejabberdctl.cfg.example.orig
++++ ejabberdctl.cfg.example
+@@ -62,7 +62,7 @@
+ #
+ # Default: not defined
+ #
+-#ERL_DIST_PORT=5210
++ERL_DIST_PORT=5210
+ 
+ #.
+ #' ERL_EPMD_ADDRESS: IP addresses where EPMD listens for connections
Index: pkg/ejabberd.rc
===================================================================
RCS file: /home/cvs/ports/net/ejabberd/pkg/ejabberd.rc,v
diff -u -p -r1.5 ejabberd.rc
--- pkg/ejabberd.rc     25 Nov 2024 08:36:16 -0000      1.5
+++ pkg/ejabberd.rc     12 Dec 2024 22:29:48 -0000
@@ -6,11 +6,12 @@ daemon_user=_ejabberd
 . /etc/rc.d/rc.subr
 
 rc_start() {
-       rc_exec "${daemon} ${daemon_flags} start"
+       rc_exec "${daemon} ${daemon_flags} start \
+               && ${daemon} ${daemon_flags} started"
 }
 
 rc_check() {
-       rc_exec "${daemon} ${daemon_flags} ping | grep pong"
+       rc_exec "${daemon} ${daemon_flags} ping | grep -q pong"
 }
 
 rc_reload() {
@@ -18,7 +19,8 @@ rc_reload() {
 }
 
 rc_stop() {
-       rc_exec "${daemon} ${daemon_flags} stop"
+       rc_exec "${daemon} ${daemon_flags} stop \
+               && ${daemon} ${daemon_flags} stopped"
 }
 
 rc_cmd $1

-- 
wbr, Kirill

Reply via email to