From:
[email protected]
Package: centericq-utf8
Version: 4.11.0-1
Severity: normal
Basically, the MSN add-user code in CenterICQ's libmsn interface is
deficient in two ways. The below dpatch solves one of them, specifically
the situtation that no groups are being used, and so CenterICQ fails to
match an existing group, and tries to create a group called "" on the
MSN server. The MSN server complies, but calls the group "0", which
fails to match the client's view, and so the client reattempts to create
the group next client-add.
There is another (not yet solved AFAIK) problem where the codepath that
adds the previously-unknown-to-the-MSN-server group doesn't then
continue onto adding the user in question. However, that's neither here
nor there, as it's a different usergroup, and so not my itch. ^_^
I've sent the patch to the upstream mailing list, discussion's at:
http://mailman.linuxpl.org/pipermail/cicq/2004-August/001457.html
and the patch itself is:
http://mailman.linuxpl.org/pipermail/cicq/2004-August/001458.html
#! /bin/sh -e
## msn_useradd.dpatch by Paul Hampson <
[email protected]>
##
## DP: apply patch to fix adding MSN users to contact list
## DP: when not using user groups
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
if [ $# -ne 1 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
fi
case "$1" in
-patch) patch $patch_opts -p1 < $0;;
-unpatch) patch $patch_opts -p1 -R < $0;;
*)
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1;;
esac
exit 0
--- centericq-4.11.0.orig/src/hooks/msnhook.cc
+++ centericq-4.11.0/src/hooks/msnhook.cc
@@ -331,6 +331,9 @@
gid = findgroup(ic, gname);
try {
+ if(gname.length() == 0) {
+ conn.addToGroup(nicknormalize(ic.nickname), 0);
+ } else
if(gid != -1) {
conn.addToGroup(nicknormalize(ic.nickname), gid);
} else {
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.5
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8
Versions of packages centericq-utf8 depends on:
ii centericq-common 4.11.0-1.1 A text-mode multi-protocol instant ii libc6 2.3.2.ds1-16 GNU C Library: Shared libraries an ii libcurl3 7.12.1-1 Multi-protocol file transfer libra ii libgcc1 1:3.4.1-5 GCC support library
ii libgnutls11 1.0.16-7 GNU TLS library - runtime library ii libidn11 0.5.2-2 G