summaryrefslogtreecommitdiff
path: root/mail/cyrus-imapd24
diff options
context:
space:
mode:
Diffstat (limited to 'mail/cyrus-imapd24')
-rw-r--r--mail/cyrus-imapd24/DEINSTALL38
-rw-r--r--mail/cyrus-imapd24/DESCR7
-rw-r--r--mail/cyrus-imapd24/MESSAGE17
-rw-r--r--mail/cyrus-imapd24/Makefile155
-rw-r--r--mail/cyrus-imapd24/PLIST190
-rw-r--r--mail/cyrus-imapd24/distinfo23
-rw-r--r--mail/cyrus-imapd24/files/cyrus.sh80
-rw-r--r--mail/cyrus-imapd24/files/imapd.conf25
-rw-r--r--mail/cyrus-imapd24/options.mk90
-rw-r--r--mail/cyrus-imapd24/patches/patch-aa18
-rw-r--r--mail/cyrus-imapd24/patches/patch-ab20
-rw-r--r--mail/cyrus-imapd24/patches/patch-ac35
-rw-r--r--mail/cyrus-imapd24/patches/patch-ad14
-rw-r--r--mail/cyrus-imapd24/patches/patch-ae14
-rw-r--r--mail/cyrus-imapd24/patches/patch-af15
-rw-r--r--mail/cyrus-imapd24/patches/patch-ag25
-rw-r--r--mail/cyrus-imapd24/patches/patch-ah13
-rw-r--r--mail/cyrus-imapd24/patches/patch-ai13
-rw-r--r--mail/cyrus-imapd24/patches/patch-aj14
-rw-r--r--mail/cyrus-imapd24/patches/patch-ak15
-rw-r--r--mail/cyrus-imapd24/patches/patch-al15
-rw-r--r--mail/cyrus-imapd24/patches/patch-am19
-rw-r--r--mail/cyrus-imapd24/patches/patch-an22
-rw-r--r--mail/cyrus-imapd24/patches/patch-ao17
-rw-r--r--mail/cyrus-imapd24/patches/patch-ap51
-rw-r--r--mail/cyrus-imapd24/patches/patch-aq15
-rw-r--r--mail/cyrus-imapd24/patches/patch-ar15
27 files changed, 975 insertions, 0 deletions
diff --git a/mail/cyrus-imapd24/DEINSTALL b/mail/cyrus-imapd24/DEINSTALL
new file mode 100644
index 00000000000..ad2ea1606ea
--- /dev/null
+++ b/mail/cyrus-imapd24/DEINSTALL
@@ -0,0 +1,38 @@
+# $NetBSD: DEINSTALL,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+IMAPDCONF=@IMAPDCONF@
+
+case ${STAGE} in
+DEINSTALL)
+ if [ -f ${IMAPDCONF} ]; then
+ IMAPDIRS=`
+ ${AWK} '/configdirectory:/ { print $2 }; \
+ /partition-.*:/ { print $2 }; \
+ /sievedir:/ { print $2 }' \
+ ${IMAPDCONF} | ${SORT} -ur`
+ _IMAPDIRS=
+ for dir in ${IMAPDIRS}; do
+ ${RMDIR} -p ${dir} 2>/dev/null || ${TRUE}
+ if [ -d ${dir} ]; then
+ _IMAPDIRS="${_IMAPDIRS} ${dir}"
+ fi
+ done
+ if [ -n "${_IMAPDIRS}" ]; then
+ ${CAT} << EOF
+===========================================================================
+If you won't be using ${PKGNAME} any longer, you may want to remove
+the following directories:
+
+EOF
+ for dir in ${_IMAPDIRS}; do
+ if [ -d "${dir}" ]; then
+ ${ECHO} " ${dir}"
+ fi
+ done
+ ${CAT} << EOF
+===========================================================================
+EOF
+ fi
+ fi
+ ;;
+esac
diff --git a/mail/cyrus-imapd24/DESCR b/mail/cyrus-imapd24/DESCR
new file mode 100644
index 00000000000..e742d558a95
--- /dev/null
+++ b/mail/cyrus-imapd24/DESCR
@@ -0,0 +1,7 @@
+IMAP (Internet Message Access Protocol) is an Internet standards-track
+protocol for accessing messages (mail, bboards, news, etc). The Cyrus
+IMAP server differs from other IMAP server implementations in that it
+is generally intended to be run on "sealed" servers, where normal users
+are not permitted to log in. The mailbox database is stored in parts of
+the filesystem that are private to the Cyrus IMAP system. All user
+access to mail is through the IMAP, POP3, or KPOP protocols.
diff --git a/mail/cyrus-imapd24/MESSAGE b/mail/cyrus-imapd24/MESSAGE
new file mode 100644
index 00000000000..ccbca0f04a8
--- /dev/null
+++ b/mail/cyrus-imapd24/MESSAGE
@@ -0,0 +1,17 @@
+===========================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+Please refer to:
+
+ ${PREFIX}/share/doc/cyrus-imapd/install.html
+
+for more detailed instructions on setting up the environment before
+starting the Cyrus IMAP server. In particular, several services may
+need to be added to /etc/services.
+
+Anyone upgrading from an earlier version of the Cyrus IMAP server should
+read:
+
+ ${PREFIX}/share/doc/cyrus-imapd/install-upgrade.html
+
+===========================================================================
diff --git a/mail/cyrus-imapd24/Makefile b/mail/cyrus-imapd24/Makefile
new file mode 100644
index 00000000000..fe4f213158d
--- /dev/null
+++ b/mail/cyrus-imapd24/Makefile
@@ -0,0 +1,155 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+DISTNAME= cyrus-imapd-2.4.2
+CATEGORIES= mail
+MASTER_SITES= ftp://ftp.cyrusimap.org/cyrus-imapd/ \
+ ftp://ftp.cyrusimap.org/cyrus-imapd/OLD-VERSIONS/ \
+ ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
+ ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/OLD-VERSIONS/imap/ \
+ http://www.t.ring.gr.jp/archives/net/mail/cyrus-mail/ \
+ ftp://ftp.t.ring.gr.jp/pub/net/mail/cyrus-mail/
+
+MAINTAINER= obache@NetBSD.org
+HOMEPAGE= http://www.cyrusimap.org/
+COMMENT= Cyrus IMAP server
+#LICENSE= original-bsd # like license
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+USE_TOOLS+= perl makedepend
+USE_PKGLOCALEDIR= yes
+GNU_CONFIGURE= yes
+PERL5_CONFIGURE= no
+
+BUILD_DEFS+= VARBASE
+
+CHECK_PORTABILITY_SKIP= configure.lineno
+
+.include "../../mk/bsd.prefs.mk"
+
+# CYRUS_USER username of the Cyrus administrator
+# CYRUS_GROUP group of the Cyrus administrator
+#
+CYRUS_USER?= cyrus
+CYRUS_GROUP?= mail
+
+BUILD_DEFS+= CYRUS_USER CYRUS_GROUP
+FILES_SUBST+= CYRUS_USER=${CYRUS_USER}
+FILES_SUBST+= CYRUS_GROUP=${CYRUS_GROUP}
+
+CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+= --with-cyrus-user=${CYRUS_USER}
+CONFIGURE_ARGS+= --with-cyrus-group=${CYRUS_GROUP}
+CONFIGURE_ARGS+= --with-cyrus-prefix=${PREFIX}/cyrus
+CONFIGURE_ARGS+= --with-pidfile=${VARBASE}/run/cyrus-master.pid
+CONFIGURE_ARGS+= --with-openssl=${SSLBASE:Q}
+CONFIGURE_ARGS+= --with-sasl=${BUILDLINK_PREFIX.cyrus-sasl}
+CONFIGURE_ARGS+= --with-perl=${PERL5:Q}
+CONFIGURE_ARGS+= --with-libwrap=${BUILDLINK_PREFIX.tcp_wrappers}
+CONFIGURE_ENV+= ac_cv_lib_wrap_request_init=yes
+
+CONFIGURE_ARGS+= --enable-idled
+CONFIGURE_ARGS+= --enable-murder
+CONFIGURE_ARGS+= --enable-nntp
+CONFIGURE_ARGS+= --enable-replication
+
+.include "options.mk"
+
+.if exists(/usr/bin/compile_et)
+COMERRBASE?= /usr
+.endif
+.if defined(COMERRBASE)
+. if exists(${COMERRBASE}/include/krb5/com_err.h)
+CPPFLAGS+= -I${COMERRBASE}/include/krb5
+. endif
+CONFIGURE_ENV+= COMPILE_ET=${COMERRBASE}/bin/compile_et
+.else
+CONFIGURE_ARGS+= --with-com-err=yes
+.endif
+
+MAKE_ENV+= PERL=${PERL5:Q}
+
+HTMLDIR= ${PREFIX}/share/doc/cyrus-imapd
+EGDIR= ${PREFIX}/share/examples/cyrus-imapd
+CONF_FILES= ${EGDIR}/imapd.conf ${PKG_SYSCONFDIR}/imapd.conf
+CONF_FILES+= ${EGDIR}/normal.conf ${PKG_SYSCONFDIR}/cyrus.conf
+RCD_SCRIPTS= cyrus
+FILES_SUBST+= IMAPDCONF=${PKG_SYSCONFDIR}/imapd.conf
+
+PERL5_PACKLIST= \
+ auto/Cyrus/IMAP/.packlist \
+ auto/Cyrus/SIEVE/managesieve/.packlist
+
+pre-build:
+ ${RUN}${_ULIMIT_CMD} \
+ cd ${WRKSRC} && ${BUILD_MAKE_CMD} depend
+
+.include "../../lang/perl5/module.mk"
+BUILDLINK_API_DEPENDS.cyrus-sasl+= cyrus-sasl>=2.1.17
+.include "../../security/cyrus-sasl/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+
+# NetBSD's libssl is built without bn/bn_const.c (PR#37505)
+.if !empty(MACHINE_PLATFORM:MNetBSD-4.*-*)
+#. if !empty(USE_BUILTIN.openssl:M[yY][eE][sS])
+CFLAGS+= -DOPENSSL_LACK_BN_CONST
+#. endif
+.endif
+
+.include "../../security/tcp_wrappers/buildlink3.mk"
+
+# Only imap/mupdate needs to be build with pthreads support, so selectively
+# enable it via patches for just that one program.
+#
+.include "../../mk/pthread.buildlink3.mk"
+
+# Change references of some manpages from foo.8 to cyrus-foo.8 to avoid
+# manpage conflicts with other packages. Also change references to
+# "/etc/{cyrus,imapd}.conf" into "${PKG_SYSCONFDIR}/{cyrus,imapd}.conf".
+#
+post-patch:
+ cd ${WRKSRC}/man; \
+ set -- deliver 8 fetchnews 8 idled 8 imapd 8 lmtpd 8 master 8 \
+ nntpd 8 notifyd 8 pop3d 8 quota 8; \
+ while [ $$# -gt 0 ]; do \
+ man=$$1.$$2; \
+ for file in Makefile.in *.[0-9]; do \
+ sed -e "s|\(\$$(srcdir)/\)\($$man\)|\1cyrus-\2|g" \
+ -e "s|\(\\\fB\)\($$1($$2)\\\fR\)|\1cyrus-\2|g" \
+ $$file > $$file.fixed; \
+ mv -f $$file.fixed $$file; \
+ done; \
+ if [ -f $$man ]; then \
+ mv $$man cyrus-$$man; \
+ fi; \
+ shift 2; \
+ done
+ find ${WRKSRC} -type f -print | \
+ xargs -n 1 ${GREP} -l -e /etc/imapd\.conf -e /etc/cyrus\.conf | \
+ while read file; do \
+ sed -e "s|/etc/\(cyrus\.conf\)|${PKG_SYSCONFDIR}/\1|g" \
+ -e "s|/etc/\(imapd\.conf\)|${PKG_SYSCONFDIR}/\1|g" \
+ $${file} > $${file}.fixed; \
+ mv -f $${file}.fixed $${file}; \
+ done
+
+post-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/masssievec ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/migrate-metadata ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/mkimap ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/mknewsgroups ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/translatesieve ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/tools/rehash ${DESTDIR}${PREFIX}/cyrus/bin
+ ${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR}
+ ${INSTALL_DATA} ${FILESDIR}/imapd.conf ${DESTDIR}${EGDIR}
+ cd ${WRKSRC}/master/conf; for file in *.conf; do \
+ ${INSTALL_DATA} $${file} ${DESTDIR}${EGDIR}; \
+ done
+ ${INSTALL_DATA_DIR} ${DESTDIR}${HTMLDIR}
+ cd ${WRKSRC}/doc; for file in *.html cyrusv2.mc; do \
+ ${INSTALL_DATA} $${file} ${DESTDIR}${HTMLDIR}; \
+ done
+
+.include "../../devel/zlib/buildlink3.mk"
+CONFIGURE_ARGS+= --with-zlib=${BUILDLINK_PREFIX.zlib}
+.include "../../mk/bsd.pkg.mk"
diff --git a/mail/cyrus-imapd24/PLIST b/mail/cyrus-imapd24/PLIST
new file mode 100644
index 00000000000..327e4d85a82
--- /dev/null
+++ b/mail/cyrus-imapd24/PLIST
@@ -0,0 +1,190 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+bin/imtest
+bin/installsieve
+bin/lmtptest
+bin/mupdatetest
+bin/nntptest
+bin/pop3test
+bin/sieveshell
+bin/sivtest
+bin/smtptest
+bin/synctest
+cyrus/bin/arbitron
+cyrus/bin/chk_cyrus
+cyrus/bin/ctl_cyrusdb
+cyrus/bin/ctl_deliver
+cyrus/bin/ctl_mboxlist
+cyrus/bin/cvt_cyrusdb
+cyrus/bin/cyr_dbtool
+cyrus/bin/cyr_df
+cyrus/bin/cyr_expire
+cyrus/bin/cyr_sequence
+cyrus/bin/cyr_synclog
+cyrus/bin/cyr_userseen
+cyrus/bin/cyrdump
+cyrus/bin/deliver
+cyrus/bin/fetchnews
+cyrus/bin/fud
+cyrus/bin/idled
+cyrus/bin/imapd
+cyrus/bin/ipurge
+cyrus/bin/lmtpd
+cyrus/bin/lmtpproxyd
+cyrus/bin/masssievec
+cyrus/bin/master
+cyrus/bin/mbexamine
+cyrus/bin/mbpath
+cyrus/bin/migrate-metadata
+cyrus/bin/mkimap
+cyrus/bin/mknewsgroups
+cyrus/bin/mupdate
+cyrus/bin/nntpd
+cyrus/bin/notifyd
+cyrus/bin/pop3d
+cyrus/bin/pop3proxyd
+cyrus/bin/proxyd
+${PLIST.ldap}cyrus/bin/ptdump
+${PLIST.ldap}cyrus/bin/ptexpire
+${PLIST.ldap}cyrus/bin/ptloader
+cyrus/bin/quota
+cyrus/bin/reconstruct
+cyrus/bin/rehash
+cyrus/bin/sievec
+cyrus/bin/sieved
+cyrus/bin/smmapd
+cyrus/bin/squatter
+cyrus/bin/sync_client
+cyrus/bin/sync_reset
+cyrus/bin/sync_server
+cyrus/bin/timsieved
+cyrus/bin/tls_prune
+cyrus/bin/translatesieve
+cyrus/bin/unexpunge
+include/cyrus/acl.h
+include/cyrus/assert.h
+include/cyrus/auth.h
+include/cyrus/bsearch.h
+include/cyrus/byteorder64.h
+include/cyrus/charset.h
+include/cyrus/crc32.h
+include/cyrus/cyrusdb.h
+include/cyrus/glob.h
+include/cyrus/gmtoff.h
+include/cyrus/hash.h
+include/cyrus/hmac-md5.h
+include/cyrus/imapopts.h
+include/cyrus/imapurl.h
+include/cyrus/imclient.h
+include/cyrus/imparse.h
+include/cyrus/iptostring.h
+include/cyrus/libconfig.h
+include/cyrus/libcyr_cfg.h
+include/cyrus/lock.h
+include/cyrus/lsort.h
+include/cyrus/map.h
+include/cyrus/md5.h
+include/cyrus/mkgmtime.h
+include/cyrus/mpool.h
+include/cyrus/nonblock.h
+include/cyrus/parseaddr.h
+include/cyrus/prot.h
+include/cyrus/retry.h
+include/cyrus/rfc822date.h
+include/cyrus/signals.h
+include/cyrus/strhash.h
+include/cyrus/stristr.h
+include/cyrus/sysexits.h
+include/cyrus/util.h
+include/cyrus/xmalloc.h
+include/cyrus/xstrlcat.h
+include/cyrus/xstrlcpy.h
+lib/libcyrus.a
+lib/libcyrus_min.a
+man/man1/imtest.1
+man/man1/installsieve.1
+man/man1/lmtptest.1
+man/man1/mupdatetest.1
+man/man1/nntptest.1
+man/man1/pop3test.1
+man/man1/sieveshell.1
+man/man1/sivtest.1
+man/man1/smtptest.1
+man/man3/imclient.3
+man/man5/cyrus.conf.5
+man/man5/imapd.conf.5
+man/man5/krb.equiv.5
+man/man8/arbitron.8
+man/man8/chk_cyrus.8
+man/man8/ctl_cyrusdb.8
+man/man8/ctl_deliver.8
+man/man8/ctl_mboxlist.8
+man/man8/cvt_cyrusdb.8
+man/man8/cyr_dbtool.8
+man/man8/cyr_df.8
+man/man8/cyr_expire.8
+man/man8/cyr_synclog.8
+man/man8/cyrus-deliver.8
+man/man8/cyrus-fetchnews.8
+man/man8/cyrus-idled.8
+man/man8/cyrus-imapd.8
+man/man8/cyrus-lmtpd.8
+man/man8/cyrus-master.8
+man/man8/cyrus-nntpd.8
+man/man8/cyrus-notifyd.8
+man/man8/cyrus-pop3d.8
+man/man8/cyrus-quota.8
+man/man8/fud.8
+man/man8/ipurge.8
+man/man8/mbexamine.8
+man/man8/mbpath.8
+man/man8/reconstruct.8
+man/man8/rmnews.8
+man/man8/smmapd.8
+man/man8/squatter.8
+man/man8/sync_client.8
+man/man8/sync_reset.8
+man/man8/sync_server.8
+man/man8/syncnews.8
+man/man8/timsieved.8
+man/man8/tls_prune.8
+man/man8/unexpunge.8
+share/doc/cyrus-imapd/altnamespace.html
+share/doc/cyrus-imapd/anoncvs.html
+share/doc/cyrus-imapd/bugs.html
+share/doc/cyrus-imapd/changes.html
+share/doc/cyrus-imapd/cyrusv2.mc
+share/doc/cyrus-imapd/faq.html
+share/doc/cyrus-imapd/feedback.html
+share/doc/cyrus-imapd/index.html
+share/doc/cyrus-imapd/install-admin-mb.html
+share/doc/cyrus-imapd/install-auth.html
+share/doc/cyrus-imapd/install-compile.html
+share/doc/cyrus-imapd/install-configure.html
+share/doc/cyrus-imapd/install-murder.html
+share/doc/cyrus-imapd/install-netnews.html
+share/doc/cyrus-imapd/install-perf.html
+share/doc/cyrus-imapd/install-prereq.html
+share/doc/cyrus-imapd/install-replication.html
+share/doc/cyrus-imapd/install-sieve.html
+share/doc/cyrus-imapd/install-snmpmon.html
+share/doc/cyrus-imapd/install-testing.html
+share/doc/cyrus-imapd/install-upgrade.html
+share/doc/cyrus-imapd/install-virtdomains.html
+share/doc/cyrus-imapd/install.html
+share/doc/cyrus-imapd/mailing-list.html
+share/doc/cyrus-imapd/man.html
+share/doc/cyrus-imapd/notes.html
+share/doc/cyrus-imapd/os.html
+share/doc/cyrus-imapd/overview.html
+share/doc/cyrus-imapd/questions.html
+share/doc/cyrus-imapd/readme.html
+share/doc/cyrus-imapd/sieve-protocol.html
+share/doc/cyrus-imapd/sieve.html
+share/doc/cyrus-imapd/specs.html
+share/examples/cyrus-imapd/cmu-backend.conf
+share/examples/cyrus-imapd/cmu-frontend.conf
+share/examples/cyrus-imapd/imapd.conf
+share/examples/cyrus-imapd/normal.conf
+share/examples/cyrus-imapd/prefork.conf
+share/examples/cyrus-imapd/small.conf
+share/examples/rc.d/cyrus
diff --git a/mail/cyrus-imapd24/distinfo b/mail/cyrus-imapd24/distinfo
new file mode 100644
index 00000000000..44bf2a554aa
--- /dev/null
+++ b/mail/cyrus-imapd24/distinfo
@@ -0,0 +1,23 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+SHA1 (cyrus-imapd-2.4.2.tar.gz) = 8281785b2ba00dbe440e9d3ed3a104d13a0635b0
+RMD160 (cyrus-imapd-2.4.2.tar.gz) = 0988df34fe2080fcc4215737074d5a2012b63a42
+Size (cyrus-imapd-2.4.2.tar.gz) = 2360589 bytes
+SHA1 (patch-aa) = a4f15e5f07327037219f7ef2169edb9d795ff167
+SHA1 (patch-ab) = bab504f2cf2cf9b9901e253bf6cf6d6d0954371a
+SHA1 (patch-ac) = d6b2e8c00a3605773bf7718d29ccfb0b82f59323
+SHA1 (patch-ad) = 9c97c99996271c5a123d58e94eb7b16bc9086ebb
+SHA1 (patch-ae) = 9bee786ad3f0237ee15302c2954e3e90b6fe69fb
+SHA1 (patch-af) = 51ffc6cc37822ea4828eb987039593900f2f1ef0
+SHA1 (patch-ag) = 533f146e9ee276af7b8ab716da2f3d4af5f60639
+SHA1 (patch-ah) = 4bc62dfdeafdca83ddac02aff0ffd05db28fe0b9
+SHA1 (patch-ai) = 9167678988f411479d187b232eb10ad8622b4151
+SHA1 (patch-aj) = 14f293489a816d2282f0d1a7b289d5a775c74c24
+SHA1 (patch-ak) = 2e8a105b30d2c0c38f523020bf79d7e26cfa235b
+SHA1 (patch-al) = 0eaef55760e9a071802bba157a00bdacc84c1932
+SHA1 (patch-am) = e100e13d5137116f5bd7674e954031b2615e5ab1
+SHA1 (patch-an) = 31d008c732f71e0b6960f8e4206ce466a689c558
+SHA1 (patch-ao) = c01c9d32b4d73cbc32d2ad8bfca8b8b021ca2474
+SHA1 (patch-ap) = c736e36f2bbe9e2026044a3ab0d13bec57d951a6
+SHA1 (patch-aq) = 8afd83691256cfb32b8ae0370185635bcff90283
+SHA1 (patch-ar) = 4ac95c029794afba0f4d398643f354b71efd9ac3
diff --git a/mail/cyrus-imapd24/files/cyrus.sh b/mail/cyrus-imapd24/files/cyrus.sh
new file mode 100644
index 00000000000..caeedd5b6c1
--- /dev/null
+++ b/mail/cyrus-imapd24/files/cyrus.sh
@@ -0,0 +1,80 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: cyrus.sh,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+#
+# PROVIDE: cyrus
+# REQUIRE: DAEMON
+# BEFORE: mail
+# KEYWORD: shutdown
+#
+# To start cyrus-imapd at startup, copy this script to /etc/rc.d and set
+# cyrus=YES in /etc/rc.conf.
+
+if [ -f /etc/rc.subr ]; then
+ . /etc/rc.subr
+fi
+
+rcd_dir=`@DIRNAME@ $0`
+
+name="cyrus"
+rcvar=$name
+command="@PREFIX@/cyrus/bin/master"
+command_args="-d"
+pidfile="@VARBASE@/run/cyrus-master.pid"
+sig_stop=QUIT
+required_files="@PKG_SYSCONFDIR@/cyrus.conf @IMAPDCONF@"
+extra_commands="mkimap reload"
+
+mkimap_cmd="cyrus_mkimap"
+start_precmd="cyrus_prestart"
+
+cyrus_prestart()
+{
+ # Check to see if "configdirectory" is present before we start
+ # the Cyrus IMAP server. Otherwise, we run mkimap to generate
+ # the necessary directories.
+ #
+ if [ -f @IMAPDCONF@ ]; then
+ configdir=` \
+ @AWK@ '/^configdirectory:/ { print $2; exit };' \
+ @IMAPDCONF@ \
+ `
+ if [ -z "$configdir" ]; then
+ @ECHO@ "@IMAPDCONF@ missing 'configdirectory' setting"
+ exit 1
+ fi
+ if [ ! -d "$configdir" ]; then
+ $rcd_dir/cyrus mkimap
+ fi
+ fi
+}
+
+cyrus_mkimap()
+{
+ # Generate the prerequisite directory structure for Cyrus IMAP.
+ if [ -f @IMAPDCONF@ ]; then
+ @AWK@ '/^configdirectory:/ { print $2 }; \
+ /^partition-.*:/ { print $2 }; \
+ /^sievedir:/ { print $2 }' \
+ @IMAPDCONF@ | \
+ while read dir; do
+ if [ ! -d "$dir" ]; then
+ @MKDIR@ "$dir"
+ @CHMOD@ 750 "$dir"
+ @CHOWN@ @CYRUS_USER@ "$dir"
+ @CHGRP@ @CYRUS_GROUP@ "$dir"
+ fi
+ done
+ @SU@ -m @CYRUS_USER@ -c "@PREFIX@/cyrus/bin/mkimap"
+ fi
+}
+
+if [ -f /etc/rc.subr -a -f /etc/rc.conf \
+ -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ @ECHO@ -n " ${name}"
+ eval ${start_precmd}
+ ${command} ${cyrus_flags} ${command_args}
+fi
diff --git a/mail/cyrus-imapd24/files/imapd.conf b/mail/cyrus-imapd24/files/imapd.conf
new file mode 100644
index 00000000000..b42e26267f5
--- /dev/null
+++ b/mail/cyrus-imapd24/files/imapd.conf
@@ -0,0 +1,25 @@
+# $NetBSD: imapd.conf,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+#
+# Cyrus IMAP server configuration file. Refer to imapd.conf(5) for
+# more options.
+
+configdirectory: /var/imap
+partition-default: /var/spool/imap
+sieveusehomedir: false
+sievedir: /var/sieve
+hashimapspool: false
+
+admins: cyrus
+
+# If use the saslauthd daemon to verify plaintext passwords, please ensure that
+# the saslauthd daemon is running before trying to authenticate.
+#
+#sasl_pwcheck_method: saslauthd
+sasl_pwcheck_method: auxprop
+
+# The server certificate and key files must be specified for the
+# server to repond to IMAPS or POP3S requests. See imapd.conf(5) for
+# a complete listing of tls_* options.
+#
+#tls_cert_file: /var/imap/server.pem
+#tls_key_file: /var/imap/server.pem
diff --git a/mail/cyrus-imapd24/options.mk b/mail/cyrus-imapd24/options.mk
new file mode 100644
index 00000000000..36fc7ed579f
--- /dev/null
+++ b/mail/cyrus-imapd24/options.mk
@@ -0,0 +1,90 @@
+# $NetBSD: options.mk,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+#
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.cyrus-imapd
+PKG_SUPPORTED_OPTIONS= gssapi kerberos kerberos4 ldap snmp
+PKG_SUPPORTED_OPTIONS+= bdb mysql pgsql sqlite
+PKG_SUGGESTED_OPTIONS= bdb
+
+.include "../../mk/bsd.options.mk"
+
+PLIST_VARS+= ldap
+
+.if !empty(PKG_OPTIONS:Mkerberos)
+. if empty(PKG_OPTIONS:Mgssapi)
+PKG_OPTIONS+= gssapi
+. endif
+.endif
+
+.if !empty(PKG_OPTIONS:Mkerberos4)
+. if exists(/usr/include/kerberosIV/krb.h)
+PKG_USE_KERBEROS= yes
+CONFIGURE_ARGS+= --with-krb=/usr
+. endif
+.elif !empty(PKG_OPTIONS:Mgssapi)
+. include "../../mk/krb5.buildlink3.mk"
+CONFIGURE_ARGS+= --enable-gssapi=${KRB5BASE}
+CONFIGURE_ARGS+= --with-gss_impl=${GSSIMPL.${KRB5_TYPE}}
+CONFIGURE_ARGS+= --enable-krb5afspts
+GSSIMPL.heimdal= heimdal
+GSSIMPL.mit-krb5= mit
+CONFIGURE_ENV+= COMPILE_ET=${KRB5BASE}/bin/compile_et
+COMERRBASE= ${KRB5BASE}
+.else
+CONFIGURE_ARGS+= --without-krb
+CONFIGURE_ARGS+= --disable-gssapi
+.endif
+
+.if !empty(PKG_OPTIONS:Mldap)
+. include "../../databases/openldap-client/buildlink3.mk"
+CONFIGURE_ARGS+= --with-ldap=${BUILDLINK_PREFIX.openldap-client}
+PLIST.ldap= yes
+.else
+CONFIGURE_ARGS+= --without-ldap
+.endif
+
+.if !empty(PKG_OPTIONS:Msnmp)
+. include "../../net/net-snmp/buildlink3.mk"
+CONFIGURE_ARGS+= --with-snmp=${BUILDLINK_PREFIX.net-snmp}
+USE_TOOLS+= perl:run
+.else
+CONFIGURE_ARGS+= --without-snmp
+.endif
+
+.if !empty(PKG_OPTIONS:Mzephyr)
+. include "../../chat/zephyr/buildlink3.mk"
+CONFIGURE_ARGS+= --with-zephyr=${BUILDLINK_PREFIX.zephyr}
+.else
+CONFIGURE_ARGS+= --without-zephyr
+.endif
+
+.if !empty(PKG_OPTIONS:Mbdb)
+BDB_ACCEPTED= db3 db4 db5
+. include "../../mk/bdb.buildlink3.mk"
+CONFIGURE_ARGS+= --with-bdb=${BDB_TYPE}
+CONFIGURE_ARGS+= --with-bdb-incdir=${BDBBASE}/include/${BDB_TYPE}
+CONFIGURE_ARGS+= --with-bdb-libdir=${BDBBASE}/lib
+.else
+CONFIGURE_ARGS+= --without-bdb
+.endif
+
+.if !empty(PKG_OPTIONS:Mmysql)
+. include "../../mk/mysql.buildlink3.mk"
+CONFIGURE_ARGS+= --with-mysql=${BUILDLINK_PREFIX.mysql-client}
+.else
+CONFIGURE_ARGS+= --without-mysql
+.endif
+
+.if !empty(PKG_OPTIONS:Mpgsql)
+. include "../../mk/pgsql.buildlink3.mk"
+CONFIGURE_ARGS+= --with-pgsql=${PGSQL_PREFIX}
+.else
+CONFIGURE_ARGS+= --without-pgsql
+.endif
+
+.if !empty(PKG_OPTIONS:Msqlite)
+. include "../../databases/sqlite3/buildlink3.mk"
+CONFIGURE_ARGS+= --with-sqlite=${BUILDLINK_PREFIX.sqlite3}
+.else
+CONFIGURE_ARGS+= --without-sqlite
+.endif
diff --git a/mail/cyrus-imapd24/patches/patch-aa b/mail/cyrus-imapd24/patches/patch-aa
new file mode 100644
index 00000000000..d6f529132d6
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-aa
@@ -0,0 +1,18 @@
+$NetBSD: patch-aa,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- configure.in.orig 2010-10-19 03:08:28.000000000 +0000
++++ configure.in
+@@ -391,11 +391,11 @@ if test "$sievedir" != "no"; then
+ AC_CHECK_LIB(fl,main)
+
+ AC_CHECK_HEADERS(pcreposix.h rxposix.h)
+- if test "$ac_cv_header_pcreposix_h" == "yes"; then
++ if test "$ac_cv_header_pcreposix_h" = "yes"; then
+ LIBS="$LIBS -lpcre -lpcreposix";
+ AC_DEFINE(ENABLE_REGEX, [], [Do we have a regex library?])
+ else
+- if test "$ac_cv_header_rxposix_h" == "yes"; then
++ if test "$ac_cv_header_rxposix_h" = "yes"; then
+ LIBS="$LIBS -lrx"
+ AC_DEFINE(ENABLE_REGEX, [],
+ [Do we have a regex library?])
diff --git a/mail/cyrus-imapd24/patches/patch-ab b/mail/cyrus-imapd24/patches/patch-ab
new file mode 100644
index 00000000000..8a592f11387
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ab
@@ -0,0 +1,20 @@
+$NetBSD: patch-ab,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- configure.orig 2010-10-19 09:58:48.000000000 +0000
++++ configure
+@@ -7145,13 +7145,13 @@ fi
+
+ done
+
+- if test "$ac_cv_header_pcreposix_h" == "yes"; then
++ if test "$ac_cv_header_pcreposix_h" = "yes"; then
+ LIBS="$LIBS -lpcre -lpcreposix";
+
+ $as_echo "#define ENABLE_REGEX /**/" >>confdefs.h
+
+ else
+- if test "$ac_cv_header_rxposix_h" == "yes"; then
++ if test "$ac_cv_header_rxposix_h" = "yes"; then
+ LIBS="$LIBS -lrx"
+
+ $as_echo "#define ENABLE_REGEX /**/" >>confdefs.h
diff --git a/mail/cyrus-imapd24/patches/patch-ac b/mail/cyrus-imapd24/patches/patch-ac
new file mode 100644
index 00000000000..d6c816767b9
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ac
@@ -0,0 +1,35 @@
+$NetBSD: patch-ac,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/Makefile.in.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/Makefile.in
+@@ -179,6 +179,9 @@ mupdate_err.c: mupdate_err.et
+
+ mupdate_err.h: mupdate_err.c
+
++mutex_pthread.o: mutex_pthread.c
++ $(CC) -c $(CPPFLAGS) $(DEFS) $(CFLAGS) $(PTHREAD_CFLAGS) $<
++
+ ### Services
+ idled: idled.o mutex_fake.o libimap.a $(DEPLIBS)
+ $(CC) $(LDFLAGS) -o idled \
+@@ -213,16 +216,16 @@ imapd.quant: $(IMAPDOBJS) mutex_fake.o l
+
+ mupdate: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o tls.o \
+ libimap.a $(DEPLIBS)
+- $(CC) $(LDFLAGS) -o mupdate \
++ $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -o mupdate \
+ $(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
+ mutex_pthread.o tls.o libimap.a \
+- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
++ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
+
+ mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
+ libimap.a $(DEPLIBS)
+- $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \
++ $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -o mupdate.pure \
+ $(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
+- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
++ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
+
+ pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \
+ $(DEPLIBS) $(SERVICE)
diff --git a/mail/cyrus-imapd24/patches/patch-ad b/mail/cyrus-imapd24/patches/patch-ad
new file mode 100644
index 00000000000..1c46325bdec
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ad
@@ -0,0 +1,14 @@
+$NetBSD: patch-ad,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/cvt_cyrusdb.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/cvt_cyrusdb.c
+@@ -59,7 +59,9 @@
+ #include <syslog.h>
+
+ #include <sys/ipc.h>
++#if !defined(__APPLE__)
+ #include <sys/msg.h>
++#endif
+
+ #include "acl.h"
+ #include "assert.h"
diff --git a/mail/cyrus-imapd24/patches/patch-ae b/mail/cyrus-imapd24/patches/patch-ae
new file mode 100644
index 00000000000..02e8c1aa999
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ae
@@ -0,0 +1,14 @@
+$NetBSD: patch-ae,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/mboxlist.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/mboxlist.c
+@@ -59,7 +59,9 @@
+ #include <syslog.h>
+
+ #include <sys/ipc.h>
++#if !defined(__APPLE__)
+ #include <sys/msg.h>
++#endif
+
+ #include "acl.h"
+ #include "annotate.h"
diff --git a/mail/cyrus-imapd24/patches/patch-af b/mail/cyrus-imapd24/patches/patch-af
new file mode 100644
index 00000000000..9f655ed67b2
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-af
@@ -0,0 +1,15 @@
+$NetBSD: patch-af,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/message.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/message.c
+@@ -76,6 +76,10 @@
+ #include "global.h"
+ #include "retry.h"
+
++#ifdef __APPLE__
++struct et_list *_et_list = NULL;
++#endif
++
+ /* Message being parsed */
+ struct msg {
+ const char *base;
diff --git a/mail/cyrus-imapd24/patches/patch-ag b/mail/cyrus-imapd24/patches/patch-ag
new file mode 100644
index 00000000000..c527504b55c
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ag
@@ -0,0 +1,25 @@
+$NetBSD: patch-ag,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imtest/imtest.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imtest/imtest.c
+@@ -49,7 +49,9 @@
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/ipc.h>
++#if !defined(__APPLE__)
+ #include <sys/msg.h>
++#endif
+ #include <sys/stat.h>
+ #include <fcntl.h>
+
+@@ -74,6 +76,10 @@
+ #include <netinet/in.h>
+ #include <netdb.h>
+
++#ifdef HAVE_SYS_PARAM_H
++#include <sys/param.h>
++#endif
++
+ #include <sasl/sasl.h>
+ #include <sasl/saslutil.h>
+
diff --git a/mail/cyrus-imapd24/patches/patch-ah b/mail/cyrus-imapd24/patches/patch-ah
new file mode 100644
index 00000000000..b9c79ca6f58
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ah
@@ -0,0 +1,13 @@
+$NetBSD: patch-ah,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- perl/Makefile.in.orig 2010-10-19 03:08:28.000000000 +0000
++++ perl/Makefile.in
+@@ -86,7 +86,7 @@ all::
+ BDB_LIB="$(BDB_LIB)" BDB_INC="$(BDB_INC)" \
+ OPENSSL_LIB="$(OPENSSL_LIB)" OPENSSL_INC="$(OPENSSL_INC)" \
+ SASL_LIB="$(SASL_LIB)" SASL_INC="$(SASL_INC)" CC="$(CC)" \
+- $(PERL) Makefile.PL PREFIX=$(prefix); \
++ $(PERL) Makefile.PL INSTALLDIRS=vendor PREFIX=$(prefix); \
+ fi; \
+ $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) all) || exit 1; \
+ done
diff --git a/mail/cyrus-imapd24/patches/patch-ai b/mail/cyrus-imapd24/patches/patch-ai
new file mode 100644
index 00000000000..c6b717bfedf
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ai
@@ -0,0 +1,13 @@
+$NetBSD: patch-ai,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- perl/sieve/Makefile.in.orig 2010-10-19 03:08:28.000000000 +0000
++++ perl/sieve/Makefile.in
+@@ -86,7 +86,7 @@ all::
+ BDB_LIB="$(BDB_LIB)" BDB_INC="$(BDB_INC)" \
+ OPENSSL_LIB="$(OPENSSL_LIB)" OPENSSL_INC="$(OPENSSL_INC)" \
+ SASL_LIB="$(SASL_LIB)" SASL_INC="$(SASL_INC)" CC="$(CC)" \
+- $(PERL) Makefile.PL PREFIX=$(prefix); \
++ $(PERL) Makefile.PL INSTALLDIRS=vendor PREFIX=$(prefix); \
+ fi; \
+ $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) all) || exit 1; \
+ done
diff --git a/mail/cyrus-imapd24/patches/patch-aj b/mail/cyrus-imapd24/patches/patch-aj
new file mode 100644
index 00000000000..321acb39dc4
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-aj
@@ -0,0 +1,14 @@
+$NetBSD: patch-aj,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- perl/sieve/lib/request.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ perl/sieve/lib/request.c
+@@ -52,7 +52,9 @@
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <sys/ipc.h>
++#if !defined(__APPLE__)
+ #include <sys/msg.h>
++#endif
+
+ #include <stdlib.h>
+ #include <stdio.h>
diff --git a/mail/cyrus-imapd24/patches/patch-ak b/mail/cyrus-imapd24/patches/patch-ak
new file mode 100644
index 00000000000..06a3a75d14d
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ak
@@ -0,0 +1,15 @@
+$NetBSD: patch-ak,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- sieve/sievec.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ sieve/sievec.c
+@@ -63,6 +63,10 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+
++#ifdef __APPLE__
++struct et_list *_et_list = NULL;
++#endif
++
+ /* config.c stuff */
+ const int config_need_data = 0;
+
diff --git a/mail/cyrus-imapd24/patches/patch-al b/mail/cyrus-imapd24/patches/patch-al
new file mode 100644
index 00000000000..4144574e4b4
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-al
@@ -0,0 +1,15 @@
+$NetBSD: patch-al,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- sieve/sieved.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ sieve/sieved.c
+@@ -63,6 +63,10 @@
+
+ #include "map.h"
+
++#ifdef __APPLE__
++struct et_list *_et_list = NULL;
++#endif
++
+ /* config.c stuff */
+ const int config_need_data = 0;
+
diff --git a/mail/cyrus-imapd24/patches/patch-am b/mail/cyrus-imapd24/patches/patch-am
new file mode 100644
index 00000000000..d7500fdf2c4
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-am
@@ -0,0 +1,19 @@
+$NetBSD: patch-am,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- tools/config2header.orig 2010-10-19 03:08:28.000000000 +0000
++++ tools/config2header
+@@ -79,6 +79,14 @@ while ($#ARGV >= 0) {
+
+ my $use_gcc_extension = ($CC and $CC eq 'gcc');
+
++#
++# Skip any CC options such as -pipe
++# The last two parameters are the .c and .h files
++#
++while ($#ARGV > 1) {
++ shift @ARGV;
++}
++
+ die "wrong number of arguments" if ($#ARGV != 1);
+ my ($cfile, $hfile) = @ARGV;
+
diff --git a/mail/cyrus-imapd24/patches/patch-an b/mail/cyrus-imapd24/patches/patch-an
new file mode 100644
index 00000000000..9013b4eb056
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-an
@@ -0,0 +1,22 @@
+$NetBSD: patch-an,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/tls.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/tls.c
+@@ -223,7 +223,7 @@ static RSA *tmp_rsa_cb(SSL * s __attribu
+ return (rsa_tmp);
+ }
+
+-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
++#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) && !defined(OPENSSL_LACK_BN_CONST)
+ /* Logic copied from OpenSSL apps/s_server.c: give the TLS context
+ * DH params to work with DHE-* cipher suites. Hardcoded fallback
+ * in case no DH params in tls_key_file or tls_cert_file.
+@@ -734,7 +734,7 @@ int tls_init_serverengine(const char
+ }
+ SSL_CTX_set_tmp_rsa_callback(s_ctx, tmp_rsa_cb);
+
+-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
++#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) && !defined(OPENSSL_LACK_BN_CONST)
+ /* Load DH params for DHE-* key exchanges */
+ SSL_CTX_set_tmp_dh(s_ctx, load_dh_param(s_key_file, s_cert_file));
+ /* FIXME: Load ECDH params for ECDHE suites when 0.9.9 is released */
diff --git a/mail/cyrus-imapd24/patches/patch-ao b/mail/cyrus-imapd24/patches/patch-ao
new file mode 100644
index 00000000000..13845710810
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ao
@@ -0,0 +1,17 @@
+$NetBSD: patch-ao,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/imap_err.et.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/imap_err.et
+@@ -201,10 +201,10 @@ ec IMAP_NO_MSGGONE,
+ "Message %d no longer exists"
+
+ ec IMAP_NO_CHECKSEEN,
+- "Unable to checkpoint \\Seen state"
++ "Unable to checkpoint \\\\Seen state"
+
+ ec IMAP_NO_CHECKPRESERVE,
+- "Unable to preserve \\Seen state"
++ "Unable to preserve \\\\Seen state"
+
+ ec IMAP_NO_NOSUCHMSG,
+ "No matching messages"
diff --git a/mail/cyrus-imapd24/patches/patch-ap b/mail/cyrus-imapd24/patches/patch-ap
new file mode 100644
index 00000000000..b157e682681
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ap
@@ -0,0 +1,51 @@
+$NetBSD: patch-ap,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+Fix building with db5.
+
+--- lib/cyrusdb_berkeley.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ lib/cyrusdb_berkeley.c
+@@ -108,7 +108,7 @@ static void db_panic(DB_ENV *dbenv __att
+ exit(EC_TEMPFAIL);
+ }
+
+-#if (DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3))
+ static void db_err(const DB_ENV *dbenv __attribute__((unused)),
+ const char *db_prfx, const char *buffer)
+ #else
+@@ -163,7 +163,7 @@ static int init(const char *dbdir, int m
+ #endif
+ }
+
+-#if (DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3)
++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 3))
+ dbenv->set_msgcall(dbenv, db_msg);
+ #endif
+ dbenv->set_errcall(dbenv, db_err);
+@@ -281,7 +281,7 @@ static int mysync(void)
+
+ assert(dbinit);
+
+-#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
++#if !((DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)))
+ do {
+ #endif
+ #if (DB_VERSION_MAJOR > 3) || ((DB_VERSION_MAJOR == 3) && (DB_VERSION_MINOR > 0))
+@@ -289,7 +289,7 @@ static int mysync(void)
+ #else
+ r = txn_checkpoint(dbenv, 0, 0);
+ #endif
+-#if !(DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
++#if !((DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1))
+ } while (r == DB_INCOMPLETE); /* Never returned by BDB 4.1 */
+ #endif
+ if (r) {
+@@ -412,7 +412,7 @@ static int myopen(const char *fname, DBT
+ /* xxx set comparator! */
+ if (flags & CYRUSDB_MBOXSORT) db->set_bt_compare(db, mbox_compar);
+
+-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
++#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
+ r = (db->open)(db, NULL, fname, NULL, type, dbflags | DB_AUTO_COMMIT, 0664);
+ #else
+ r = (db->open)(db, fname, NULL, type, dbflags, 0664);
diff --git a/mail/cyrus-imapd24/patches/patch-aq b/mail/cyrus-imapd24/patches/patch-aq
new file mode 100644
index 00000000000..e0b0156723f
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-aq
@@ -0,0 +1,15 @@
+$NetBSD: patch-aq,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- imap/sync_client.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ imap/sync_client.c
+@@ -92,6 +92,10 @@
+ #include "signals.h"
+ #include "cyrusdb.h"
+
++#ifndef SOL_TCP
++#define SOL_TCP IPPROTO_TCP
++#endif
++
+ /* signal to config.c */
+ const int config_need_data = 0; /* YYY */
+
diff --git a/mail/cyrus-imapd24/patches/patch-ar b/mail/cyrus-imapd24/patches/patch-ar
new file mode 100644
index 00000000000..08d346dc56b
--- /dev/null
+++ b/mail/cyrus-imapd24/patches/patch-ar
@@ -0,0 +1,15 @@
+$NetBSD: patch-ar,v 1.1.1.1 2010/10/30 12:12:35 obache Exp $
+
+--- master/service.c.orig 2010-10-19 03:08:28.000000000 +0000
++++ master/service.c
+@@ -76,6 +76,10 @@
+ #include "xstrlcat.h"
+ #include "signals.h"
+
++#ifndef SOL_TCP
++#define SOL_TCP IPPROTO_TCP
++#endif
++
+ extern int optind, opterr;
+ extern char *optarg;
+