Package: release.debian.org
Severity: normal
Tags: jessie
User: release.debian....@packages.debian.org
Usertags: pu

Hi,

I would like to upload ejabberd 14.07-4+deb8u2 to Jessie.
It closes several bugs (#786588, #706897, #784535, #788007) through
some small patches that are included with newer upstream releases.

All changes have been tested, the full diff is attached.

Regards,
Philipp
~$ git diff debian/14.07-4+deb8u1 debian/14.07-4+deb8u2
diff --git a/debian/changelog b/debian/changelog
index 398e65f..fdf5242 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+ejabberd (14.07-4+deb8u2) jessie; urgency=medium
+
+  * Adjust logrotate postrotate command in case ejabberd is not running (Closes: #786588)
+  * Include upstream patch to fix logging of nicknames in muc logs (Closes: #706897)
+  * Fix parsing of "ldap_dn_filter" option (Closes: #784535)
+  * postinst: restart on upgrade (Closes: #788007)
+
+ -- Philipp Huebner <debala...@debian.org>  Tue, 23 Jun 2015 15:37:47 +0200
+
 ejabberd (14.07-4+deb8u1) jessie; urgency=low
 
   * Drop debian/ejabberd.8 as there is no "ejabberd" executable anymore
diff --git a/debian/logrotate b/debian/logrotate
index 189c8e9..849e710 100644
--- a/debian/logrotate
+++ b/debian/logrotate
@@ -9,6 +9,6 @@
 	create 640 ejabberd adm
 	sharedscripts
 	postrotate
-		su ejabberd -c '/usr/sbin/ejabberdctl reopen-log' > /dev/null
+		/usr/sbin/ejabberdctl status > /dev/null && /usr/sbin/ejabberdctl reopen-log
 	endscript
 }
diff --git a/debian/patches/fix_ldap_dn_filter.patch b/debian/patches/fix_ldap_dn_filter.patch
new file mode 100644
index 0000000..ede1803
--- /dev/null
+++ b/debian/patches/fix_ldap_dn_filter.patch
@@ -0,0 +1,20 @@
+Description: Fix parsing of "ldap_dn_filter" option
+Author: Holger Weiss <hol...@zedat.fu-berlin.de>
+
+---
+ src/ejabberd_auth_ldap.erl | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/ejabberd_auth_ldap.erl b/src/ejabberd_auth_ldap.erl
+index 77937d0..7eba6ef 100644
+--- a/src/ejabberd_auth_ldap.erl
++++ b/src/ejabberd_auth_ldap.erl
+@@ -387,7 +387,7 @@ parse_options(Host) ->
+ 				       [{<<"%u">>, <<"*">>}]),
+     {DNFilter, DNFilterAttrs} =
+         eldap_utils:get_opt({ldap_dn_filter, Host}, [],
+-                            fun({DNF, DNFA}) ->
++                            fun([{DNF, DNFA}]) ->
+                                     NewDNFA = case DNFA of
+                                                   undefined ->
+                                                       [];
diff --git a/debian/patches/fix_muc_logs.patch b/debian/patches/fix_muc_logs.patch
new file mode 100644
index 0000000..368a531
--- /dev/null
+++ b/debian/patches/fix_muc_logs.patch
@@ -0,0 +1,34 @@
+From b67af5e036e359f6cfc877c2617d9b3c3d877c89 Mon Sep 17 00:00:00 2001
+From: Badlop <bad...@process-one.net>
+Date: Tue, 14 Apr 2015 15:46:43 +0200
+Subject: [PATCH] Fix nick logging in mod_muc_log plaintext (#522)
+
+---
+ src/mod_muc_log.erl | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/mod_muc_log.erl b/src/mod_muc_log.erl
+index 47b21a7..d941514 100644
+--- a/src/mod_muc_log.erl
++++ b/src/mod_muc_log.erl
+@@ -381,6 +381,11 @@ set_filemode(Fn, {FileMode, FileGroup}) ->
+ 	ok = file:change_mode(Fn, list_to_integer(integer_to_list(FileMode), 8)),
+     ok = file:change_group(Fn, FileGroup).
+ 
++htmlize_nick(Nick1, html) ->
++    htmlize(<<"<", Nick1/binary, ">">>, html);
++htmlize_nick(Nick1, plaintext) ->
++    htmlize(<<?PLAINTEXT_IN/binary, Nick1/binary, ?PLAINTEXT_OUT/binary>>, plaintext).
++
+ add_message_to_log(Nick1, Message, RoomJID, Opts,
+ 		   State) ->
+     #logstate{out_dir = OutDir, dir_type = DirType,
+@@ -391,7 +396,7 @@ add_message_to_log(Nick1, Message, RoomJID, Opts,
+ 	State,
+     Room = get_room_info(RoomJID, Opts),
+     Nick = htmlize(Nick1, FileFormat),
+-    Nick2 = htmlize(<<"<", Nick1/binary, ">">>, FileFormat),
++    Nick2 = htmlize_nick(Nick1, FileFormat),
+     Now = now(),
+     TimeStamp = case Timezone of
+ 		  local -> calendar:now_to_local_time(Now);
diff --git a/debian/patches/series b/debian/patches/series
index 1c9aa82..cd8897c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -12,3 +12,5 @@ fix_reopen_log.patch
 configure_ssl.patch
 avoid_hanging_c2s.patch
 base64.patch
+fix_muc_logs.patch
+fix_ldap_dn_filter.patch
diff --git a/debian/postinst b/debian/postinst
index 9f00d63..21ea4e2 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -131,9 +131,14 @@ case "$1" in
     configure|reconfigure)
 	adduser --quiet --system --shell /bin/sh --group --home /var/lib/ejabberd ejabberd 2> /dev/null
 	setup_ejabberd "$@"
-	update-rc.d ejabberd defaults > /dev/null
-	if ! ejabberdctl status > /dev/null; then 
-	    invoke-rc.d ejabberd start
+	if [ -x "/etc/init.d/ejabberd" ]; then
+	    update-rc.d ejabberd defaults >/dev/null
+	    if [ -n "$2" ]; then
+		action=restart
+	    else
+		action=start
+	    fi
+	    invoke-rc.d ejabberd $action || exit $?
 	fi
     ;;
 

Reply via email to