From 36d24a2dc5174cdd5e76d20d5ef64d66603cc165 Mon Sep 17 00:00:00 2001 From: Tobias Scherbaum Date: Wed, 4 Jun 2008 18:57:49 +0000 Subject: moved to gentoo-x86 svn path=/; revision=41 --- net-mail/cyrus-imapd/Manifest | 27 -- net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild | 259 --------------- net-mail/cyrus-imapd/cyrus-imapd-2.3.12_p2.ebuild | 262 --------------- net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild | 256 --------------- .../files/cyrus-imapd-2.2-libwrap.patch | 11 - .../cyrus-imapd-2.3.11-drac_with_autocreate.patch | 46 --- .../cyrus-imapd-2.3.8-drac_with_autocreate.patch | 46 --- .../cyrus-imapd/files/cyrus-imapd-parallel.patch | 11 - net-mail/cyrus-imapd/files/cyrus-imapd-strip.patch | 11 - net-mail/cyrus-imapd/files/cyrus.conf | 43 --- net-mail/cyrus-imapd/files/cyrus.confd | 6 - net-mail/cyrus-imapd/files/cyrus.pam-include | 6 - net-mail/cyrus-imapd/files/cyrus.rc6 | 23 -- net-mail/cyrus-imapd/files/imap.pam | 6 - net-mail/cyrus-imapd/files/imapd.conf | 52 --- .../files/kolab/2.3.12_p2/annotations2.patch | 356 --------------------- .../files/kolab/2.3.12_p2/cyradm_annotations.patch | 83 ----- .../files/kolab/2.3.12_p2/folder-names.patch | 20 -- .../cyrus-imapd/files/kolab/2.3.12_p2/groups.patch | 220 ------------- .../files/kolab/2.3.12_p2/logging.patch | 58 ---- .../2.3.12_p2/timsieved_starttls-sendcaps.patch | 19 -- .../cyrus-imapd/files/kolab/2.3.12_p2/uid.patch | 115 ------- net-mail/cyrus-imapd/metadata.xml | 8 - 23 files changed, 1944 deletions(-) delete mode 100644 net-mail/cyrus-imapd/Manifest delete mode 100644 net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild delete mode 100644 net-mail/cyrus-imapd/cyrus-imapd-2.3.12_p2.ebuild delete mode 100644 net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild delete mode 100644 net-mail/cyrus-imapd/files/cyrus-imapd-2.2-libwrap.patch delete mode 100644 net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch delete mode 100644 net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-drac_with_autocreate.patch delete mode 100644 net-mail/cyrus-imapd/files/cyrus-imapd-parallel.patch delete mode 100644 net-mail/cyrus-imapd/files/cyrus-imapd-strip.patch delete mode 100644 net-mail/cyrus-imapd/files/cyrus.conf delete mode 100644 net-mail/cyrus-imapd/files/cyrus.confd delete mode 100644 net-mail/cyrus-imapd/files/cyrus.pam-include delete mode 100644 net-mail/cyrus-imapd/files/cyrus.rc6 delete mode 100644 net-mail/cyrus-imapd/files/imap.pam delete mode 100644 net-mail/cyrus-imapd/files/imapd.conf delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/annotations2.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/cyradm_annotations.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/folder-names.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/groups.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/logging.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/timsieved_starttls-sendcaps.patch delete mode 100644 net-mail/cyrus-imapd/files/kolab/2.3.12_p2/uid.patch delete mode 100644 net-mail/cyrus-imapd/metadata.xml diff --git a/net-mail/cyrus-imapd/Manifest b/net-mail/cyrus-imapd/Manifest deleted file mode 100644 index 5002ea3..0000000 --- a/net-mail/cyrus-imapd/Manifest +++ /dev/null @@ -1,27 +0,0 @@ -AUX cyrus-imapd-2.2-libwrap.patch 390 RMD160 4ed2b14f549ccfab487cff66e5f2cb8ebdd39427 SHA1 0075421585a73f2673e3daff9a4c140d9cc5046e SHA256 2bddad2045130090ea23f5ad65d797cfa1f6083446bd00411cb1540cb56d4e0e -AUX cyrus-imapd-2.3.11-drac_with_autocreate.patch 2334 RMD160 53bb3d38e121ac22e4149de52151f3c3945f4934 SHA1 7571d40975aa61f9ac04e30bc371ab4733b3acdb SHA256 bfe1cabf1131b3ae3e67d5847d965cc4dfe2ac001064cc56176d3d2553651f3f -AUX cyrus-imapd-2.3.8-drac_with_autocreate.patch 2378 RMD160 a545ffbf21e7d14897d177b2866bc5df9df3130f SHA1 16e29ddddd924877d9d7dd572a6bcafe25c67725 SHA256 f55235912bcec09c91270dfeb9f2846300f70c22eef945781e77473ea7013aa6 -AUX cyrus-imapd-parallel.patch 256 RMD160 fa7c53c847c4af9a7c218943be46b136b69f911c SHA1 8f4a7cbf91652354681e81e5c31f53728273a1c9 SHA256 adc6d031f2e9f547b192b36685d7873fdb5c5cb690e951b173fdcd55163cc68c -AUX cyrus-imapd-strip.patch 527 RMD160 83dda22c91798715c7790c3964705b60edeab904 SHA1 624635c7a3dd17e0d3ed84c2c7b07fe042d54cc0 SHA256 4edf438766a291c18847efbcf0596e5c7fc848a1c04b851b20074a195c1b2f18 -AUX cyrus.conf 1354 RMD160 b2d6f470b7097036a5c64bc59f147f78fdbc16d5 SHA1 efc4d14807391be53018a81c4f4277cd8d6ce5f8 SHA256 23189674bb5c2f021f35027cfe22cfe56e022ce5e03da67f5c4913473bec1292 -AUX cyrus.confd 279 RMD160 da79ff4128869a045b432abc9cea6667b65ee69a SHA1 6d2d3417b678c77336a4b89db3507314302fe4eb SHA256 3e786c28ffc44a222214b22d8849728360edc37f4b3f7d7c1473a23ab58c28a9 -AUX cyrus.pam-include 109 RMD160 24f82d0496f0ff94f9c1ee4cef14124909d361e5 SHA1 1a13c82008b6d59bb9236a8162c75f8d24d6c4ba SHA256 d4ef9ed9c7c9add97df75f0e19a833bee872d3863a2b3cb1d0674fefba54e3d8 -AUX cyrus.rc6 568 RMD160 0494dc278b3c93f49018392694a809f1ec395459 SHA1 22e6f03d9365d0fef4af9236d9cd01ae0b94a67f SHA256 f2f796f1ab208bcd5641a1610b07673f92069e6f5b2370f453e3a24014ab2c6c -AUX imap.pam 195 RMD160 18585b20cc2568a000ecb381f3299dedcc737d27 SHA1 0e64fbb8fb8da0cdae6fb0820ee3048f1e30bbf6 SHA256 e8068af6f4141fe2b7d7afbaf241be779ad6edb7e03d4dfdcf7ca8e991a8a5e0 -AUX imapd.conf 1587 RMD160 74e02af5daa7648ce7e366478c1b89b112750e6b SHA1 e4f189cb59fe499a42adffe3ffe382dcb9d7c546 SHA256 69eacd9fffad55f20990fcf3b117fe4e2ac55233515ed70698c65a6deb42503f -AUX kolab/2.3.12_p2/annotations2.patch 11178 RMD160 80b327392731fa0fd06ef8fcf34985489582e334 SHA1 b7f9f1d89b5a14efb1cae6a29f2b81bbea4aa81a SHA256 befae23d2873fa8fc0f42817e12d451dee884c4431b45ef0cdd25dfe474eed87 -AUX kolab/2.3.12_p2/cyradm_annotations.patch 3107 RMD160 a0ad90fa8f779c6e671fa1bc0de1933fa0030f55 SHA1 204f83f03c39e400e65939648101195213f153a5 SHA256 00fb61b5f201193aa1d4a26cdb3d77380afdf05e975c8e171ff1643992692711 -AUX kolab/2.3.12_p2/folder-names.patch 705 RMD160 e1ae9477464e0fb7a9e22a362008771792bc659b SHA1 f30649fe5f3ed2cbc8d803b8ab76c5bde56f90c5 SHA256 9e9404695adc32c3042c490409e1494167421dbbfd726b98e90e0013ac6084cf -AUX kolab/2.3.12_p2/groups.patch 6561 RMD160 fc3d6cc483b39f7bc3c35916f7c75c92fb7aa27d SHA1 2d09dd07bd6ee6b37f71f56c11a1a51c61778822 SHA256 ffde107a869e1cc6935fff82872dbc6997bd8bc286d369f348f561d3ebbd0c24 -AUX kolab/2.3.12_p2/logging.patch 1880 RMD160 a69ccc5fba3e200c5cf4bd91c22b5a7e9713038e SHA1 79ddbb6b9af2f0c93b8f9ee732ca2639c9567943 SHA256 76a4eb6cd59564f55bb541a35b4e7f5fbd8beabf8072580c0bc514d710c3879b -AUX kolab/2.3.12_p2/timsieved_starttls-sendcaps.patch 824 RMD160 c07359f3c3c4b922bbddc9e717a1ec9b0de10c03 SHA1 05de31018a0ac1a7fce78d3a63b0c6c2e3adc9f1 SHA256 3249a502fe49df37f89133effd0f6a125d826ae425faa7e32e09a3279a1ad4b6 -AUX kolab/2.3.12_p2/uid.patch 4255 RMD160 94e8a37bb7631d1a7ea53d7575df3898065cfcd4 SHA1 3a3a5e190c67bf4618031ff5bff4d395cf324532 SHA256 ad33f589898d166b15292ca7adf9d6b60cf4af57f9ec33428e03616ccdf70c17 -DIST cyrus-imapd-2.3.11-uoa.tbz2 18045 RMD160 8f35b2399b47669d99fd301be1e14aaaab903234 SHA1 827b279e47dbe56ee4969a3ecd8d21a83b31fd44 SHA256 c67f97274c328c80f1cbaab7514fdd0de05c032e57b526e4e13e8f63d212aa9d -DIST cyrus-imapd-2.3.11.tar.gz 2275173 RMD160 34727e08cc25f3cb6e0ea0195b96de942de10f48 SHA1 6218f0dc4f1792e786677362b8b3965e4593122e SHA256 87ce58b28ed1f8974118c02ac009377bb3de62adccd699a67f0100158106d842 -DIST cyrus-imapd-2.3.12p2.tar.gz 2305996 RMD160 35225526aaf67bf99855750debd03a85949de424 SHA1 d72064b426feb0d7d6ea60456c8ebbf6fe72a2a2 SHA256 c4ea8af68d2b14d93f662fc97f805450ef0cb98ddb986b2b7330cb4aba93c4c4 -DIST cyrus-imapd-2.3.9-uoa.tbz2 17935 RMD160 1e46f17972552ed94496d1dfee8671332844775b SHA1 1fc400239cf2410f531570c37d19ad964c606a14 SHA256 3ca66f3ec992416276daca9e43dd159797d2838ff9efd118139495a86e070f5d -DIST cyrus-imapd-2.3.9.tar.gz 2272004 RMD160 c9aae3476108c0face06dfe304a136015370b166 SHA1 b95e1de87ff2c7a42d4bec87c839fe439452a79c SHA256 27e6476789788b7c72f09711103f7c4bd0136dbd33ceadd0ae2dc776a17ab437 -EBUILD cyrus-imapd-2.3.11.ebuild 8017 RMD160 d6b3b1a841e5b644560060971fec4d0ceaa21016 SHA1 de105a65d441cd6a02a497f53045748f00cc171a SHA256 c82ad3605451cc496036142e363d74023ba72364579ca6d823679f4cdc16e218 -EBUILD cyrus-imapd-2.3.12_p2.ebuild 7855 RMD160 37b4817665f64413e78c986b0867b245808dcdca SHA1 5a757669e70dd83008d933dadc738697696a8e7d SHA256 1b95668b753ee1d253e08eb26c05c9afcef170bdbf0db7e505c3c6700ece6572 -EBUILD cyrus-imapd-2.3.9-r1.ebuild 7908 RMD160 39b4b354fab0d4f304c65c290bfcac39a7f5e27b SHA1 ba4ccfe7c28b2a66bdc01ec9ad3e3a6be88c8f67 SHA256 0209fb6f7a2c3f9a6ec509b512f643c294ea8c62faff8f4d3031c011ad0846b3 -MISC metadata.xml 227 RMD160 dea45630aba3c22da6ccfe5867e88797658a9e41 SHA1 82018ee8f0b71c0e29e01aa374a89275a46dde26 SHA256 d3c03c4962fef1e25acac4875ada3102e5122e3eb7292d83d9833df8ef581d5c diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild deleted file mode 100644 index e86de7b..0000000 --- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild +++ /dev/null @@ -1,259 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild,v 1.5 2008/03/15 23:14:05 halcy0n Exp $ - -inherit autotools eutils ssl-cert fixheadtails pam - -DESCRIPTION="The Cyrus IMAP Server." -HOMEPAGE="http://asg.web.cmu.edu/cyrus/imapd/" -SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${P}.tar.gz - mirror://gentoo/${P}-uoa.tbz2" -LIBWRAP_PATCH_VER="2.2" -DRAC_PATCH_VER="2.3.11" -AUTOCREATE_PATCH_VER="0.10-0" -AUTOSIEVE_PATCH_VER="0.6.0" - -LICENSE="as-is" -SLOT="0" -KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" -IUSE="autocreate autosieve drac idled kerberos nntp pam replication snmp ssl tcpd" - -PROVIDE="virtual/imapd" -RDEPEND=">=sys-libs/db-3.2 - >=dev-libs/cyrus-sasl-2.1.13 - pam? ( - virtual/pam - >=net-mail/mailbase-1 - ) - kerberos? ( virtual/krb5 ) - snmp? ( >=net-analyzer/net-snmp-5.2.2-r1 ) - ssl? ( >=dev-libs/openssl-0.9.6 ) - tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) - drac? ( >=mail-client/drac-1.12-r1 ) - nntp? ( !net-nntp/leafnode )" - -DEPEND="$RDEPEND - sys-devel/libtool - >=sys-devel/autoconf-2.58 - sys-devel/automake" - -RDEPEND="$RDEPEND - !virtual/imapd" - -new_net-snmp_check() { - # tcpd USE flag check. Bug #68254. - if use tcpd ; then - if has_version net-analyzer/net-snmp && ! built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"-tcpd\"" - fail_msg - fi - else - if has_version net-analyzer/net-snmp && built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"-tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"tcpd\"" - fail_msg - fi - fi - # DynaLoader check. Bug #67411 - - if [ -x "$(type -p net-snmp-config)" ]; then - einfo "$(type -p net-snmp-config) is found and executable." - NSC_AGENTLIBS="$(net-snmp-config --agent-libs)" - einfo "NSC_AGENTLIBS=\""${NSC_AGENTLIBS}"\"" - if [ -z "$NSC_AGENTLIBS" ]; then - eerror "NSC_AGENTLIBS is null" - einfo "please report this to bugs.gentoo.org" - fi - for i in ${NSC_AGENTLIBS}; do - # check for the DynaLoader path. - if [ "$(expr "$i" : '.*\(DynaLoader\)')" == "DynaLoader" ] ; then - DYNALOADER_PATH="$i" - einfo "DYNALOADER_PATH=\""${DYNALOADER_PATH}"\"" - if [[ ! -f "${DYNALOADER_PATH}" ]]; then - eerror "\""${DYNALOADER_PATH}"\" is not found." - einfo "Have you upgraded \"perl\" after" - einfo "you emerged \"net-snmp\". Please re-emerge" - einfo "\"net-snmp\" then try again. Bug #67411." - die "\""${DYNALOADER_PATH}"\" is not found." - fi - fi - done - else - eerror "\"net-snmp-config\" not found or not executable!" - die "You have \"net-snmp\" installed but \"net-snmp-config\" is not found or not executable. Please re-emerge \"net-snmp\" and try again!" - fi -} - -fail_msg() { - eerror "enable "snmp" USE flag for this package requires" - eerror "that net-analyzer/net-snmp and this package both build with" - eerror "\"tcpd\" or \"-tcpd\". Bug #68254" - die "sanity check failed." -} - -pkg_setup() { - use snmp && new_net-snmp_check - enewuser cyrus -1 -1 /usr/cyrus mail -} - -src_unpack() { - unpack ${A} && cd "${S}" - - ht_fix_file "${S}"/imap/xversion.sh - - # Fix prestripped binaries - epatch "${FILESDIR}/${PN}-strip.patch" - - # Unsupported UoA patch. Bug #112912 . - # http://email.uoa.gr/projects/cyrus/autocreate/ - if use autocreate ; then - epatch "${WORKDIR}/${P}-autocreate-${AUTOCREATE_PATCH_VER}.diff" - use drac \ - && epatch "${FILESDIR}/${PN}-${DRAC_PATCH_VER}-drac_with_autocreate.patch" \ - && epatch "${S}/contrib/drac_auth.patch" - else - use drac && epatch "${S}/contrib/drac_auth.patch" - fi - - # Unsupported UoA patch. Bug #133187 . - # http://email.uoa.gr/projects/cyrus/autosievefolder/ - use autosieve && epatch "${WORKDIR}/${P}-autosieve-${AUTOSIEVE_PATCH_VER}.diff" - - # Add libwrap defines as we don't have a dynamicly linked library. - use tcpd && epatch "${FILESDIR}/${PN}-${LIBWRAP_PATCH_VER}-libwrap.patch" - - # Fix master(8)->cyrusmaster(8) manpage. - for i in `grep -rl -e 'master\.8' -e 'master(8)' "${S}"` ; do - sed -i -e 's:master\.8:cyrusmaster.8:g' \ - -e 's:master(8):cyrusmaster(8):g' \ - "${i}" || die "sed failed" || die "sed failed" - done - mv man/master.8 man/cyrusmaster.8 || die "mv failed" - sed -i -e "s:MASTER:CYRUSMASTER:g" \ - -e "s:Master:Cyrusmaster:g" \ - -e "s:master:cyrusmaster:g" \ - man/cyrusmaster.8 || die "sed failed" - - # Recreate configure. - WANT_AUTOCONF="2.5" - AT_M4DIR="cmulocal" eautoreconf - - # When linking with rpm, you need to link with more libraries. - sed -i -e "s:lrpm:lrpm -lrpmio -lrpmdb:" configure || die "sed failed" -} - -src_compile() { - local myconf - myconf="${myconf} $(use_with drac)" - myconf="${myconf} $(use_with ssl openssl)" - myconf="${myconf} $(use_with snmp ucdsnmp)" - myconf="${myconf} $(use_with tcpd libwrap)" - myconf="${myconf} $(use_enable kerberos gssapi) $(use_enable kerberos krb5afspts)" - myconf="${myconf} $(use_enable idled)" - myconf="${myconf} $(use_enable nntp nntp)" - myconf="${myconf} $(use_enable replication)" - - if use kerberos; then - myconf="${myconf} --with-auth=krb5" - else - myconf="${myconf} --with-auth=unix" - fi - - econf \ - --enable-murder \ - --enable-listext \ - --enable-netscapehack \ - --with-extraident=Gentoo \ - --with-service-path=/usr/lib/cyrus \ - --with-cyrus-user=cyrus \ - --with-cyrus-group=mail \ - --with-com_err=yes \ - --without-perl \ - --disable-cyradm \ - ${myconf} || die "econf failed" - - # needed for parallel make. Bug #72352. - cd "${S}"/imap - emake xversion.h || die "emake xversion.h failed" - - cd "${S}" - emake || die "compile problem" -} - -src_install() { - dodir /usr/bin /usr/lib - for subdir in master imap imtest timsieved notifyd sieve; do - make -C "${subdir}" DESTDIR="${D}" install || die "make install failed" - done - - # Link master to cyrusmaster (postfix has a master too) - dosym /usr/lib/cyrus/master /usr/lib/cyrus/cyrusmaster - - if ! use nntp ; then - rm man/fetchnews.8 man/syncnews.8 man/nntpd.8 man/nntptest.1 - rm "${D}"/usr/bin/nntptest - fi - - doman man/*.[0-8] - dodoc COPYRIGHT README* - dohtml doc/*.html doc/murder.png - cp doc/cyrusv2.mc "${D}/usr/share/doc/${PF}/html" - cp -r contrib tools "${D}/usr/share/doc/${PF}" - find "${D}/usr/share/doc" -name CVS -print0 | xargs -0 rm -rf - - insinto /etc - doins "${FILESDIR}/cyrus.conf" "${FILESDIR}/imapd.conf" - - newinitd "${FILESDIR}/cyrus.rc6" cyrus - newconfd "${FILESDIR}/cyrus.confd" cyrus - newpamd "${FILESDIR}/cyrus.pam-include" sieve - - for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do - keepdir "/var/${subdir}" - fowners cyrus:mail "/var/${subdir}" - fperms 0750 "/var/${subdir}" - done - for subdir in imap/{user,quota,sieve} spool/imap ; do - for i in a b c d e f g h i j k l m n o p q r s t v u w x y z ; do - keepdir "/var/${subdir}/${i}" - fowners cyrus:mail "/var/${subdir}/${i}" - fperms 0750 "/var/${subdir}/${i}" - done - done -} - -pkg_postinst() { - # do not install server.{key,pem) if they are exist. - use ssl && { - if [ ! -f "${ROOT}"etc/ssl/cyrus/server.key ]; then - install_cert /etc/ssl/cyrus/server - chown cyrus:mail "${ROOT}"etc/ssl/cyrus/server.{key,pem} - fi - } - - if df -T /var/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/imap/user/* and /var/imap/quota/* synchronous." - chattr +S /var/imap/{user,quota}{,/*} - eend $? - fi - - if df -T /var/spool/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/spool/imap/* synchronous." - chattr +S /var/spool/imap{,/*} - eend $? - fi - - ewarn "If the queue directory of the mail daemon resides on an ext2" - ewarn "or ext3 filesystem you need to set it manually to update" - ewarn "synchronously. E.g. 'chattr +S /var/spool/mqueue'." - echo - - elog "For correct logging add the following to /etc/syslog.conf:" - elog " local6.* /var/log/imapd.log" - elog " auth.debug /var/log/auth.log" - echo - - elog "You have to add user cyrus to the sasldb2. Do this with:" - elog " saslpasswd2 cyrus" -} diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.12_p2.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.12_p2.ebuild deleted file mode 100644 index 7fccbce..0000000 --- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.12_p2.ebuild +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.11.ebuild,v 1.5 2008/03/15 23:14:05 halcy0n Exp $ - -inherit autotools eutils ssl-cert fixheadtails pam - -MY_P=${P/_/} - -DESCRIPTION="The Cyrus IMAP Server." -HOMEPAGE="http://asg.web.cmu.edu/cyrus/imapd/" -SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${MY_P}.tar.gz" -LIBWRAP_PATCH_VER="2.2" - -LICENSE="as-is" -SLOT="0" -KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" -IUSE="drac idled kerberos kolab nntp pam replication snmp ssl tcpd" - -PROVIDE="virtual/imapd" -RDEPEND=">=sys-libs/db-3.2 - >=dev-libs/cyrus-sasl-2.1.13 - pam? ( - virtual/pam - >=net-mail/mailbase-1 - ) - kerberos? ( virtual/krb5 ) - snmp? ( >=net-analyzer/net-snmp-5.2.2-r1 ) - ssl? ( >=dev-libs/openssl-0.9.6 ) - tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) - drac? ( >=mail-client/drac-1.12-r1 ) - nntp? ( !net-nntp/leafnode ) - kolab? ( net-nds/openldap )" - -DEPEND="$RDEPEND - sys-devel/libtool - >=sys-devel/autoconf-2.58 - sys-devel/automake" - -RDEPEND="$RDEPEND - !virtual/imapd" - -new_net-snmp_check() { - # tcpd USE flag check. Bug #68254. - if use tcpd ; then - if has_version net-analyzer/net-snmp && ! built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"-tcpd\"" - fail_msg - fi - else - if has_version net-analyzer/net-snmp && built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"-tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"tcpd\"" - fail_msg - fi - fi - # DynaLoader check. Bug #67411 - - if [ -x "$(type -p net-snmp-config)" ]; then - einfo "$(type -p net-snmp-config) is found and executable." - NSC_AGENTLIBS="$(net-snmp-config --agent-libs)" - einfo "NSC_AGENTLIBS=\""${NSC_AGENTLIBS}"\"" - if [ -z "$NSC_AGENTLIBS" ]; then - eerror "NSC_AGENTLIBS is null" - einfo "please report this to bugs.gentoo.org" - fi - for i in ${NSC_AGENTLIBS}; do - # check for the DynaLoader path. - if [ "$(expr "$i" : '.*\(DynaLoader\)')" == "DynaLoader" ] ; then - DYNALOADER_PATH="$i" - einfo "DYNALOADER_PATH=\""${DYNALOADER_PATH}"\"" - if [[ ! -f "${DYNALOADER_PATH}" ]]; then - eerror "\""${DYNALOADER_PATH}"\" is not found." - einfo "Have you upgraded \"perl\" after" - einfo "you emerged \"net-snmp\". Please re-emerge" - einfo "\"net-snmp\" then try again. Bug #67411." - die "\""${DYNALOADER_PATH}"\" is not found." - fi - fi - done - else - eerror "\"net-snmp-config\" not found or not executable!" - die "You have \"net-snmp\" installed but \"net-snmp-config\" is not found or not executable. Please re-emerge \"net-snmp\" and try again!" - fi -} - -fail_msg() { - eerror "enable "snmp" USE flag for this package requires" - eerror "that net-analyzer/net-snmp and this package both build with" - eerror "\"tcpd\" or \"-tcpd\". Bug #68254" - die "sanity check failed." -} - -pkg_setup() { - use snmp && new_net-snmp_check - enewuser cyrus -1 -1 /usr/cyrus mail -} - -S=${WORKDIR}/${MY_P} - -src_unpack() { - unpack ${A} && cd "${S}" - - ht_fix_file "${S}"/imap/xversion.sh - - # Fix prestripped binaries - epatch "${FILESDIR}/${PN}-strip.patch" - - if use drac ; then - epatch "${S}/contrib/drac_auth.patch" - fi - - # KOLAB support - if use kolab ; then - EPATCH_SOURCE="${FILESDIR}/kolab/${PV}" EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" epatch - # These files are being created automatically and need to be updated - # # after the patches used above - rm -f lib/imapopts.h lib/imapopts.c - fi - - # Add libwrap defines as we don't have a dynamicly linked library. - use tcpd && epatch "${FILESDIR}/${PN}-${LIBWRAP_PATCH_VER}-libwrap.patch" - - # Fix master(8)->cyrusmaster(8) manpage. - for i in `grep -rl -e 'master\.8' -e 'master(8)' "${S}"` ; do - sed -i -e 's:master\.8:cyrusmaster.8:g' \ - -e 's:master(8):cyrusmaster(8):g' \ - "${i}" || die "sed failed" || die "sed failed" - done - mv man/master.8 man/cyrusmaster.8 || die "mv failed" - sed -i -e "s:MASTER:CYRUSMASTER:g" \ - -e "s:Master:Cyrusmaster:g" \ - -e "s:master:cyrusmaster:g" \ - man/cyrusmaster.8 || die "sed failed" - - # Recreate configure. - WANT_AUTOCONF="2.5" - AT_M4DIR="cmulocal" eautoreconf - - # When linking with rpm, you need to link with more libraries. - sed -i -e "s:lrpm:lrpm -lrpmio -lrpmdb:" configure || die "sed failed" - - if use kolab ; then - sed -i -e "s/{LIB_SASL}/{LIB_SASL} -lldap -llber /" configure || die "sed failed" - fi -} - -src_compile() { - local myconf - myconf="${myconf} $(use_with drac)" - myconf="${myconf} $(use_with ssl openssl)" - myconf="${myconf} $(use_with snmp ucdsnmp)" - myconf="${myconf} $(use_with tcpd libwrap)" - myconf="${myconf} $(use_enable kerberos gssapi) $(use_enable kerberos krb5afspts)" - myconf="${myconf} $(use_enable idled)" - myconf="${myconf} $(use_enable nntp nntp)" - myconf="${myconf} $(use_enable replication)" - - if use kerberos; then - myconf="${myconf} --with-auth=krb5" - else - myconf="${myconf} --with-auth=unix" - fi - - econf \ - --enable-murder \ - --enable-listext \ - --enable-netscapehack \ - --with-extraident=Gentoo \ - --with-service-path=/usr/lib/cyrus \ - --with-cyrus-user=cyrus \ - --with-cyrus-group=mail \ - --with-com_err=yes \ - --without-perl \ - --disable-cyradm \ - ${myconf} || die "econf failed" - - # needed for parallel make. Bug #72352. - cd "${S}"/imap - emake xversion.h || die "emake xversion.h failed" - - cd "${S}" - emake || die "compile problem" -} - -src_install() { - dodir /usr/bin /usr/lib - for subdir in master imap imtest timsieved notifyd sieve; do - make -C "${subdir}" DESTDIR="${D}" install || die "make install failed" - done - - # Link master to cyrusmaster (postfix has a master too) - dosym /usr/lib/cyrus/master /usr/lib/cyrus/cyrusmaster - - if ! use nntp ; then - rm man/fetchnews.8 man/syncnews.8 man/nntpd.8 man/nntptest.1 - rm "${D}"/usr/bin/nntptest - fi - - doman man/*.[0-8] - dodoc COPYRIGHT README* - dohtml doc/*.html doc/murder.png - cp doc/cyrusv2.mc "${D}/usr/share/doc/${PF}/html" - cp -r contrib tools "${D}/usr/share/doc/${PF}" - find "${D}/usr/share/doc" -name CVS -print0 | xargs -0 rm -rf - - insinto /etc - doins "${FILESDIR}/cyrus.conf" "${FILESDIR}/imapd.conf" - - newinitd "${FILESDIR}/cyrus.rc6" cyrus - newconfd "${FILESDIR}/cyrus.confd" cyrus - newpamd "${FILESDIR}/cyrus.pam-include" sieve - - for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do - keepdir "/var/${subdir}" - fowners cyrus:mail "/var/${subdir}" - fperms 0750 "/var/${subdir}" - done - for subdir in imap/{user,quota,sieve} spool/imap ; do - for i in a b c d e f g h i j k l m n o p q r s t v u w x y z ; do - keepdir "/var/${subdir}/${i}" - fowners cyrus:mail "/var/${subdir}/${i}" - fperms 0750 "/var/${subdir}/${i}" - done - done -} - -pkg_postinst() { - # do not install server.{key,pem) if they are exist. - use ssl && { - if [ ! -f "${ROOT}"etc/ssl/cyrus/server.key ]; then - install_cert /etc/ssl/cyrus/server - chown cyrus:mail "${ROOT}"etc/ssl/cyrus/server.{key,pem} - fi - } - - if df -T /var/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/imap/user/* and /var/imap/quota/* synchronous." - chattr +S /var/imap/{user,quota}{,/*} - eend $? - fi - - if df -T /var/spool/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/spool/imap/* synchronous." - chattr +S /var/spool/imap{,/*} - eend $? - fi - - ewarn "If the queue directory of the mail daemon resides on an ext2" - ewarn "or ext3 filesystem you need to set it manually to update" - ewarn "synchronously. E.g. 'chattr +S /var/spool/mqueue'." - echo - - elog "For correct logging add the following to /etc/syslog.conf:" - elog " local6.* /var/log/imapd.log" - elog " auth.debug /var/log/auth.log" - echo - - elog "You have to add user cyrus to the sasldb2. Do this with:" - elog " saslpasswd2 cyrus" -} diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild deleted file mode 100644 index 5266492..0000000 --- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild +++ /dev/null @@ -1,256 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r1.ebuild,v 1.11 2008/03/15 23:14:05 halcy0n Exp $ - -inherit autotools eutils ssl-cert fixheadtails pam - -DESCRIPTION="The Cyrus IMAP Server." -HOMEPAGE="http://asg.web.cmu.edu/cyrus/imapd/" -SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${P}.tar.gz - mirror://gentoo/${P}-uoa.tbz2" -LIBWRAP_PATCH_VER="2.2" -DRAC_PATCH_VER="2.3.8" -AUTOCREATE_PATCH_VER="0.10-0" -AUTOSIEVE_PATCH_VER="0.6.0" - -LICENSE="as-is" -SLOT="0" -KEYWORDS="amd64 hppa ppc ppc64 sparc x86" -IUSE="autocreate autosieve drac idled kerberos nntp pam replication snmp ssl tcpd" - -PROVIDE="virtual/imapd" -RDEPEND=">=sys-libs/db-3.2 - >=dev-libs/cyrus-sasl-2.1.13 - pam? ( - virtual/pam - >=net-mail/mailbase-1 - ) - kerberos? ( virtual/krb5 ) - snmp? ( >=net-analyzer/net-snmp-5.2.2-r1 ) - ssl? ( >=dev-libs/openssl-0.9.6 ) - tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) - drac? ( >=mail-client/drac-1.12-r1 )" - -DEPEND="$RDEPEND - sys-devel/libtool - >=sys-devel/autoconf-2.58 - sys-devel/automake" - -RDEPEND="$RDEPEND - !virtual/imap" - -new_net-snmp_check() { - # tcpd USE flag check. Bug #68254. - if use tcpd ; then - if has_version net-analyzer/net-snmp && ! built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"-tcpd\"" - fail_msg - fi - else - if has_version net-analyzer/net-snmp && built_with_use net-analyzer/net-snmp tcpd ; then - eerror "You are emerging this package with USE=\"-tcpd\"" - eerror "but \"net-analyzer/net-snmp\" has been emerged with USE=\"tcpd\"" - fail_msg - fi - fi - # DynaLoader check. Bug #67411 - - if [ -x "$(type -p net-snmp-config)" ]; then - einfo "$(type -p net-snmp-config) is found and executable." - NSC_AGENTLIBS="$(net-snmp-config --agent-libs)" - einfo "NSC_AGENTLIBS=\""${NSC_AGENTLIBS}"\"" - if [ -z "$NSC_AGENTLIBS" ]; then - eerror "NSC_AGENTLIBS is null" - einfo "please report this to bugs.gentoo.org" - fi - for i in ${NSC_AGENTLIBS}; do - # check for the DynaLoader path. - if [ "$(expr "$i" : '.*\(DynaLoader\)')" == "DynaLoader" ] ; then - DYNALOADER_PATH="$i" - einfo "DYNALOADER_PATH=\""${DYNALOADER_PATH}"\"" - if [[ ! -f "${DYNALOADER_PATH}" ]]; then - eerror "\""${DYNALOADER_PATH}"\" is not found." - einfo "Have you upgraded \"perl\" after" - einfo "you emerged \"net-snmp\". Please re-emerge" - einfo "\"net-snmp\" then try again. Bug #67411." - die "\""${DYNALOADER_PATH}"\" is not found." - fi - fi - done - else - eerror "\"net-snmp-config\" not found or not executable!" - die "You have \"net-snmp\" installed but \"net-snmp-config\" is not found or not executable. Please re-emerge \"net-snmp\" and try again!" - fi -} - -fail_msg() { - eerror "enable "snmp" USE flag for this package requires" - eerror "that net-analyzer/net-snmp and this package both build with" - eerror "\"tcpd\" or \"-tcpd\". Bug #68254" - die "sanity check failed." -} - -pkg_setup() { - use snmp && new_net-snmp_check - enewuser cyrus -1 -1 /usr/cyrus mail -} - -src_unpack() { - unpack ${A} && cd "${S}" - - ht_fix_file "${S}"/imap/xversion.sh - - # Fix prestripped binaries - epatch "${FILESDIR}/${PN}-strip.patch" - - # Parallel make fix - epatch "${FILESDIR}"/${PN}-parallel.patch - - # Unsupported UoA patch. Bug #112912 . - # http://email.uoa.gr/projects/cyrus/autocreate/ - if use autocreate ; then - epatch "${WORKDIR}/${P}-autocreate-${AUTOCREATE_PATCH_VER}.diff" - use drac \ - && epatch "${FILESDIR}/${PN}-${DRAC_PATCH_VER}-drac_with_autocreate.patch" \ - && epatch "${S}/contrib/drac_auth.patch" - else - use drac && epatch "${S}/contrib/drac_auth.patch" - fi - - # Unsupported UoA patch. Bug #133187 . - # http://email.uoa.gr/projects/cyrus/autosievefolder/ - use autosieve && epatch "${WORKDIR}/${P}-autosieve-${AUTOSIEVE_PATCH_VER}.diff" - - # Add libwrap defines as we don't have a dynamicly linked library. - use tcpd && epatch "${FILESDIR}/${PN}-${LIBWRAP_PATCH_VER}-libwrap.patch" - - # Fix master(8)->cyrusmaster(8) manpage. - for i in `grep -rl -e 'master\.8' -e 'master(8)' "${S}"` ; do - sed -i -e 's:master\.8:cyrusmaster.8:g' \ - -e 's:master(8):cyrusmaster(8):g' \ - "${i}" || die "sed failed" || die "sed failed" - done - mv man/master.8 man/cyrusmaster.8 || die "mv failed" - sed -i -e "s:MASTER:CYRUSMASTER:g" \ - -e "s:Master:Cyrusmaster:g" \ - -e "s:master:cyrusmaster:g" \ - man/cyrusmaster.8 || die "sed failed" - - # Recreate configure. - WANT_AUTOCONF="2.5" - eautoreconf - - # When linking with rpm, you need to link with more libraries. - sed -i -e "s:lrpm:lrpm -lrpmio -lrpmdb:" configure || die "sed failed" -} - -src_compile() { - local myconf - myconf="${myconf} $(use_with drac)" - myconf="${myconf} $(use_with ssl openssl)" - myconf="${myconf} $(use_with snmp ucdsnmp)" - myconf="${myconf} $(use_with tcpd libwrap)" - myconf="${myconf} $(use_enable kerberos gssapi) $(use_enable kerberos krb5afspts)" - myconf="${myconf} $(use_enable idled)" - myconf="${myconf} $(use_enable nntp nntp)" - myconf="${myconf} $(use_enable replication)" - - if use kerberos; then - myconf="${myconf} --with-auth=krb5" - else - myconf="${myconf} --with-auth=unix" - fi - - econf \ - --enable-murder \ - --enable-listext \ - --enable-netscapehack \ - --with-extraident=Gentoo \ - --with-service-path=/usr/lib/cyrus \ - --with-cyrus-user=cyrus \ - --with-cyrus-group=mail \ - --with-com_err=yes \ - --without-perl \ - --disable-cyradm \ - ${myconf} || die "econf failed" - - # needed for parallel make. Bug #72352. - cd "${S}"/imap - emake xversion.h || die "emake xversion.h failed" - - cd "${S}" - emake || die "compile problem" -} - -src_install() { - dodir /usr/bin /usr/lib - for subdir in master imap imtest timsieved notifyd sieve; do - make -C "${subdir}" DESTDIR="${D}" install || die "make install failed" - done - - # Link master to cyrusmaster (postfix has a master too) - dosym /usr/lib/cyrus/master /usr/lib/cyrus/cyrusmaster - - doman man/*.[0-8] - dodoc COPYRIGHT README* - dohtml doc/*.html doc/murder.png - cp doc/cyrusv2.mc "${D}/usr/share/doc/${PF}/html" - cp -r contrib tools "${D}/usr/share/doc/${PF}" - find "${D}/usr/share/doc" -name CVS -print0 | xargs -0 rm -rf - - insinto /etc - doins "${FILESDIR}/cyrus.conf" "${FILESDIR}/imapd.conf" - - newinitd "${FILESDIR}/cyrus.rc6" cyrus - newconfd "${FILESDIR}/cyrus.confd" cyrus - newpamd "${FILESDIR}/cyrus.pam-include" sieve - - for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do - keepdir "/var/${subdir}" - fowners cyrus:mail "/var/${subdir}" - fperms 0750 "/var/${subdir}" - done - for subdir in imap/{user,quota,sieve} spool/imap ; do - for i in a b c d e f g h i j k l m n o p q r s t v u w x y z ; do - keepdir "/var/${subdir}/${i}" - fowners cyrus:mail "/var/${subdir}/${i}" - fperms 0750 "/var/${subdir}/${i}" - done - done -} - -pkg_postinst() { - # do not install server.{key,pem) if they are exist. - use ssl && { - if [ ! -f "${ROOT}"etc/ssl/cyrus/server.key ]; then - install_cert /etc/ssl/cyrus/server - chown cyrus:mail "${ROOT}"etc/ssl/cyrus/server.{key,pem} - fi - } - - if df -T /var/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/imap/user/* and /var/imap/quota/* synchronous." - chattr +S /var/imap/{user,quota}{,/*} - eend $? - fi - - if df -T /var/spool/imap | grep -q ' ext[23] ' ; then - ebegin "Making /var/spool/imap/* synchronous." - chattr +S /var/spool/imap{,/*} - eend $? - fi - - ewarn "If the queue directory of the mail daemon resides on an ext2" - ewarn "or ext3 filesystem you need to set it manually to update" - ewarn "synchronously. E.g. 'chattr +S /var/spool/mqueue'." - echo - - elog "For correct logging add the following to /etc/syslog.conf:" - elog " local6.* /var/log/imapd.log" - elog " auth.debug /var/log/auth.log" - echo - - elog "You have to add user cyrus to the sasldb2. Do this with:" - elog " saslpasswd2 cyrus" -} diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-libwrap.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-libwrap.patch deleted file mode 100644 index 6157c87..0000000 --- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-libwrap.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- master/Makefile.in.orig 2004-10-17 19:48:01.923901016 -0700 -+++ master/Makefile.in 2004-10-17 19:48:33.639079576 -0700 -@@ -59,7 +59,7 @@ - - CFLAGS = @CFLAGS@ - LDFLAGS = @LDFLAGS@ @COM_ERR_LDFLAGS@ --LIBS = ../lib/libcyrus_min.a @LIB_UCDSNMP@ @LIBS@ @COM_ERR_LIBS@ -+LIBS = ../lib/libcyrus_min.a @LIB_UCDSNMP@ @LIBS@ @COM_ERR_LIBS@ @LIB_WRAP@ - - SHELL = /bin/sh - MAKEDEPEND = @MAKEDEPEND@ diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch deleted file mode 100644 index 5e7929d..0000000 --- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- contrib/drac_auth.patch.orig 2008-01-02 20:22:53.244043151 +0100 -+++ contrib/drac_auth.patch 2008-01-02 20:23:42.858474159 +0100 -@@ -107,23 +107,23 @@ - DEPLIBS = ../lib/libcyrus.a ../lib/libcyrus_min.a @DEPLIBS@ - - @@ -201,17 +202,17 @@ -- imapd: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd: $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(CC) $(LDFLAGS) -o imapd \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o \ --- libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - -- imapd.pure: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd.pure: $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o imapd.pure \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \ --- $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - -- imapd.quant: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd.quant: $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(QUANTIFY) $(QUANTOPT) $(CC) $(LDFLAGS) -o imapd.quant \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \ --- $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - - mupdate: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o tls.o \ - libimap.a $(DEPLIBS) -@@ -131,8 +131,8 @@ - pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \ - $(DEPLIBS) $(SERVICE) - $(CC) $(LDFLAGS) -o pop3d pop3d.o proxy.o backend.o tls.o $(SERVICE) \ --- mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - - nntpd: nntpd.o proxy.o backend.o index.o smtpclient.o spool.o tls.o \ - mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE) diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-drac_with_autocreate.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-drac_with_autocreate.patch deleted file mode 100644 index 3b57e95..0000000 --- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-drac_with_autocreate.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- contrib/drac_auth.patch.orig 2007-07-28 12:10:05.253222371 +0200 -+++ contrib/drac_auth.patch 2007-07-28 12:12:51.105920502 +0200 -@@ -107,23 +107,23 @@ - DEPLIBS = ../lib/libcyrus.a ../lib/libcyrus_min.a @DEPLIBS@ - - @@ -202,17 +203,17 @@ -- imapd: xversion $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd: xversion $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(CC) $(LDFLAGS) -o imapd \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o \ --- libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - -- imapd.pure: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd.pure: $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o imapd.pure \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \ --- $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - -- imapd.quant: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE) -+ imapd.quant: $(IMAPDOBJS) mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(SERVICE) - $(QUANTIFY) $(QUANTOPT) $(CC) $(LDFLAGS) -o imapd.quant \ - $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \ --- $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) $(DRAC_LIBS) -+- $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) $(DRAC_LIBS) - - mupdate: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o tls.o \ - libimap.a $(DEPLIBS) -@@ -131,8 +131,8 @@ - pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \ - $(DEPLIBS) $(SERVICE) - $(CC) $(LDFLAGS) -o pop3d pop3d.o proxy.o backend.o tls.o $(SERVICE) \ --- mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) --+ mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) -+- mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) -++ mutex_fake.o libimap.a $(SIEVE_LIBS) $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) - - nntpd: nntpd.o proxy.o backend.o index.o smtpclient.o spool.o tls.o \ - mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE) diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-parallel.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-parallel.patch deleted file mode 100644 index 5932afc..0000000 --- a/net-mail/cyrus-imapd/files/cyrus-imapd-parallel.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- imap/Makefile.in.orig 2006-08-28 09:32:33.000000000 -0700 -+++ imap/Makefile.in 2006-08-28 09:33:03.000000000 -0700 -@@ -155,6 +155,8 @@ - - ### Built Source Files - -+version.o: xversion.h -+ - xversion: - rm -f version.o - AWK=$(AWK) $(srcdir)/xversion.sh diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-strip.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-strip.patch deleted file mode 100644 index fa82a4b..0000000 --- a/net-mail/cyrus-imapd/files/cyrus-imapd-strip.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- imtest/Makefile.in.orig 2007-09-07 21:45:46.000000000 +0200 -+++ imtest/Makefile.in 2007-09-07 21:45:52.000000000 +0200 -@@ -72,7 +72,7 @@ - all: imtest - - install: -- $(INSTALL) -s -m 755 imtest $(DESTDIR)$(exec_prefix)/bin -+ $(INSTALL) -m 755 imtest $(DESTDIR)$(exec_prefix)/bin - ln -f $(DESTDIR)$(exec_prefix)/bin/imtest $(DESTDIR)$(exec_prefix)/bin/pop3test - ln -f $(DESTDIR)$(exec_prefix)/bin/imtest $(DESTDIR)$(exec_prefix)/bin/nntptest - ln -f $(DESTDIR)$(exec_prefix)/bin/imtest $(DESTDIR)$(exec_prefix)/bin/lmtptest diff --git a/net-mail/cyrus-imapd/files/cyrus.conf b/net-mail/cyrus-imapd/files/cyrus.conf deleted file mode 100644 index fe7d368..0000000 --- a/net-mail/cyrus-imapd/files/cyrus.conf +++ /dev/null @@ -1,43 +0,0 @@ -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/files/cyrus.conf,v 1.4 2004/07/18 04:02:23 dragonheart Exp $ - -# Standard standalone server configuration. - -START { - # Do not delete this entry! - recover cmd="ctl_cyrusdb -r" - - # This is only necessary if using idled for IMAP IDLE. - #idled cmd="idled" -} - -# UNIX sockets start with a slash and are put into /var/imap/socket. -SERVICES { - # Add or remove based on preferences. - imap cmd="imapd" listen="imap2" prefork=0 - pop3 cmd="pop3d" listen="pop-3" prefork=0 - - # Don't forget to generate the needed keys for SSL or TLS - # (see doc/html/install-configure.html). - #imaps cmd="imapd -s" listen="imaps" prefork=0 - #pop3s cmd="pop3d -s" listen="pop3s" prefork=0 - - sieve cmd="timsieved" listen="sieve" prefork=0 - - # at least one LMTP is required for delivery - #lmtp cmd="lmtpd" listen="lmtp" prefork=0 - lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0 - - # this is only necessary if using notifications - #notify cmd="notifyd" listen="/var/imap/socket/notify" proto="udp" prefork=1 -} - -EVENTS { - # This is required. - checkpoint cmd="ctl_cyrusdb -c" period=30 - - # This is only necessary if using duplicate delivery suppression. - delprune cmd="ctl_deliver -E 3" period=1440 - - # This is only necessary if caching TLS sessions. - tlsprune cmd="tls_prune" period=1440 -} diff --git a/net-mail/cyrus-imapd/files/cyrus.confd b/net-mail/cyrus-imapd/files/cyrus.confd deleted file mode 100644 index ca24b44..0000000 --- a/net-mail/cyrus-imapd/files/cyrus.confd +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright 1999-2004 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/files/cyrus.confd,v 1.1 2004/12/29 06:44:00 swegener Exp $ - -# Additional options for the cyrus master -CYRUS_OPTS="" diff --git a/net-mail/cyrus-imapd/files/cyrus.pam-include b/net-mail/cyrus-imapd/files/cyrus.pam-include deleted file mode 100644 index 6e47645..0000000 --- a/net-mail/cyrus-imapd/files/cyrus.pam-include +++ /dev/null @@ -1,6 +0,0 @@ -#%PAM-1.0 - -auth required pam_nologin.so -auth include system-auth - -account include system-auth diff --git a/net-mail/cyrus-imapd/files/cyrus.rc6 b/net-mail/cyrus-imapd/files/cyrus.rc6 deleted file mode 100644 index 423f7a1..0000000 --- a/net-mail/cyrus-imapd/files/cyrus.rc6 +++ /dev/null @@ -1,23 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/files/cyrus.rc6,v 1.8 2007/07/08 18:47:30 drac Exp $ - -depend() { - use net - use dns logger - after drac saslauthd -} - -start() { - ebegin "Starting cyrus imapd" - start-stop-daemon --start --quiet --background \ - --exec /usr/lib/cyrus/master -- ${CYRUS_OPTS} - eend $? -} - -stop() { - ebegin "Stopping cyrus imapd" - start-stop-daemon --stop --quiet --pidfile /var/run/cyrus-master.pid - eend $? -} diff --git a/net-mail/cyrus-imapd/files/imap.pam b/net-mail/cyrus-imapd/files/imap.pam deleted file mode 100644 index 17ddb9f..0000000 --- a/net-mail/cyrus-imapd/files/imap.pam +++ /dev/null @@ -1,6 +0,0 @@ -#%PAM-1.0 - -auth required /lib/security/pam_nologin.so -auth required /lib/security/pam_stack.so service=system-auth - -account required /lib/security/pam_stack.so service=system-auth diff --git a/net-mail/cyrus-imapd/files/imapd.conf b/net-mail/cyrus-imapd/files/imapd.conf deleted file mode 100644 index f4db3a4..0000000 --- a/net-mail/cyrus-imapd/files/imapd.conf +++ /dev/null @@ -1,52 +0,0 @@ -# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/files/imapd.conf,v 1.5 2004/08/27 06:02:45 langthang Exp $ - -# Don't forget to use chattr +S (if you are using ext[23]) -# when you change these directories (read the docs). -configdirectory: /var/imap -partition-default: /var/spool/imap -sievedir: /var/imap/sieve - -tls_ca_path: /etc/ssl/certs -tls_cert_file: /etc/ssl/cyrus/server.crt -tls_key_file: /etc/ssl/cyrus/server.key - -# Don't use an everyday user as admin. -admins: cyrus - -hashimapspool: yes -allowanonymouslogin: no -allowplaintext: no - -# Allow renaming of top-level mailboxes. -#allowusermoves: yes - -# Use this if sieve-scripts could be in ~user/.sieve. -#sieveusehomedir: yes - -# Use saslauthd if you want to use pam for imap. -# But be warned: login with DIGEST-MD5 or CRAM-MD5 -# is not possible using pam. -#sasl_pwcheck_method: saslauthd - -#################################################### -## This is a recommended authentication method if you -## emerge cyrus-sasl with 'postgres' or 'mysql' -## To use with mysql database uncomment those lines below. - -#sasl_pwcheck_method: auxprop -#sasl_auxprop_plugin: sql - -## possible values for sasl_auxprop_plugin 'mysql', 'pgsql', 'sqlite'. -#sasl_sql_engine: mysql - -## all possible values. -#sasl_mech_list: LOGIN PLAIN CRAM-MD5 DIGEST-MD5 NTLM -## or limit to CRAM-MD5 only -#sasl_mech_list: CRAM-MD5 - -## change below to suit your setup. -sasl_sql_user: mailsqluser -sasl_sql_passwd: password -sasl_sql_database: mailsqldb -sasl_sql_hostnames: localhost -sasl_sql_select: SELECT clear FROM users WHERE email = '%u@%r' diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/annotations2.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/annotations2.patch deleted file mode 100644 index 87fa920..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/annotations2.patch +++ /dev/null @@ -1,356 +0,0 @@ -Provides a new version of annotation support for the cyrus imapd server [Version: 2.3.9] - -diff -r 321cda1d6136 imap/annotate.c ---- a/imap/annotate.c Tue Apr 22 10:44:56 2008 +0200 -+++ b/imap/annotate.c Tue Apr 22 10:47:04 2008 +0200 -@@ -90,6 +90,8 @@ int (*proxy_fetch_func)(const char *serv - struct strlist *attribute_pat) = NULL; - int (*proxy_store_func)(const char *server, const char *mbox_pat, - struct entryattlist *entryatts) = NULL; -+ -+void init_annotation_definitions(); - - /* String List Management */ - /* -@@ -237,6 +239,8 @@ void annotatemore_init(int myflags, - if (store_func) { - proxy_store_func = store_func; - } -+ -+ init_annotation_definitions(); - } - - void annotatemore_open(char *fname) -@@ -1832,6 +1836,224 @@ const struct annotate_st_entry mailbox_r - { NULL, 0, ANNOTATION_PROXY_T_INVALID, 0, 0, NULL, NULL } - }; - -+struct annotate_st_entry_list *server_entries_list = NULL; -+struct annotate_st_entry_list *mailbox_rw_entries_list = NULL; -+ -+enum { -+ ANNOTATION_SCOPE_SERVER = 1, -+ ANNOTATION_SCOPE_MAILBOX = 2 -+}; -+ -+const struct annotate_attrib annotation_scope_names[] = -+{ -+ { "server", ANNOTATION_SCOPE_SERVER }, -+ { "mailbox", ANNOTATION_SCOPE_MAILBOX }, -+ { NULL, 0 } -+}; -+ -+const struct annotate_attrib annotation_proxy_type_names[] = -+{ -+ { "proxy", PROXY_ONLY }, -+ { "backend", BACKEND_ONLY }, -+ { "proxy_and_backend", PROXY_AND_BACKEND }, -+ { NULL, 0 } -+}; -+ -+const struct annotate_attrib attribute_type_names[] = -+{ -+ { "content-type", ATTRIB_TYPE_CONTENTTYPE }, -+ { "string", ATTRIB_TYPE_STRING }, -+ { "boolean", ATTRIB_TYPE_BOOLEAN }, -+ { "uint", ATTRIB_TYPE_UINT }, -+ { "int", ATTRIB_TYPE_INT }, -+ { NULL, 0 } -+}; -+ -+#define ANNOT_DEF_MAXLINELEN 1024 -+ -+int table_lookup(const struct annotate_attrib *table, -+ char* name, -+ size_t namelen, -+ char* errmsg) -+/* search in table for the value given by name and namelen (name is null-terminated, -+ but possibly more than just the key). errmsg is used to hint the user where we failed */ -+{ -+ char errbuf[ANNOT_DEF_MAXLINELEN*2]; -+ int entry; -+ -+ for (entry = 0; table[entry].name && -+ (strncasecmp(table[entry].name, name, namelen) -+ || table[entry].name[namelen] != '\0'); entry++); -+ -+ if (! table[entry].name) { -+ sprintf(errbuf, "invalid %s at '%s'", errmsg, name); -+ fatal(errbuf, EC_CONFIG); -+ } -+ return table[entry].entry; -+} -+ -+char *consume_comma(char* p) -+ /* advance beyond the next ',', skipping whitespace, fail if next non-space is no comma */ -+{ -+ char errbuf[ANNOT_DEF_MAXLINELEN*2]; -+ -+ for (; *p && isspace(*p); p++); -+ if (*p != ',') { -+ sprintf(errbuf, "',' expected, '%s' found parsing annotation definition", -+ p); -+ fatal(errbuf, EC_CONFIG); -+ } -+ p++; -+ for (; *p && isspace(*p); p++); -+ -+ return p; -+} -+ -+int parse_table_lookup_bitmask(const struct annotate_attrib *table, -+ char** s, -+ char* errmsg) -+ /* parses strings of the form value1 [ value2 [ ... ]] -+ value1 is mapped via table to ints and the result ored -+ whitespace is allowed between value names and punctuation -+ the field must end in '\0' or ',' -+ s is advanced to '\0' or ',' -+ on error errmsg is used to identify item to be parsed -+ */ -+{ -+ char errbuf[ANNOT_DEF_MAXLINELEN*2]; -+ int result = 0; -+ char *p, *p2; -+ -+ p = *s; -+ do { -+ p2 = p; -+ for (; *p && (isalnum(*p) || *p=='.' || *p=='-' || *p=='_' || *p=='/');p++); -+ result |= table_lookup(table, p2, p-p2, errmsg); -+ for (; *p && isspace(*p); p++); -+ } while (*p && *p != ','); -+ -+ *s = p; -+ return result; -+} -+ -+void init_annotation_definitions() -+{ -+ char *p, *p2, *tmp; -+ const char *filename; -+ char aline[ANNOT_DEF_MAXLINELEN]; -+ char errbuf[ANNOT_DEF_MAXLINELEN*2]; -+ struct annotate_st_entry_list *se, *me; -+ struct annotate_st_entry *ae; -+ int i; -+ FILE* f; -+ -+ /* NOTE: we assume # static entries > 0 */ -+ server_entries_list = xmalloc(sizeof(struct annotate_st_entry_list)); -+ mailbox_rw_entries_list = xmalloc(sizeof(struct annotate_st_entry_list)); -+ se = server_entries_list; -+ me = mailbox_rw_entries_list; -+ /* copy static entries into list */ -+ for (i = 0; server_entries[i].name;i++) { -+ se->entry = &server_entries[i]; -+ if (server_entries[i+1].name) { -+ se->next = xmalloc(sizeof(struct annotate_st_entry_list)); -+ se = se->next; -+ } -+ } -+ /* copy static entries into list */ -+ for (i = 0; mailbox_rw_entries[i].name;i++) { -+ me->entry = &mailbox_rw_entries[i]; -+ if (mailbox_rw_entries[i+1].name) { -+ me->next = xmalloc(sizeof(struct annotate_st_entry_list)); -+ me = me->next; -+ } -+ } -+ -+ /* parse config file */ -+ filename = config_getstring(IMAPOPT_ANNOTATION_DEFINITIONS); -+ -+ if (! filename) { -+ se->next = NULL; -+ me->next = NULL; -+ return; -+ } -+ -+ f = fopen(filename,"r"); -+ if (! f) { -+ sprintf(errbuf, "could not open annotation definiton %s", filename); -+ fatal(errbuf, EC_CONFIG); -+ } -+ -+ while (fgets(aline, sizeof(aline), f)) { -+ // remove leading space, skip blank lines and comments -+ for (p = aline; *p && isspace(*p); p++); -+ if (!*p || *p == '#') continue; -+ -+ // note, we only do the most basic validity checking and may -+ // be more restrictive than neccessary -+ -+ ae = xmalloc(sizeof(struct annotate_st_entry)); -+ -+ p2 = p; -+ for (; *p && (isalnum(*p) || *p=='.' || *p=='-' || *p=='_' || *p=='/');p++); -+ // TV-TODO: should test for empty -+ ae->name = xstrndup(p2, p-p2); -+ -+ p = consume_comma(p); -+ -+ p2 = p; -+ for (; *p && (isalnum(*p) || *p=='.' || *p=='-' || *p=='_' || *p=='/');p++); -+ -+ if (table_lookup(annotation_scope_names, p2, p-p2, -+ "annotation scope")==ANNOTATION_SCOPE_SERVER) { -+ se->next = xmalloc(sizeof(struct annotate_st_entry_list)); -+ se = se->next; -+ se->entry = ae; -+ } -+ else { -+ me->next = xmalloc(sizeof(struct annotate_st_entry_list)); -+ me = me->next; -+ me->entry = ae; -+ } -+ -+ p = consume_comma(p); -+ p2 = p; -+ for (; *p && (isalnum(*p) || *p=='.' || *p=='-' || *p=='_' || *p=='/');p++); -+ ae->type = table_lookup(attribute_type_names, p2, p-p2, -+ "attribute type"); -+ -+ p = consume_comma(p); -+ ae->proxytype = parse_table_lookup_bitmask(annotation_proxy_type_names, -+ &p, -+ "annotation proxy type"); -+ -+ p = consume_comma(p); -+ ae->attribs = parse_table_lookup_bitmask(annotation_attributes, -+ &p, -+ "annotation attributes"); -+ -+ p = consume_comma(p); -+ p2 = p; -+ for (; *p && (isalnum(*p) || *p=='.' || *p=='-' || *p=='_' || *p=='/');p++); -+ tmp = xstrndup(p2, p-p2); -+ ae->acl = cyrus_acl_strtomask(tmp); -+ free(tmp); -+ -+ for (; *p && isspace(*p); p++); -+ if (*p) { -+ sprintf(errbuf, "junk at end of line: '%s'", p); -+ fatal(errbuf, EC_CONFIG); -+ } -+ -+ ae->set = annotation_set_todb; -+ ae->rock = NULL; -+ } -+ -+ fclose(f); -+ se->next = NULL; -+ me->next = NULL; -+} -+ - int annotatemore_store(char *mailbox, - struct entryattlist *l, - struct namespace *namespace, -@@ -1843,7 +2065,7 @@ int annotatemore_store(char *mailbox, - struct entryattlist *e = l; - struct attvaluelist *av; - struct storedata sdata; -- const struct annotate_st_entry *entries; -+ const struct annotate_st_entry_list *entries, *currententry; - time_t now = time(0); - - memset(&sdata, 0, sizeof(struct storedata)); -@@ -1854,45 +2076,45 @@ int annotatemore_store(char *mailbox, - - if (!mailbox[0]) { - /* server annotations */ -- entries = server_entries; -+ entries = server_entries_list; - } - else { - /* mailbox annotation(s) */ -- entries = mailbox_rw_entries; -+ entries = mailbox_rw_entries_list; - } - - /* Build a list of callbacks for storing the annotations */ - while (e) { -- int entrycount, attribs; -+ int attribs; - struct annotate_st_entry_list *nentry = NULL; - - /* See if we support this entry */ -- for (entrycount = 0; -- entries[entrycount].name; -- entrycount++) { -- if (!strcmp(e->entry, entries[entrycount].name)) { -+ for (currententry = entries; -+ currententry; -+ currententry = currententry->next) { -+ if (!strcmp(e->entry, currententry->entry->name)) { - break; - } - } -- if (!entries[entrycount].name) { -+ if (!currententry) { - /* unknown annotation */ - return IMAP_PERMISSION_DENIED; - } - - /* Add this entry to our list only if it - applies to our particular server type */ -- if ((entries[entrycount].proxytype != PROXY_ONLY) -+ if ((currententry->entry->proxytype != PROXY_ONLY) - || proxy_store_func) { - nentry = xzmalloc(sizeof(struct annotate_st_entry_list)); - nentry->next = sdata.entry_list; -- nentry->entry = &(entries[entrycount]); -+ nentry->entry = currententry->entry; - nentry->shared.modifiedsince = now; - nentry->priv.modifiedsince = now; - sdata.entry_list = nentry; - } - - /* See if we are allowed to set the given attributes. */ -- attribs = entries[entrycount].attribs; -+ attribs = currententry->entry->attribs; - av = e->attvalues; - while (av) { - const char *value; -@@ -1902,7 +2124,7 @@ int annotatemore_store(char *mailbox, - goto cleanup; - } - value = annotate_canon_value(av->value, -- entries[entrycount].type); -+ currententry->entry->type); - if (!value) { - r = IMAP_ANNOTATION_BADVALUE; - goto cleanup; -@@ -1928,7 +2150,7 @@ int annotatemore_store(char *mailbox, - goto cleanup; - } - value = annotate_canon_value(av->value, -- entries[entrycount].type); -+ currententry->entry->type); - if (!value) { - r = IMAP_ANNOTATION_BADVALUE; - goto cleanup; -@@ -2110,3 +2332,10 @@ int annotatemore_delete(const char *mbox - - return annotatemore_rename(mboxname, NULL, NULL, NULL); - } -+ -+/* This file contains code Copyright (c) 2006 by Thomas Viehmann. -+ * You may distribute source code or binaries under the conditions -+ * conditions given in the CMU license, provided this note stays intact -+ * in the distributed source. If you want to distribute my code without -+ * this notice, do contact me at . -+ */ -diff -r 321cda1d6136 lib/imapoptions ---- a/lib/imapoptions Tue Apr 22 10:44:56 2008 +0200 -+++ b/lib/imapoptions Tue Apr 22 10:47:04 2008 +0200 -@@ -172,6 +172,9 @@ are listed with ``''. - /* Should non-admin users be allowed to set ACLs for the 'anyone' - user on their mailboxes? In a large organization this can cause - support problems, but it's enabled by default. */ -+ -+{ "annotation_definitions", NULL, STRING } -+/* File containing annotation definitions. */ - - { "auth_mech", "unix", STRINGLIST("unix", "pts", "krb", "krb5")} - /* The authorization mechanism to use. */ diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/cyradm_annotations.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/cyradm_annotations.patch deleted file mode 100644 index 2167f7f..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/cyradm_annotations.patch +++ /dev/null @@ -1,83 +0,0 @@ -Allows to use arbitrary annotations with the cyradm tool. - -diff -r a07884e259c3 doc/man/cyradm.1.html ---- a/doc/man/cyradm.1.html Thu Oct 25 08:24:39 2007 +0200 -+++ b/doc/man/cyradm.1.html Thu Oct 25 08:29:40 2007 +0200 -@@ -241,6 +241,13 @@ The currently supported attributes are:< -
-

Sets an email address to which messages injected into the server via NNTP - will be sent.

-+
-+ -+
/explicit/annotation -+ -+
-+

Sets the annotation /explicit/annotation -+on mailbox to value.

-
- -
sharedseen -diff -r a07884e259c3 perl/imap/IMAP/Admin.pm ---- a/perl/imap/IMAP/Admin.pm Thu Oct 25 08:24:39 2007 +0200 -+++ b/perl/imap/IMAP/Admin.pm Thu Oct 25 08:29:40 2007 +0200 -@@ -796,11 +796,11 @@ sub mboxconfig { - return undef; - } - -- if(!exists($values{$entry})) { -- $self->{error} = "Unknown parameter $entry"; -- } -- -- $entry = $values{$entry}; -+ if(exists($values{$entry})) { -+ $entry = $values{$entry}; -+ } else { -+ $self->{error} = "Unknown parameter $entry" unless substr($entry,0,1) eq "/"; -+ } - - my ($rc, $msg); - -diff -r a07884e259c3 perl/imap/IMAP/Shell.pm ---- a/perl/imap/IMAP/Shell.pm Thu Oct 25 08:24:39 2007 +0200 -+++ b/perl/imap/IMAP/Shell.pm Thu Oct 25 08:29:40 2007 +0200 -@@ -126,7 +126,7 @@ my %builtins = (exit => - [\&_sc_info, '[mailbox]', - 'display mailbox/server metadata'], - mboxcfg => -- [\&_sc_mboxcfg, 'mailbox [comment|condstore|expire|news2mail|sharedseen|sieve|squat] value', -+ [\&_sc_mboxcfg, 'mailbox [comment|condstore|news2mail|expire|sieve|squat|/] value', - 'configure mailbox'], - mboxconfig => 'mboxcfg', - reconstruct => -@@ -1436,7 +1436,7 @@ sub _sc_mboxcfg { - while (defined ($opt = shift(@argv))) { - last if $opt eq '--'; - if ($opt =~ /^-/) { -- die "usage: mboxconfig mailbox [comment|condstore|expire|news2mail|sharedseen|sieve|squat] value\n"; -+ die "usage: mboxconfig mailbox [comment|condstore|expire|news2mail|sharedseen|sieve|squat|/] value\n"; - } - else { - push(@nargv, $opt); -@@ -1445,7 +1445,7 @@ sub _sc_mboxcfg { - } - push(@nargv, @argv); - if (@nargv < 2) { -- die "usage: mboxconfig mailbox [comment|condstore|expire|news2mail|sharedseen|sieve|squat] value\n"; -+ die "usage: mboxconfig mailbox [comment|condstore|expire|news2mail|sharedseen|sieve|squat|/] value\n"; - } - if (!$cyrref || !$$cyrref) { - die "mboxconfig: no connection to server\n"; -diff -r a07884e259c3 perl/imap/cyradm.sh ---- a/perl/imap/cyradm.sh Thu Oct 25 08:24:39 2007 +0200 -+++ b/perl/imap/cyradm.sh Thu Oct 25 08:29:40 2007 +0200 -@@ -241,6 +241,10 @@ mailboxes). - - Indicates that the mailbox should have a squat index created for it. - -+=item C -+ -+Sets the annotation I on I to I. -+ - =back - - =item C [C<--partition> I] I I diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/folder-names.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/folder-names.patch deleted file mode 100644 index df55a3c..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/folder-names.patch +++ /dev/null @@ -1,20 +0,0 @@ -Modifies the set of accepted characters in folder names for the cyrus imapd server [Version: 2.3.9] - -diff -r a83b43bb79a3 imap/mboxname.c ---- a/imap/mboxname.c Tue Dec 11 11:22:14 2007 +0100 -+++ b/imap/mboxname.c Tue Dec 11 11:22:22 2007 +0100 -@@ -712,8 +712,13 @@ int mboxname_netnewscheck(char *name) - /* - * Apply site policy restrictions on mailbox names. - * Restrictions are hardwired for now. -- */ -+ -+ * original definition - #define GOODCHARS " +,-.0123456789:=@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~" -+ */ -+ -+#define GOODCHARS " #$%'()*+,-.0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~" -+ - int mboxname_policycheck(char *name) - { - unsigned i; diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/groups.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/groups.patch deleted file mode 100644 index 9e987f5..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/groups.patch +++ /dev/null @@ -1,220 +0,0 @@ -Allows to use a file other than /etc/groups for group definitions within the cyrus imapd server [Version: 2.3.9] - -diff -r 5f6f7a246f32 lib/auth_unix.c ---- a/lib/auth_unix.c Tue Dec 11 11:20:37 2007 +0100 -+++ b/lib/auth_unix.c Tue Dec 11 11:22:01 2007 +0100 -@@ -48,12 +48,133 @@ - #include - #include - #include -+#include - #include - #include - - #include "auth.h" - #include "libcyr_cfg.h" - #include "xmalloc.h" -+ -+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) -+/* -+ * __getgrent.c - This file is part of the libc-8086/grp package for ELKS, -+ * Copyright (C) 1995, 1996 Nat Friedman . -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Library General Public -+ * License as published by the Free Software Foundation; either -+ * version 2 of the License, or (at your option) any later version. -+ * -+ * This library is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Library General Public License for more details. -+ * -+ * You should have received a copy of the GNU Library General Public -+ * License along with this library; if not, write to the Free -+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -+ * -+ */ -+ -+#include -+#include -+#include -+ -+static struct group *__getgrent(int grp_fd, char *line_buff, char **members) -+{ -+ short line_index; -+ short buff_size; -+ static struct group group; -+ register char *ptr; -+ char *field_begin; -+ short member_num; -+ char *endptr; -+ int line_len; -+ -+ /* We use the restart label to handle malformatted lines */ -+ restart: -+ line_index = 0; -+ buff_size = 256; -+ -+ line_buff = realloc(line_buff, buff_size); -+ while (1) { -+ if ((line_len = read(grp_fd, line_buff + line_index, -+ buff_size - line_index)) <= 0) { -+ return NULL; -+ } -+ field_begin = strchr(line_buff, '\n'); -+ if (field_begin != NULL) { -+ lseek(grp_fd, -+ (long) (1 + field_begin - -+ (line_len + line_index + line_buff)), SEEK_CUR); -+ *field_begin = '\0'; -+ if (*line_buff == '#' || *line_buff == ' ' -+ || *line_buff == '\n' || *line_buff == '\t') -+ goto restart; -+ break; -+ } else { -+ /* Allocate some more space */ -+ line_index = buff_size; -+ buff_size += 256; -+ line_buff = realloc(line_buff, buff_size); -+ } -+ } -+ -+ /* Now parse the line */ -+ group.gr_name = line_buff; -+ ptr = strchr(line_buff, ':'); -+ if (ptr == NULL) -+ goto restart; -+ *ptr++ = '\0'; -+ -+ group.gr_passwd = ptr; -+ ptr = strchr(ptr, ':'); -+ if (ptr == NULL) -+ goto restart; -+ *ptr++ = '\0'; -+ -+ field_begin = ptr; -+ ptr = strchr(ptr, ':'); -+ if (ptr == NULL) -+ goto restart; -+ *ptr++ = '\0'; -+ -+ group.gr_gid = (gid_t) strtoul(field_begin, &endptr, 10); -+ if (*endptr != '\0') -+ goto restart; -+ -+ member_num = 0; -+ field_begin = ptr; -+ -+ if (members != NULL) -+ free(members); -+ members = (char **) malloc((member_num + 1) * sizeof(char *)); -+ for ( ; field_begin && *field_begin != '\0'; field_begin = ptr) { -+ if ((ptr = strchr(field_begin, ',')) != NULL) -+ *ptr++ = '\0'; -+ members[member_num++] = field_begin; -+ members = (char **) realloc(members, -+ (member_num + 1) * sizeof(char *)); -+ } -+ members[member_num] = NULL; -+ -+ group.gr_mem = members; -+ return &group; -+} -+ -+static char *line_buff = NULL; -+static char **members = NULL; -+ -+struct group *fgetgrent(FILE *file) -+{ -+ if (file == NULL) { -+ errno = EINTR; -+ return NULL; -+ } -+ return __getgrent(fileno(file), line_buff, members); -+} -+#endif /* __FreeBSD__ */ - - struct auth_state { - char userid[81]; -@@ -142,6 +263,25 @@ static char allowedchars[256] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - -+static struct group* fgetgrnam(const char* name) -+{ -+ struct group *grp; -+ FILE *groupfile; -+ -+ groupfile = fopen("/etc/imapd.group", "r"); -+ if (!groupfile) groupfile = fopen("/etc/group", "r"); -+ if (groupfile) { -+ while ((grp = fgetgrent(groupfile))) { -+ if (strcasecmp(grp->gr_name, name) == 0) { -+ fclose(groupfile); -+ return grp; -+ } -+ } -+ } -+ if (groupfile) fclose(groupfile); -+ return NULL; -+} -+ - /* - * Convert 'identifier' into canonical form. - * Returns a pointer to a static buffer containing the canonical form -@@ -177,7 +317,7 @@ size_t len; - */ - - if (!strncmp(retbuf, "group:", 6)) { -- grp = getgrnam(retbuf+6); -+ grp = fgetgrnam(retbuf+6); - if (!grp) return 0; - strcpy(retbuf+6, grp->gr_name); - return retbuf; -@@ -228,6 +368,7 @@ static struct auth_state *mynewstate(con - int ret, ngroups = 10; - #else - char **mem; -+ FILE *groupfile; - #endif - - identifier = mycanonifyid(identifier, 0); -@@ -283,20 +424,23 @@ err: - if (groupids) free(groupids); - - #else /* !HAVE_GETGROUPLIST */ -- setgrent(); -- while ((grp = getgrent())) { -- for (mem = grp->gr_mem; *mem; mem++) { -- if (!strcmp(*mem, identifier)) break; -- } -- -- if (*mem || (pwd && pwd->pw_gid == grp->gr_gid)) { -- newstate->ngroups++; -- newstate->group = (char **)xrealloc((char *)newstate->group, -- newstate->ngroups * sizeof(char *)); -- newstate->group[newstate->ngroups-1] = xstrdup(grp->gr_name); -- } -- } -- endgrent(); -+ groupfile = fopen("/etc/imapd.group", "r"); -+ if (!groupfile) groupfile = fopen("/etc/group", "r"); -+ if (groupfile) { -+ while ((grp = fgetgrent(groupfile))) { -+ for (mem = grp->gr_mem; *mem; mem++) { -+ if (!strcasecmp(*mem, identifier)) break; -+ } -+ -+ if (*mem || (pwd && pwd->pw_gid == grp->gr_gid)) { -+ newstate->ngroups++; -+ newstate->group = (char **)xrealloc((char *)newstate->group, -+ newstate->ngroups * sizeof(char *)); -+ newstate->group[newstate->ngroups-1] = xstrdup(grp->gr_name); -+ } -+ } -+ fclose(groupfile); -+ } - #endif /* HAVE_GETGROUPLIST */ - - return newstate; diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/logging.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/logging.patch deleted file mode 100644 index c0bd2fa..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/logging.patch +++ /dev/null @@ -1,58 +0,0 @@ -Provides improved logging for the cyrus imapd server [Version: 2.3.9] - -diff -r 6162fc947b22 imap/append.c ---- a/imap/append.c Tue Dec 11 11:22:03 2007 +0100 -+++ b/imap/append.c Tue Dec 11 11:22:13 2007 +0100 -@@ -648,6 +648,9 @@ int append_fromstage(struct appendstate - - /* ok, we've successfully added a message */ - as->quota_used += message_index.size; -+ -+ syslog(LOG_DEBUG, "append_fromstage: message %d added to %s", -+ message_index.uid, mailbox->name ); - - return 0; - } -diff -r 6162fc947b22 imap/imapd.c ---- a/imap/imapd.c Tue Dec 11 11:22:03 2007 +0100 -+++ b/imap/imapd.c Tue Dec 11 11:22:13 2007 +0100 -@@ -3509,17 +3509,19 @@ void cmd_close(char *tag) - if (!r) sync_log_mailbox(imapd_mailbox->name); - } - -+ if (r) { -+ prot_printf(imapd_out, "%s NO %s\r\n", tag, error_message(r)); -+ } -+ else { -+ prot_printf(imapd_out, "%s OK %s\r\n", tag, -+ error_message(IMAP_OK_COMPLETED)); -+ syslog(LOG_DEBUG, "cmd_expunge: user %s, mailbox %s, sequence %s", -+ imapd_userid, imapd_mailbox->name, "''"); -+ } -+ - index_closemailbox(imapd_mailbox); - mailbox_close(imapd_mailbox); - imapd_mailbox = 0; -- -- if (r) { -- prot_printf(imapd_out, "%s NO %s\r\n", tag, error_message(r)); -- } -- else { -- prot_printf(imapd_out, "%s OK %s\r\n", tag, -- error_message(IMAP_OK_COMPLETED)); -- } - } - - /* -diff -r 6162fc947b22 imap/mailbox.c ---- a/imap/mailbox.c Tue Dec 11 11:22:03 2007 +0100 -+++ b/imap/mailbox.c Tue Dec 11 11:22:13 2007 +0100 -@@ -2520,6 +2520,8 @@ int mailbox_expunge(struct mailbox *mail - *(fname->tail)++ = '/'; - fname->len++; - for (msgno = 0; msgno < numdeleted; msgno++) { -+ syslog(LOG_DEBUG, "mailbox_expunge: removing mail %s:%d", -+ mailbox->name, deleted[msgno]); - mailbox_message_get_fname(mailbox, deleted[msgno], - fname->tail, - sizeof(fname->buf) - fname->len); diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/timsieved_starttls-sendcaps.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/timsieved_starttls-sendcaps.patch deleted file mode 100644 index 48524e9..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/timsieved_starttls-sendcaps.patch +++ /dev/null @@ -1,19 +0,0 @@ -This patch was downloaded from https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/cyrus/timsieved/parser.c.diff?r1=1.44;r2=1.45 -(minus the CVS keywords) - -It should be reverse-applied with patch -p2 -R to work around the kontact -behaviour described in kolab/issue2443 (kontact aborts sieve when imapd sends -capabilities after starttls) and can be dropped as soon as kontact has a way -to work with old and new cyrus imapd servers. - ---- a/timsieved/parser.c 2007/11/26 20:23:06 1.44 -+++ b/timsieved/parser.c 2007/12/10 14:47:08 1.45 -@@ -861,7 +861,7 @@ static int cmd_starttls(struct protstrea - - starttls_done = 1; - -- return capabilities(sieved_out, sieved_saslconn, starttls_done, authenticated); -+ return result; - } - #else - static int cmd_starttls(struct protstream *sieved_out, struct protstream *sieved_in) diff --git a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/uid.patch b/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/uid.patch deleted file mode 100644 index a044463..0000000 --- a/net-mail/cyrus-imapd/files/kolab/2.3.12_p2/uid.patch +++ /dev/null @@ -1,115 +0,0 @@ -Allows login by uid rather than the mail address on the cyrus imapd server [Version: 2.3.9] - -diff -r d62bf3b0902d configure ---- a/configure Thu Oct 25 08:30:57 2007 +0200 -+++ b/configure Thu Oct 25 08:31:06 2007 +0200 -@@ -18119,7 +18119,7 @@ done - done - - IMAP_COM_ERR_LIBS="${COM_ERR_LIBS}" --IMAP_LIBS="${LIB_SASL} ${LIBS}" -+IMAP_LIBS="${LIB_SASL} -lldap -llber ${LIBS}" - - - -diff -r d62bf3b0902d imap/global.c ---- a/imap/global.c Thu Oct 25 08:30:57 2007 +0200 -+++ b/imap/global.c Thu Oct 25 08:31:06 2007 +0200 -@@ -52,6 +52,9 @@ - #include - #include - -+#include -+#include -+ - #if HAVE_UNISTD_H - # include - #endif -@@ -362,6 +365,18 @@ char *canonify_userid(char *user, char * - char *domain = NULL; - int len = strlen(user); - char buf[81]; -+ const char *uri; -+ const char *base; -+ const char *binddn; -+ const char *bindpw; -+ struct timeval timeout; -+ char filter[255]; -+ LDAP *handle; -+ LDAPMessage *res; -+ LDAPMessage *entry; -+ char ** vals; -+ -+ int rc; - - /* check for domain */ - if (config_virtdomains && -@@ -380,6 +395,47 @@ char *canonify_userid(char *user, char * - } - - if (config_virtdomains) { -+ if (config_virtdomains == IMAP_ENUM_VIRTDOMAINS_LDAP) { -+ uri = config_getstring(IMAPOPT_LDAP_URI); -+ base = config_getstring(IMAPOPT_LDAP_BASE); -+ binddn = config_getstring(IMAPOPT_LDAP_BIND_DN); -+ bindpw = config_getstring(IMAPOPT_LDAP_PASSWORD); -+ timeout.tv_sec = config_getint(IMAPOPT_LDAP_TIME_LIMIT); -+ timeout.tv_usec = 0; -+ sprintf(filter, "(uid=%s)", user); -+ rc = ldap_initialize(&handle, uri); -+ if (rc != LDAP_SUCCESS) { -+ syslog(LOG_ERR, "ldap_initialize failed (%s)", uri); -+ } else { -+ rc = ldap_simple_bind_s(handle, binddn, bindpw); -+ if (rc != LDAP_SUCCESS) { -+ syslog(LOG_ERR, "ldap_simple_bind() failed %d (%s)", rc, ldap_err2string(rc)); -+ } else { -+ rc = ldap_search_st(handle, base, LDAP_SCOPE_SUBTREE, filter, NULL, 0, &timeout, &res); -+ if (rc != LDAP_SUCCESS) { -+ syslog(LOG_ERR, "ldap_search_st failed %d (%s)", rc, ldap_err2string(rc)); -+ } else { -+ if ( (entry = ldap_first_entry(handle, res)) != NULL ) { -+ // read mail attribute from entry -+ if ( (vals = ldap_get_values(handle, entry, "mail")) ) { -+ if (strchr(vals[0], '@')) { -+ static char buf[81]; /* same size as in auth_canonifyid */ -+ strncpy( buf, vals[0], sizeof(buf) ); -+ buf[80] = '\0'; /* make sure it's null-terminated */ -+ ldap_value_free( vals ); -+ ldap_msgfree( res ); -+ ldap_unbind_s(handle); /* also frees handle */ -+ return auth_canonifyid( buf, 0) ; -+ } -+ ldap_value_free( vals ); -+ } -+ } -+ ldap_msgfree( res ); -+ } -+ } -+ ldap_unbind_s(handle); /* also frees handle */ -+ } -+ } - if (domain) { - if (config_defdomain && !strcasecmp(config_defdomain, domain+1)) { - *domain = '\0'; /* trim the default domain */ -@@ -392,7 +448,7 @@ char *canonify_userid(char *user, char * - user = buf; - } - } -- else if (config_virtdomains != IMAP_ENUM_VIRTDOMAINS_USERID) { -+ else if (config_virtdomains != IMAP_ENUM_VIRTDOMAINS_USERID && config_virtdomains != IMAP_ENUM_VIRTDOMAINS_LDAP) { - socklen_t salen; - int error; - struct sockaddr_storage localaddr; -diff -r d62bf3b0902d lib/imapoptions ---- a/lib/imapoptions Thu Oct 25 08:30:57 2007 +0200 -+++ b/lib/imapoptions Thu Oct 25 08:31:06 2007 +0200 -@@ -1034,7 +1034,7 @@ are listed with ``''. - mailbox hierarchy. The default is to use the netnews separator - character '.'. */ - --{ "virtdomains", "off", ENUM("off", "userid", "on") } -+{ "virtdomains", "off", ENUM("off", "userid", "ldap", "on") } - /* Enable virtual domain support. If enabled, the user's domain will - be determined by splitting a fully qualified userid at the last '@' - or '%' symbol. If the userid is unqualified, and the virtdomains diff --git a/net-mail/cyrus-imapd/metadata.xml b/net-mail/cyrus-imapd/metadata.xml deleted file mode 100644 index 0feff24..0000000 --- a/net-mail/cyrus-imapd/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - dertobi123@gentoo.org - -net-mail - -- cgit v1.2.3-65-gdbad