On Sun, Jan 22, 2012 at 08:48:49PM +0100, viq wrote:
> One, I don't use ejabberd as much, so not sure if I make that good
> maintainer, though I will try and keep taking care of it.

I use it, I'll look at this, thanks.


> 
> Here's an update to 2.1.10 - a bugfix release:
> http://www.process-one.net/en/ejabberd/release_notes/release_note_ejabberd_2.1.10
> 
> Update is pretty straightforward, also regenerated diffs.
> 
> Installing ejabberdctl mode 555 instead of default 550 (from a
> discussion in their channel debian changes the mode to 555 too), because
> that prevents us from starting it from rc script running as !root
> 
> Also an attempt at adding rc script to it, but it requires more work -
> it starts, but when trying to stop I get 
> =ERROR REPORT==== 2012-01-22 20:35:03 ===
> ** Connection attempt from disallowed node 'ctl-27-ejabberd@denpu' **
> 
> I need to research that more, or would appreciate someone else doing
> that.
> 
> As usual available at https://github.com/jasperla/openbsd-wip
> -- 
> viq
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/Makefile,v
> retrieving revision 1.27
> diff -u -d -r1.27 Makefile
> --- Makefile  22 Nov 2011 17:11:07 -0000      1.27
> +++ Makefile  22 Jan 2012 19:24:14 -0000
> @@ -2,7 +2,7 @@
>  
>  COMMENT=             jabber server written in Erlang
>  
> -V=                   2.1.9
> +V=                   2.1.10
>  DISTNAME=            ejabberd-$V
>  
>  CATEGORIES=          net
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/distinfo,v
> retrieving revision 1.10
> diff -u -d -r1.10 distinfo
> --- distinfo  22 Nov 2011 17:11:07 -0000      1.10
> +++ distinfo  22 Jan 2012 19:24:14 -0000
> @@ -1,5 +1,5 @@
> -MD5 (ejabberd-2.1.9.tar.gz) = KcoU6mL5BzYyLk5nIDMTUg==
> -RMD160 (ejabberd-2.1.9.tar.gz) = amQxpUmZ9cpAJz/vKJrn/ZsolHY=
> -SHA1 (ejabberd-2.1.9.tar.gz) = f6/0JS6yoQwEbx5qL8sR/U9QDqg=
> -SHA256 (ejabberd-2.1.9.tar.gz) = +X8tqtSX2dmXlFW2fOMeLdvTo81jipey4ddqash1h4E=
> -SIZE (ejabberd-2.1.9.tar.gz) = 1872544
> +MD5 (ejabberd-2.1.10.tar.gz) = cPDheYMRTGKJPkO27y6dDA==
> +RMD160 (ejabberd-2.1.10.tar.gz) = cGmu64f9B0mIvGLLTomPe5IKs8A=
> +SHA1 (ejabberd-2.1.10.tar.gz) = wRZKoA9ERcxGTMV6mGzyYHMVY1s=
> +SHA256 (ejabberd-2.1.10.tar.gz) = 
> ncLliJ6Rmn1R8rlbg9qDURZjHbgVUKEVwC5xkJrZMr4=
> +SIZE (ejabberd-2.1.10.tar.gz) = 1942456
> Index: patches/patch-src_Makefile_in
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/patches/patch-src_Makefile_in,v
> retrieving revision 1.2
> diff -u -d -r1.2 patch-src_Makefile_in
> --- patches/patch-src_Makefile_in     13 Sep 2010 17:17:06 -0000      1.2
> +++ patches/patch-src_Makefile_in     22 Jan 2012 19:24:14 -0000
> @@ -1,9 +1,10 @@
>  No need to install release notes.
> +ejabberdctl mode 550 is annoying, and debian doesn't do that either
>  
>  $OpenBSD: patch-src_Makefile_in,v 1.2 2010/09/13 17:17:06 sebastia Exp $
> ---- src/Makefile.in.orig     Mon Aug  2 18:33:20 2010
> -+++ src/Makefile.in  Wed Aug 18 00:36:10 2010
> -@@ -118,7 +118,7 @@ MSGSDIR = $(PRIVDIR)/msgs
> +--- src/Makefile.in.orig     Fri Dec 23 12:27:30 2011
> ++++ src/Makefile.in  Sun Jan 22 20:22:08 2012
> +@@ -124,7 +124,7 @@ MSGSDIR = $(PRIVDIR)/msgs
>   SPOOLDIR = $(DESTDIR)@localstatedir@/lib/ejabberd
>   
>   # /var/lock/ejabberdctl
> @@ -12,7 +13,16 @@
>   
>   # /var/lib/ejabberd/.erlang.cookie
>   COOKIEFILE = $(SPOOLDIR)/.erlang.cookie
> -@@ -257,7 +257,6 @@ install: all
> +@@ -202,7 +202,7 @@ install: all
> +     #
> +     # Administration script
> +     [ -d $(SBINDIR) ] || install -d -m 755 $(SBINDIR)
> +-    install -m 550 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
> ++    install -m 555 $(G_USER) ejabberdctl.example $(SBINDIR)/ejabberdctl
> +     #
> +     # Init script
> +     sed -e "s*@ctlscriptpath@*$(SBINDIR)*" \
> +@@ -264,7 +264,6 @@ install: all
>       install -m 644 ../doc/dev.html $(DOCDIR)
>       install -m 644 ../doc/guide.html $(DOCDIR)
>       install -m 644 ../doc/*.png $(DOCDIR)
> Index: patches/patch-src_ejabberd_cfg_example
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/patches/patch-src_ejabberd_cfg_example,v
> retrieving revision 1.4
> diff -u -d -r1.4 patch-src_ejabberd_cfg_example
> --- patches/patch-src_ejabberd_cfg_example    23 Dec 2010 22:54:39 -0000      
> 1.4
> +++ patches/patch-src_ejabberd_cfg_example    22 Jan 2012 19:24:14 -0000
> @@ -1,6 +1,6 @@
>  $OpenBSD: patch-src_ejabberd_cfg_example,v 1.4 2010/12/23 22:54:39 jasper 
> Exp $
> ---- src/ejabberd.cfg.example.orig    Fri Mar 12 11:40:41 2010
> -+++ src/ejabberd.cfg.example Sat Mar 13 12:41:08 2010
> +--- src/ejabberd.cfg.example.orig    Fri Dec 23 12:27:30 2011
> ++++ src/ejabberd.cfg.example Sun Jan 22 20:11:03 2012
>  @@ -115,7 +115,7 @@
>                       %% certificate, specify the full path to the
>                       %% file and uncomment this line:
> @@ -29,7 +29,7 @@
>   
>     {5269, ejabberd_s2s_in, [
>                          {shaper, s2s_shaper},
> -@@ -172,18 +172,18 @@
> +@@ -173,18 +173,18 @@
>   %% Allowed values are: false optional required required_trusted
>   %% You must specify a certificate file.
>   %%
> Index: patches/patch-src_ejabberdctl_template
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/patches/patch-src_ejabberdctl_template,v
> retrieving revision 1.4
> diff -u -d -r1.4 patch-src_ejabberdctl_template
> --- patches/patch-src_ejabberdctl_template    13 Sep 2010 17:17:06 -0000      
> 1.4
> +++ patches/patch-src_ejabberdctl_template    22 Jan 2012 19:24:14 -0000
> @@ -1,6 +1,6 @@
>  $OpenBSD: patch-src_ejabberdctl_template,v 1.4 2010/09/13 17:17:06 sebastia 
> Exp $
> ---- src/ejabberdctl.template.orig    Mon Aug  2 18:33:20 2010
> -+++ src/ejabberdctl.template Wed Aug 18 00:30:24 2010
> +--- src/ejabberdctl.template.orig    Fri Dec 23 12:27:30 2011
> ++++ src/ejabberdctl.template Sun Jan 22 20:11:03 2012
>  @@ -1,7 +1,7 @@
>   #!/bin/sh
>   
> @@ -54,7 +54,7 @@
>       fi
>   done
>   if [ "$ID" -eq "$EJID" ] ; then
> -@@ -86,7 +86,7 @@ ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES $ERL
> +@@ -88,7 +88,7 @@ ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES $ERL
>   
>   # define additional environment variables
>   if [ "$EJABBERDDIR" = "" ]; then
> @@ -63,16 +63,16 @@
>   fi
>   if [ "$EJABBERD_EBIN_PATH" = "" ]; then
>       EJABBERD_EBIN_PATH=$EJABBERDDIR/ebin
> -@@ -112,7 +112,7 @@ ERL_INETRC=$ETCDIR/inetrc
> +@@ -114,7 +114,7 @@ ERL_INETRC=$ETCDIR/inetrc
>   HOME=$SPOOLDIR
>   
>   # create the home dir with the proper user if doesn't exist, because it 
> stores cookie file
>  -[ -d $HOME ] || $EXEC_CMD "mkdir -p $HOME"
>  +#[ -d $HOME ] || $EXEC_CMD "mkdir -p $HOME"
>   
> - # export global variables
> - export EJABBERD_CONFIG_PATH
> -@@ -237,7 +237,7 @@ ctl ()
> + # Change to a directory readable by INSTALLUSER to
> + # prevent "File operation error: eacces." messages
> +@@ -244,7 +244,7 @@ ctl ()
>       # using flock if available. Expects a linux-style
>       # flock that can lock a file descriptor.
>       MAXCONNID=100
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/net/ejabberd/pkg/PLIST,v
> retrieving revision 1.10
> diff -u -d -r1.10 PLIST
> --- pkg/PLIST 22 Nov 2011 17:11:07 -0000      1.10
> +++ pkg/PLIST 22 Jan 2012 19:24:14 -0000
> @@ -49,6 +49,7 @@
>  lib/ejabberd/ebin/ejabberd_piefxis.beam
>  lib/ejabberd/ebin/ejabberd_rdbms.beam
>  lib/ejabberd/ebin/ejabberd_receiver.beam
> +lib/ejabberd/ebin/ejabberd_regexp.beam
>  lib/ejabberd/ebin/ejabberd_router.beam
>  lib/ejabberd/ebin/ejabberd_s2s.beam
>  lib/ejabberd/ebin/ejabberd_s2s_in.beam
> @@ -267,6 +268,7 @@
>  share/examples/ejabberd/transport-configs/init-scripts/jit
>  share/examples/ejabberd/transport-configs/init-scripts/msn-transport
>  share/examples/ejabberd/transport-configs/init-scripts/yahoo-transport-2
> +@rcscript ${RCDIR}/ejabberd
>  @owner _ejabberd
>  @group _ejabberd
>  @sample /var/log/ejabberd/
> Index: pkg/ejabberd.rc
> ===================================================================
> RCS file: pkg/ejabberd.rc
> diff -N pkg/ejabberd.rc
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ pkg/ejabberd.rc   22 Jan 2012 19:24:14 -0000
> @@ -0,0 +1,22 @@
> +#!/bin/sh
> +#
> +# $OpenBSD: ejabberd.rc,v 1.3 2011/07/08 04:31:57 ajacoutot Exp $
> +
> +daemon="${TRUEPREFIX}/sbin/ejabberdctl"
> +daemon_user="_ejabberd"
> +daemon_flags="start"
> +
> +. /etc/rc.d/rc.subr
> +
> +rc_reload=NO
> +
> +rc_check() {
> +     # return 1 is needed: ejabberdctl returns a higher error code on failure
> +     ${TRUEPREFIX}/sbin/ejabberdctl status || return 1
> +}
> +
> +rc_stop() {
> +     ${TRUEPREFIX}/sbin/ejabberdctl stop
> +}
> +
> +rc_cmd $1



-- 
Antoine

Reply via email to