summaryrefslogtreecommitdiff
path: root/chat
diff options
context:
space:
mode:
authorjnemeth <jnemeth>2007-08-30 00:47:01 +0000
committerjnemeth <jnemeth>2007-08-30 00:47:01 +0000
commit7d331cacf4a98106ab3e580b8eaa95e5bf3a615d (patch)
tree86699404b032e5ec038476b853510e24469ce996 /chat
parentf1f3cec0df9f24b5807f77cda032ce2aec6382ea (diff)
downloadpkgsrc-7d331cacf4a98106ab3e580b8eaa95e5bf3a615d.tar.gz
Text mode menu- and window-driven IM interface that supports the
ICQ2000, Yahoo!, AIM, IRC, MSN, Gadu-Gadu and Jabber protocols. It allows you to send, receive, and forward messages, URLs, SMSes (both through the ICQ server and e-mail gateways supported by Mirabilis), contacts, and email express messages. It also lets you set your own and fetch others' away messages, and define external handlers for incoming events. Apart from IM it supports LiveJournal management and receiving RSS feeds. This is a fork of CenterICQ.
Diffstat (limited to 'chat')
-rw-r--r--chat/centerim/DESCR8
-rw-r--r--chat/centerim/Makefile68
-rw-r--r--chat/centerim/PLIST28
-rw-r--r--chat/centerim/distinfo22
-rw-r--r--chat/centerim/options.mk16
-rw-r--r--chat/centerim/patches/patch-aa47
-rw-r--r--chat/centerim/patches/patch-ac15
-rw-r--r--chat/centerim/patches/patch-ad14
-rw-r--r--chat/centerim/patches/patch-al21
-rw-r--r--chat/centerim/patches/patch-am21
-rw-r--r--chat/centerim/patches/patch-an21
-rw-r--r--chat/centerim/patches/patch-ao21
-rw-r--r--chat/centerim/patches/patch-ap21
-rw-r--r--chat/centerim/patches/patch-aq21
-rw-r--r--chat/centerim/patches/patch-ar21
-rw-r--r--chat/centerim/patches/patch-as21
-rw-r--r--chat/centerim/patches/patch-au27
-rw-r--r--chat/centerim/patches/patch-av41
-rw-r--r--chat/centerim/patches/patch-aw23
-rw-r--r--chat/centerim/patches/patch-ax194
-rw-r--r--chat/centerim/patches/patch-ay46
-rw-r--r--chat/centerim/patches/patch-az108
22 files changed, 825 insertions, 0 deletions
diff --git a/chat/centerim/DESCR b/chat/centerim/DESCR
new file mode 100644
index 00000000000..203e767e50d
--- /dev/null
+++ b/chat/centerim/DESCR
@@ -0,0 +1,8 @@
+Text mode menu- and window-driven IM interface that supports the
+ICQ2000, Yahoo!, AIM, IRC, MSN, Gadu-Gadu and Jabber protocols. It
+allows you to send, receive, and forward messages, URLs, SMSes
+(both through the ICQ server and e-mail gateways supported by
+Mirabilis), contacts, and email express messages. It also lets you
+set your own and fetch others' away messages, and define external
+handlers for incoming events. Apart from IM it supports LiveJournal
+management and receiving RSS feeds. This is a fork of CenterICQ.
diff --git a/chat/centerim/Makefile b/chat/centerim/Makefile
new file mode 100644
index 00000000000..aaa7ed9268e
--- /dev/null
+++ b/chat/centerim/Makefile
@@ -0,0 +1,68 @@
+# $NetBSD: Makefile,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+#
+
+DISTNAME= centerim-4.22.1
+CATEGORIES= chat
+MASTER_SITES= http://www.centerim.org/download/releases/ \
+ http://transacid.de/centerim/releases/
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.centerim.org/
+COMMENT= Instant Messenger interface supporting many protocols
+
+CONFLICTS= centericq-[0-9]*
+
+USE_PKGLOCALEDIR= yes
+USE_TOOLS+= gmake perl:run
+USE_LANGUAGES= c c++
+
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS+= --with-ssl --with-openssl=${SSLBASE:Q}
+LIBS+= ${LDFLAGS}
+
+REPLACE_PERL= misc/cicqconv
+
+INCOMPAT_CURSES+= NetBSD-1.[45]*-* NetBSD-1.6-* NetBSD-1.6.[1-9]-*
+INCOMPAT_CURSES+= NetBSD-1.6_*-* NetBSD-1.6.[1-9]_*-* NetBSD-1.6[A-T]-*
+INCOMPAT_CURSES+= NetBSD-2.*-* NetBSD-3.*-* # see PR 29060
+
+.include "options.mk"
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} == "NetBSD"
+CPPFLAGS+= -DAUDIO_PLAYER="\"/usr/bin/audioplay\""
+.else
+DEPENDS+= sox>=12.17.4:../../audio/sox
+EVAL_PREFIX+= SOX_PREFIX=sox
+CPPFLAGS+= -DAUDIO_PLAYER="\"${SOX_PREFIX}/bin/play\""
+.endif
+
+.if !empty(MACHINE_ARCH:Msparc64)
+GCC_REQD+= 3.0 # see PR 29185
+.endif
+
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/ncurses/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+.include "../../graphics/jpeg/buildlink3.mk"
+
+.if defined(BUILDLINK_LIBICONV_LDADD) && !empty(BUILDLINK_LIBICONV_LDADD)
+#
+# libiconv depends on configure scripts to include <iconv.h> before
+# trying to link against -liconv. Unfortunately, centericq's script
+# doesn't do this, so fake it.
+#
+CONFIGURE_ENV+= ac_cv_lib_iconv_iconv=yes
+.endif
+
+post-install:
+ ${INSTALL_MAN} ${WRKSRC}/centerim.1 ${PREFIX}/${PKGMANDIR}/man1/
+
+.include "../../mk/bsd.pkg.mk"
+
+.if ${MACHINE_ARCH} == "alpha"
+# avoid toolchain bugs
+CFLAGS:= ${CFLAGS:C/-O[0-9]*//g}
+.endif
diff --git a/chat/centerim/PLIST b/chat/centerim/PLIST
new file mode 100644
index 00000000000..8593fb34162
--- /dev/null
+++ b/chat/centerim/PLIST
@@ -0,0 +1,28 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+bin/centerim
+bin/cicqconv
+man/man1/centerim.1
+man/man1/cicqconv.1
+share/centerim/email.wav
+share/centerim/msg.wav
+share/centerim/offline.wav
+share/centerim/online.wav
+share/centerim/sms.wav
+share/centerim/url.wav
+share/locale/bg/LC_MESSAGES/centerim.mo
+share/locale/cs/LC_MESSAGES/centerim.mo
+share/locale/de/LC_MESSAGES/centerim.mo
+share/locale/es/LC_MESSAGES/centerim.mo
+share/locale/fr/LC_MESSAGES/centerim.mo
+share/locale/hu/LC_MESSAGES/centerim.mo
+share/locale/it/LC_MESSAGES/centerim.mo
+share/locale/ms/LC_MESSAGES/centerim.mo
+share/locale/nl/LC_MESSAGES/centerim.mo
+share/locale/pl/LC_MESSAGES/centerim.mo
+share/locale/pt_BR/LC_MESSAGES/centerim.mo
+share/locale/ro/LC_MESSAGES/centerim.mo
+share/locale/ru/LC_MESSAGES/centerim.mo
+share/locale/sv/LC_MESSAGES/centerim.mo
+share/locale/uk/LC_MESSAGES/centerim.mo
+share/locale/zh_TW.Big5/LC_MESSAGES/centerim.mo
+@dirrm share/centericq
diff --git a/chat/centerim/distinfo b/chat/centerim/distinfo
new file mode 100644
index 00000000000..27fa6e58aca
--- /dev/null
+++ b/chat/centerim/distinfo
@@ -0,0 +1,22 @@
+$NetBSD: distinfo,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+SHA1 (centerim-4.22.1.tar.gz) = 221b3e505d5ea432977db7e5c0cebc85b4f928f2
+RMD160 (centerim-4.22.1.tar.gz) = 165b1acad70fa5d38b045510045b438c89776f3f
+Size (centerim-4.22.1.tar.gz) = 2606696 bytes
+SHA1 (patch-aa) = 244ccb35ceb53715af2134d27ab4c591ed62dd30
+SHA1 (patch-ac) = b32ff8df936ea66f3ff029ba322d4a94f1ebe4e6
+SHA1 (patch-ad) = bfe19ca98facfbb23a87dd28a176980fb4e986de
+SHA1 (patch-al) = d0c627ffc4ec2a7d179367dd2ddbbfd5ba52a377
+SHA1 (patch-am) = 942bab1a28fd79a40ac824e58855af35fb139141
+SHA1 (patch-an) = db7ec68a563f44e0a1350b4adb659dcbac183a23
+SHA1 (patch-ao) = ce9585139b7390884fcbbb92bcd9d107fc5b8a8b
+SHA1 (patch-ap) = b2aa04db28b38332d00b1cdb22887e2985edea59
+SHA1 (patch-aq) = 03be56591d3c925a6ffa48a1b87eb61a582f25c6
+SHA1 (patch-ar) = c74e757e3ef6bf1f6bc9575955f5b8f73ac4b51d
+SHA1 (patch-as) = b74310eb515c425cc98528f2b0384652370cef18
+SHA1 (patch-au) = 542111ddc738cc377c037ad910cedc0772707faf
+SHA1 (patch-av) = bf032d4447349d3b4f75c43f58eca3e0342b9f9d
+SHA1 (patch-aw) = d0238209328a6da5ae9f74d37f0fc44cf964b528
+SHA1 (patch-ax) = a96edcc859b30fde6e6577a833005fab8d45eabf
+SHA1 (patch-ay) = d7511f39004f2a86bda14b265ab2c4d03214dc2d
+SHA1 (patch-az) = 4542871c64fffb311cc464bc0b25fb59ef2db3b3
diff --git a/chat/centerim/options.mk b/chat/centerim/options.mk
new file mode 100644
index 00000000000..afbd4efd4dd
--- /dev/null
+++ b/chat/centerim/options.mk
@@ -0,0 +1,16 @@
+# $NetBSD: options.mk,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+#
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.centerim
+PKG_SUPPORTED_OPTIONS= gpgme
+PKG_SUGGESTED_OPTIONS= gpgme
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mgpgme)
+#CONFIGURE_ARGS+= --with-gpgme=${BUILDLINK_PREFIX.gpgme}
+#CONFIGURE_ARGS+= --with-gpgme=${BUILDLINK_PREFIX.gpgme:Q}/bin/gpgme-config
+. include "../../security/gpgme/buildlink3.mk"
+.else
+CONFIGURE_ARGS+= --without-gpgme
+.endif
diff --git a/chat/centerim/patches/patch-aa b/chat/centerim/patches/patch-aa
new file mode 100644
index 00000000000..2e665943551
--- /dev/null
+++ b/chat/centerim/patches/patch-aa
@@ -0,0 +1,47 @@
+$NetBSD: patch-aa,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- src/icqconf.cc.orig 2005-01-27 00:52:47.000000000 +0100
++++ src/icqconf.cc
+@@ -27,7 +27,11 @@
+ #include <dirent.h>
+ #include <fstream>
+
+-#ifdef __sun__
++#ifdef __NetBSD__
++/* Find out about __NetBSD_Version__ */
++# include <sys/param.h>
++#endif
++#if defined(__sun) || (defined(__NetBSD__) && (__NetBSD_Version__ >= 299000900))
+ #include <sys/statvfs.h>
+ #endif
+
+@@ -644,13 +648,13 @@ void icqconf::loadsounds() {
+
+ switch(rs) {
+ case rscard:
+- fo << "*\tmsg\tplay " << SHARE_DIR << "/msg.wav" << endl;
+- fo << "*\turl\tplay " << SHARE_DIR << "/url.wav" << endl;
+- fo << "*\temail\tplay " << SHARE_DIR << "/email.wav" << endl;
+- fo << "*\tonline\tplay " << SHARE_DIR << "/online.wav" << endl;
+- fo << "*\toffline\tplay " << SHARE_DIR << "/offline.wav" << endl;
+- fo << "*\tsms\tplay " << SHARE_DIR << "/sms.wav" << endl;
+- break;
++ fo << "*\tmsg\t" AUDIO_PLAYER " " << SHARE_DIR << "/msg.wav" << endl;
++ fo << "*\turl\t" AUDIO_PLAYER " " << SHARE_DIR << "/url.wav" << endl;
++ fo << "*\temail\t" AUDIO_PLAYER " " << SHARE_DIR << "/email.wav" << endl;
++ fo << "*\tonline\t" AUDIO_PLAYER " " << SHARE_DIR << "/online.wav" << endl;
++ fo << "*\toffline\t" AUDIO_PLAYER << SHARE_DIR << "/offline.wav" << endl;
++ fo << "*\tsms\t" AUDIO_PLAYER " " << SHARE_DIR << "/sms.wav" << endl;
++ break;
+
+ case rsspeaker:
+ fo << "*\tmsg\t!spk1" << endl;
+@@ -1433,7 +1437,7 @@ string icqconf::gethttpproxypasswd() con
+ void icqconf::checkdiskspace() {
+ fenoughdiskspace = true;
+
+-#ifndef __sun__
++#if !(defined(__sun) || (defined(__NetBSD__) && (__NetBSD_Version__ >= 299000900)))
+ struct statfs st;
+ if(!statfs(conf.getdirname().c_str(), &st)) {
+ #else
diff --git a/chat/centerim/patches/patch-ac b/chat/centerim/patches/patch-ac
new file mode 100644
index 00000000000..94a53405329
--- /dev/null
+++ b/chat/centerim/patches/patch-ac
@@ -0,0 +1,15 @@
+$NetBSD: patch-ac,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- libmsn/msn/util.cpp.orig 2007-06-13 15:44:04.000000000 -0700
++++ libmsn/msn/util.cpp
+@@ -24,6 +24,10 @@
+ #include <errno.h>
+ #include <cctype>
+
++
++// Get rid of the macro for platforms not having c++-safe headers.
++#undef toupper
++
+ namespace MSN
+ {
+ std::pair<std::string, int> splitServerAddress(const std::string & address, int default_port)
diff --git a/chat/centerim/patches/patch-ad b/chat/centerim/patches/patch-ad
new file mode 100644
index 00000000000..db7afd11cd0
--- /dev/null
+++ b/chat/centerim/patches/patch-ad
@@ -0,0 +1,14 @@
+$NetBSD: patch-ad,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- kksystr/include/kkiproc.h.orig Tue Jul 9 13:07:29 2002
++++ kksystr/include/kkiproc.h
+@@ -9,7 +9,9 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#ifdef __linux__
+ #include <utmp.h>
++#endif
+ #include <string.h>
+ #include <ctype.h>
+
diff --git a/chat/centerim/patches/patch-al b/chat/centerim/patches/patch-al
new file mode 100644
index 00000000000..9336fae2987
--- /dev/null
+++ b/chat/centerim/patches/patch-al
@@ -0,0 +1,21 @@
+$NetBSD: patch-al,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- connwrap/configure.orig 2007-06-13 15:45:08.000000000 -0700
++++ connwrap/configure
+@@ -1045,11 +1045,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-am b/chat/centerim/patches/patch-am
new file mode 100644
index 00000000000..a5386f52ded
--- /dev/null
+++ b/chat/centerim/patches/patch-am
@@ -0,0 +1,21 @@
+$NetBSD: patch-am,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- kkconsui/configure.orig 2007-06-13 15:45:11.000000000 -0700
++++ kkconsui/configure
+@@ -1090,11 +1090,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-an b/chat/centerim/patches/patch-an
new file mode 100644
index 00000000000..f936f2f96af
--- /dev/null
+++ b/chat/centerim/patches/patch-an
@@ -0,0 +1,21 @@
+$NetBSD: patch-an,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- kkstrtext/configure.orig 2007-06-13 15:44:42.000000000 -0700
++++ kkstrtext/configure
+@@ -1134,11 +1134,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-ao b/chat/centerim/patches/patch-ao
new file mode 100644
index 00000000000..0a5a5c24725
--- /dev/null
+++ b/chat/centerim/patches/patch-ao
@@ -0,0 +1,21 @@
+$NetBSD: patch-ao,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- kksystr/configure.orig 2007-06-13 15:44:20.000000000 -0700
++++ kksystr/configure
+@@ -1082,11 +1082,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-ap b/chat/centerim/patches/patch-ap
new file mode 100644
index 00000000000..417a12782e6
--- /dev/null
+++ b/chat/centerim/patches/patch-ap
@@ -0,0 +1,21 @@
+$NetBSD: patch-ap,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- libicq2000/configure.orig 2007-06-13 15:45:05.000000000 -0700
++++ libicq2000/configure
+@@ -1084,11 +1084,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-aq b/chat/centerim/patches/patch-aq
new file mode 100644
index 00000000000..f23f3bfce00
--- /dev/null
+++ b/chat/centerim/patches/patch-aq
@@ -0,0 +1,21 @@
+$NetBSD: patch-aq,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- libjabber/configure.orig 2007-06-13 15:44:16.000000000 -0700
++++ libjabber/configure
+@@ -1044,11 +1044,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-ar b/chat/centerim/patches/patch-ar
new file mode 100644
index 00000000000..90e7b708a69
--- /dev/null
+++ b/chat/centerim/patches/patch-ar
@@ -0,0 +1,21 @@
+$NetBSD: patch-ar,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- libmsn/configure.orig 2007-06-13 15:45:14.000000000 -0700
++++ libmsn/configure
+@@ -1087,11 +1087,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-as b/chat/centerim/patches/patch-as
new file mode 100644
index 00000000000..66ed9dee2f5
--- /dev/null
+++ b/chat/centerim/patches/patch-as
@@ -0,0 +1,21 @@
+$NetBSD: patch-as,v 1.1.1.1 2007/08/30 00:47:01 jnemeth Exp $
+
+--- libyahoo2/configure.orig 2007-06-13 15:44:24.000000000 -0700
++++ libyahoo2/configure
+@@ -1084,11 +1084,11 @@ Try \`$0 --help' for more information."
+ export $ac_envvar ;;
+
+ *)
+- # FIXME: should be removed in autoconf 3.0.
+- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
++# # FIXME: should be removed in autoconf 3.0.
++# echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++# expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++# echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++# : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
diff --git a/chat/centerim/patches/patch-au b/chat/centerim/patches/patch-au
new file mode 100644
index 00000000000..e80b62e6b4b
--- /dev/null
+++ b/chat/centerim/patches/patch-au
@@ -0,0 +1,27 @@
+$NetBSD: patch-au,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+Part of a fix for CVE-2007-3713.
+
+--- src/hooks/jabberhook.cc.orig 2007-07-19 02:34:54.000000000 +0200
++++ src/hooks/jabberhook.cc
+@@ -36,6 +36,8 @@
+ #define DEFAULT_CONFSERV "conference.jabber.org"
+ #define PERIOD_KEEPALIVE 30
+
++#define NOTIFBUF 512
++
+ static void jidsplit(const string &jid, string &user, string &host, string &rest) {
+ int pos;
+ user = jid;
+@@ -1289,8 +1286,9 @@ void jabberhook::gotversion(const imcont
+ if(vinfo.size() > 128)
+ vinfo.erase(128);
+
+- char buf[256];
+- sprintf(buf, _("The remote is using %s"), vinfo.c_str());
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("The remote is using %s"), vinfo.c_str());
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(ic, buf));
+ }
+ }
diff --git a/chat/centerim/patches/patch-av b/chat/centerim/patches/patch-av
new file mode 100644
index 00000000000..5f0c5a2caf6
--- /dev/null
+++ b/chat/centerim/patches/patch-av
@@ -0,0 +1,41 @@
+$NetBSD: patch-av,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+--- src/hooks/abstracthook.cc.orig 2007-07-19 02:24:38.000000000 +0200
++++ src/hooks/abstracthook.cc
+@@ -40,6 +40,8 @@
+
+ #include <time.h>
+
++#define NOTIFBUF 512
++
+ time_t timer_current = time(0);
+
+ abstracthook::abstracthook(protocolname aproto)
+@@ -339,7 +341,7 @@ bool abstracthook::regattempt(unsigned i
+
+ void abstracthook::log(logevent ev, ...) {
+ va_list ap;
+- char buf[512];
++ char buf[NOTIFBUF];
+ static map<logevent, string> lst;
+
+ if(lst.empty()) {
+@@ -354,7 +356,8 @@ void abstracthook::log(logevent ev, ...)
+ }
+
+ va_start(ap, ev);
+- vsprintf(buf, lst[ev].c_str(), ap);
++ vsnprintf(buf, NOTIFBUF, lst[ev].c_str(), ap);
++ buf[NOTIFBUF-1] = '\0';
+ va_end(ap);
+
+ face.log((string) "+ [" + conf.getprotocolname(proto) + "] " + buf);
+@@ -751,7 +754,7 @@ string abstracthook::getTimezoneIDtoStri
+ if(id > 24 || id < -24) {
+ return "Unspecified";
+ } else {
+- char buf[32];
++ static char buf[32];
+ sprintf(buf, "GMT %s%d:%s", id > 0 ? "-" : "+", abs(id/2), id % 2 == 0 ? "00" : "30");
+ return buf;
+ }
diff --git a/chat/centerim/patches/patch-aw b/chat/centerim/patches/patch-aw
new file mode 100644
index 00000000000..1df49f67c58
--- /dev/null
+++ b/chat/centerim/patches/patch-aw
@@ -0,0 +1,23 @@
+$NetBSD: patch-aw,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+--- src/hooks/aimhook.cc.orig 2007-07-19 02:24:38.000000000 +0200
++++ src/hooks/aimhook.cc
+@@ -32,6 +32,8 @@
+ #include "imlogger.h"
+ #include "eventmanager.h"
+
++#define NOTIFBUF 512
++
+ aimhook ahook;
+
+ aimhook::aimhook()
+@@ -293,7 +295,8 @@ void aimhook::loadprofile() {
+
+ if(access(fname.c_str(), R_OK)) {
+ char sbuf[512];
+- sprintf(sbuf, _("I do really enjoy the default AIM profile of centerim %s."), VERSION);
++ snprintf(sbuf, 512, _("I do really enjoy the default AIM profile of centerim %s."), VERSION);
++ sbuf[511] = '\0';
+ profile.info = sbuf;
+ saveprofile();
+ }
diff --git a/chat/centerim/patches/patch-ax b/chat/centerim/patches/patch-ax
new file mode 100644
index 00000000000..c249c3d8f65
--- /dev/null
+++ b/chat/centerim/patches/patch-ax
@@ -0,0 +1,194 @@
+$NetBSD: patch-ax,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+Part of a fix for CVE-2007-3713.
+
+--- src/hooks/irchook.cc.orig 2007-07-19 02:24:38.000000000 +0200
++++ src/hooks/irchook.cc
+@@ -35,6 +35,8 @@
+
+ #include <iterator>
+
++#define NOTIFBUF 512
++
+ // ----------------------------------------------------------------------------
+
+ irchook irhook;
+@@ -609,11 +611,12 @@ void irchook::rawcommand(const string &c
+
+ void irchook::channelfatal(string room, const char *fmt, ...) {
+ va_list ap;
+- char buf[1024];
++ char buf[NOTIFBUF];
+ vector<channelInfo>::iterator i;
+
+ va_start(ap, fmt);
+- vsprintf(buf, fmt, ap);
++ vsnprintf(buf, NOTIFBUF, fmt, ap);
++ buf[NOTIFBUF-1] = '\0';
+ va_end(ap);
+
+ if(room.substr(0, 1) != "#")
+@@ -1196,7 +1199,7 @@ void irchook::errorhandler(void *connect
+ void irchook::nickchanged(void *connection, void *cli, ...) {
+ va_list ap;
+ icqcontact *c;
+- char buf[100];
++ char buf[NOTIFBUF];
+
+ va_start(ap, cli);
+ char *oldnick = va_arg(ap, char *);
+@@ -1218,7 +1221,8 @@ void irchook::nickchanged(void *connecti
+
+ }
+
+- sprintf(buf, _("The user has changed their nick from %s to %s"), oldnick, newnick);
++ snprintf(buf, NOTIFBUF, _("The user has changed their nick from %s to %s"), oldnick, newnick);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(c, buf));
+ }
+ }
+@@ -1254,18 +1258,20 @@ const char * const command, const char *
+
+ void irchook::subreply(void *conn, void *cli, const char * const nick,
+ const char * const command, const char * const args) {
+- char buf[512];
++ char buf[NOTIFBUF];
+
+ if(!strcmp(command, "PING")) {
+ map<string, time_t>::iterator i = irhook.pingtime.find(up(nick));
+
+ if(i != irhook.pingtime.end()) {
+- sprintf(buf, _("PING reply from the user: %d second(s)"), time(0)-i->second);
++ snprintf(buf, NOTIFBUF, _("PING reply from the user: %d second(s)"), time(0)-i->second);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(nick, irc), buf));
+ }
+
+ } else if(!strcmp(command, "VERSION")) {
+- sprintf(buf, _("The remote is using %s"), args);
++ snprintf(buf, NOTIFBUF, _("The remote is using %s"), args);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(nick, irc), buf));
+
+ }
+@@ -1378,8 +1384,9 @@ void irchook::chatuserjoined(void *conn,
+ if(strlen(email))
+ uname += (string) " (" + email + ")";
+
+- char buf[512];
+- sprintf(buf, _("%s has joined."), uname.c_str());
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("%s has joined."), uname.c_str());
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(room, irc), buf));
+ }
+ }
+@@ -1395,14 +1402,16 @@ void irchook::chatuserleft(void *conn, v
+
+ if(conf.getourid(irc).nickname != who) {
+ string text;
+- char buf[512];
++ char buf[NOTIFBUF];
+
+- sprintf(buf, _("%s has left"), who); text = buf;
++ snprintf(buf, NOTIFBUF, _("%s has left"), who); text = buf;
++ buf[NOTIFBUF-1] = '\0';
+
+ if(reason)
+ if(strlen(reason)) {
+ if(strlen(reason) > 450) reason[450] = 0;
+- sprintf(buf, _("reason: %s"), reason);
++ snprintf(buf, NOTIFBUF, _("reason: %s"), reason);
++ buf[NOTIFBUF-1] = '\0';
+ text += (string) "; " + buf + ".";
+ }
+
+@@ -1422,13 +1431,15 @@ void irchook::chatuserkicked(void *conn,
+
+ if(conf.getourid(irc).nickname != who) {
+ string text;
+- char buf[512];
++ char buf[NOTIFBUF];
+
+- sprintf(buf, _("%s has been kicked by %s"), who, by); text = buf;
++ snprintf(buf, NOTIFBUF, _("%s has been kicked by %s"), who, by); text = buf;
++ buf[NOTIFBUF-1] = '\0';
+
+ if(reason)
+ if(strlen(reason)) {
+- sprintf(buf, _("reason: %s"), reason);
++ snprintf(buf, NOTIFBUF, _("reason: %s"), reason);
++ buf[NOTIFBUF-1] = '\0';
+ text += (string) "; " + buf + ".";
+ }
+
+@@ -1451,13 +1462,15 @@ void irchook::chatgottopic(void *conn, v
+ return;
+
+ string text;
+- char buf[1024];
+- sprintf(buf, _("Channel topic now is: %s"), topic);
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("Channel topic now is: %s"), topic);
++ buf[NOTIFBUF-1] = '\0';
+ text = buf;
+
+ if(author)
+ if(strlen(author)) {
+- sprintf(buf, _("set by %s"), author);
++ snprintf(buf, NOTIFBUF, _("set by %s"), author);
++ buf[NOTIFBUF-1] = '\0';
+ text += (string) "; " + buf + ".";
+ }
+
+@@ -1474,8 +1487,9 @@ void irchook::chatuseropped(void *conn,
+ va_end(ap);
+
+ if(by) {
+- char buf[512];
+- sprintf(buf, _("%s has been opped by %s."), who, by);
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("%s has been opped by %s."), who, by);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(room, irc), buf));
+ }
+ }
+@@ -1490,8 +1504,9 @@ void irchook::chatuserdeopped(void *conn
+ va_end(ap);
+
+ if(by) {
+- char buf[512];
+- sprintf(buf, _("%s has been deopped by %s."), who, by);
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("%s has been deopped by %s."), who, by);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(room, irc), buf));
+ }
+ }
+@@ -1504,10 +1519,10 @@ void irchook::chatopped(void *conn, void
+ char *by = va_arg(ap, char *);
+ va_end(ap);
+
+- char buf[512];
+- if(by) sprintf(buf, _("%s has opped us."), by);
+- else strcpy(buf, _("you are an op here"));
+-
++ char buf[NOTIFBUF];
++ if(by) snprintf(buf, NOTIFBUF, _("%s has opped us."), by);
++ else strncpy(buf, _("you are an op here"), NOTIFBUF);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(room, irc), buf));
+ }
+
+@@ -1519,8 +1534,9 @@ void irchook::chatdeopped(void *conn, vo
+ char *by = va_arg(ap, char *);
+ va_end(ap);
+
+- char buf[512];
+- sprintf(buf, _("%s has deopped us."), by);
++ char buf[NOTIFBUF];
++ snprintf(buf, NOTIFBUF, _("%s has deopped us."), by);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(imcontact(room, irc), buf));
+ }
+
diff --git a/chat/centerim/patches/patch-ay b/chat/centerim/patches/patch-ay
new file mode 100644
index 00000000000..67407e8c8d1
--- /dev/null
+++ b/chat/centerim/patches/patch-ay
@@ -0,0 +1,46 @@
+$NetBSD: patch-ay,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+Part of a fix for CVE-2007-3713.
+
+--- src/hooks/ljhook.cc.orig 2005-01-07 02:27:04.000000000 +0100
++++ src/hooks/ljhook.cc
+@@ -37,6 +37,8 @@ ljhook lhook;
+
+ #define PERIOD_FRIENDS 3600
+
++#define NOTIFBUF 512
++
+ ljhook::ljhook(): abstracthook(livejournal), fonline(false), sdest(0) {
+ fcapabs.insert(hookcapab::nochat);
+ }
+@@ -654,7 +656,7 @@ void ljhook::messageack_cb(MessageEvent
+ map<string, string> nfriendof;
+ map<string, string>::const_iterator in;
+ vector<string>::iterator il;
+- char buf[512];
++ char buf[NOTIFBUF];
+
+ for(i = 1; i <= count; i++) {
+ username = params[(string) "friendof_" + i2str(i) + "_user"];
+@@ -669,8 +671,9 @@ void ljhook::messageack_cb(MessageEvent
+ if(!foempty) {
+ bd = (string) "http://" + conf.getourid(proto).server + "/users/" + in->first;
+
+- snprintf(buf, sizeof(buf), _("The user %s (%s) has added you to his/her friend list\n\nJournal address: %s"),
++ snprintf(buf, NOTIFBUF, _("The user %s (%s) has added you to his/her friend list\n\nJournal address: %s"),
+ in->first.c_str(), in->second.c_str(), bd.c_str());
++ buf[NOTIFBUF-1] = '\0';
+
+ em.store(imnotification(self, buf));
+ }
+@@ -679,8 +682,9 @@ void ljhook::messageack_cb(MessageEvent
+ for(il = friendof.begin(); il != friendof.end(); ) {
+ if(nfriendof.find(*il) == nfriendof.end()) {
+ bd = (string) "http://" + conf.getourid(proto).server + "/users/" + *il;
+- snprintf(buf, sizeof(buf), _("The user %s has removed you from his/her friend list\n\nJournal address: %s"),
++ snprintf(buf, NOTIFBUF, _("The user %s has removed you from his/her friend list\n\nJournal address: %s"),
+ il->c_str(), bd.c_str());
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(self, buf));
+ friendof.erase(il);
+ il = friendof.begin();
diff --git a/chat/centerim/patches/patch-az b/chat/centerim/patches/patch-az
new file mode 100644
index 00000000000..46dec6d156d
--- /dev/null
+++ b/chat/centerim/patches/patch-az
@@ -0,0 +1,108 @@
+$NetBSD: patch-az,v 1.1.1.1 2007/08/30 00:47:02 jnemeth Exp $
+
+Part of a fix for CVE-2007-3713.
+
+--- src/hooks/yahoohook.cc.orig 2007-07-19 02:24:38.000000000 +0200
++++ src/hooks/yahoohook.cc
+@@ -47,6 +47,8 @@
+ #define PERIOD_REFRESH 60
+ #define PERIOD_CLOSE 6
+
++#define NOTIFBUF 512
++
+ int yahoohook::yfd::connection_tags = 0;
+
+ char pager_host[255], pager_port[255], filetransfer_host[255],
+@@ -844,7 +846,7 @@ void yahoohook::got_conf_invite(int id,
+ icqconf::imaccount acc = conf.getourid(yahoo);
+ string confname = (string) "#" + room, inviter, text;
+ vector<string>::iterator ic;
+- char buf[1024];
++ char buf[NOTIFBUF];
+ int i;
+
+ imcontact cont(confname, yahoo);
+@@ -856,10 +858,11 @@ void yahoohook::got_conf_invite(int id,
+ inviter.erase(i);
+ }
+
+- sprintf(buf, _("The user %s has invited you to the %s conference, the topic there is: %s"),
++ snprintf(buf, NOTIFBUF, _("The user %s has invited you to the %s conference, the topic there is: %s"),
+ yhook.rusconv("wk", inviter).c_str(),
+ yhook.rusconv("wk", room).c_str(),
+ yhook.rusconv("wk", msg).c_str());
++ buf[NOTIFBUF-1] = '\0';
+
+ text = (string) buf + "\n\n" + _("Current conference members are: ");
+ yhook.confmembers[room].push_back(inviter);
+@@ -888,20 +891,22 @@ void yahoohook::got_conf_invite(int id,
+
+ void yahoohook::conf_userdecline(int id, char *who, char *room, char *msg) {
+ icqcontact *c = clist.get(imcontact((string) "#" + room, yahoo));
+- char buf[512];
++ char buf[NOTIFBUF];
+
+ if(c) {
+- sprintf(buf, _("The user %s has declined your invitation to join the conference"), who);
++ snprintf(buf, NOTIFBUF, _("The user %s has declined your invitation to join the conference"), who);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(c, buf));
+ }
+ }
+
+ void yahoohook::conf_userjoin(int id, char *who, char *room) {
+ icqcontact *c = clist.get(imcontact((string) "#" + room, yahoo));
+- char buf[512];
++ char buf[NOTIFBUF];
+
+ if(c) {
+- sprintf(buf, _("The user %s has joined the conference"), who);
++ snprintf(buf, NOTIFBUF, _("The user %s has joined the conference"), who);
++ buf[NOTIFBUF-1] = '\0';
+
+ if(find(yhook.confmembers[room].begin(), yhook.confmembers[room].end(), who) == yhook.confmembers[room].end())
+ yhook.confmembers[room].push_back(who);
+@@ -912,11 +917,12 @@ void yahoohook::conf_userjoin(int id, ch
+
+ void yahoohook::conf_userleave(int id, char *who, char *room) {
+ icqcontact *c = clist.get(imcontact((string) "#" + room, yahoo));
+- char buf[512];
++ char buf[NOTIFBUF];
+ vector<string>::iterator im;
+
+ if(c) {
+- sprintf(buf, _("The user %s has left the conference"), who);
++ snprintf(buf, NOTIFBUF, _("The user %s has left the conference"), who);
++ buf[NOTIFBUF-1] = '\0';
+ em.store(imnotification(c, buf));
+
+ im = find(yhook.confmembers[room].begin(), yhook.confmembers[room].end(), who);
+@@ -981,10 +987,11 @@ void yahoohook::game_notify(int id, char
+ }
+
+ void yahoohook::mail_notify(int id, char *from, char *subj, int cnt) {
+- char buf[1024];
++ char buf[NOTIFBUF];
+
+ if(from && subj) {
+- sprintf(buf, _("+ [yahoo] e-mail from %s, %s"), from, subj);
++ snprintf(buf, NOTIFBUF, _("+ [yahoo] e-mail from %s, %s"), from, subj);
++ buf[NOTIFBUF-1] = '\0';
+ face.log(buf);
+ clist.get(contactroot)->playsound(imevent::email);
+ }
+@@ -1138,11 +1145,12 @@ void yahoohook::webcam_data_request(int
+
+ int yahoohook::ylog(char *fmt, ...) {
+ if(conf.getdebug()) {
+- char buf[512];
++ char buf[NOTIFBUF];
+ va_list ap;
+
+ va_start(ap, fmt);
+- vsprintf(buf, fmt, ap);
++ vsnprintf(buf, NOTIFBUF, fmt, ap);
++ buf[NOTIFBUF-1] = '\0';
+ va_end(ap);
+
+ face.log(buf);