summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGunnar Wrobel <wrobel@gentoo.org>2008-04-18 12:44:51 +0000
committerGunnar Wrobel <wrobel@gentoo.org>2008-04-18 12:44:51 +0000
commit484276d3dc8e3dcd0ccc3b72e4ffac45000f619d (patch)
treec0cc3d51622a0a44fed427a0ccca40df7595351b /net-mail
parentAdded metadata. (diff)
downloadkolab-484276d3dc8e3dcd0ccc3b72e4ffac45000f619d.tar.gz
kolab-484276d3dc8e3dcd0ccc3b72e4ffac45000f619d.tar.bz2
kolab-484276d3dc8e3dcd0ccc3b72e4ffac45000f619d.zip
Fixed some issues in the cyrus-imap-2.3.9 ebuild, added 2.3.11
svn path=/overlay/; revision=2818
Diffstat (limited to 'net-mail')
-rw-r--r--net-mail/cyrus-imapd/ChangeLog22
-rw-r--r--net-mail/cyrus-imapd/Manifest119
-rw-r--r--net-mail/cyrus-imapd/cyrus-imapd-2.3.11-r20.ebuild (renamed from net-mail/cyrus-imapd/cyrus-imapd-2.3.8-r20.ebuild)95
-rw-r--r--net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r21.ebuild (renamed from net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r20.ebuild)29
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.2-db45.patch29
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Annotations2.patch359
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Folder-names.patch (renamed from net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-goodchars.patch)10
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Groups.patch (renamed from net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group.patch)45
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Logging.patch58
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_UID.patch (renamed from net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-kolab.patch)53
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch19
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch46
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-annotate.patch113
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group2.patch20
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-morelogging.patch37
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-pts.patch21
-rw-r--r--net-mail/cyrus-imapd/files/cyrus-imapd-unsupported-8bit.patch79
17 files changed, 617 insertions, 537 deletions
diff --git a/net-mail/cyrus-imapd/ChangeLog b/net-mail/cyrus-imapd/ChangeLog
index e5951b4..7bcd728 100644
--- a/net-mail/cyrus-imapd/ChangeLog
+++ b/net-mail/cyrus-imapd/ChangeLog
@@ -1,7 +1,27 @@
# ChangeLog for net-mail/cyrus-imapd
-# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 18 Apr 2008; wrobel@gentoo.org -files/cyrus-imapd-2.2-db45.patch,
+ -files/cyrus-imapd-2.3.8-annotate.patch,
+ -files/cyrus-imapd-2.3.8-goodchars.patch,
+ -files/cyrus-imapd-2.3.8-group.patch,
+ -files/cyrus-imapd-2.3.8-group2.patch,
+ -files/cyrus-imapd-2.3.8-kolab.patch,
+ -files/cyrus-imapd-2.3.8-morelogging.patch,
+ -files/cyrus-imapd-2.3.8-pts.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_Annotations2.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_Folder-names.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_Groups.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_Logging.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_UID.patch,
+ +files/cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch,
+ +files/cyrus-imapd-2.3.11-drac_with_autocreate.patch,
+ -files/cyrus-imapd-unsupported-8bit.patch, ++,
+ -cyrus-imapd-2.3.8-r20.ebuild, -cyrus-imapd-2.3.9-r20.ebuild,
+ +cyrus-imapd-2.3.11-r20.ebuild:
+ Fixed some issues in the cyrus-imap-2.3.9 ebuild, added 2.3.11
+
15 Oct 2007; Gunnar Wrobel <wrobel@gentoo.org>
files/cyrus-imapd-2.3.9-KOLAB_UID.patch, cyrus-imapd-2.3.9-r20.ebuild:
Fixed the UID patch and an associated build problem.
diff --git a/net-mail/cyrus-imapd/Manifest b/net-mail/cyrus-imapd/Manifest
index e71396d..3c89ef2 100644
--- a/net-mail/cyrus-imapd/Manifest
+++ b/net-mail/cyrus-imapd/Manifest
@@ -1,126 +1,31 @@
-AUX cyrus-imapd-2.2-db45.patch 1283 RMD160 e3925988a6c628eb5567aa482351bb6a8ab01113 SHA1 b074166f6092ee58db685038c45382f77479bdb1 SHA256 4d814546280b83cf420855faf067ac95d36818be8b2a9ad9973805f261c1d90e
-MD5 94e33770741d5309d51ba7f4edbe1fc5 files/cyrus-imapd-2.2-db45.patch 1283
-RMD160 e3925988a6c628eb5567aa482351bb6a8ab01113 files/cyrus-imapd-2.2-db45.patch 1283
-SHA256 4d814546280b83cf420855faf067ac95d36818be8b2a9ad9973805f261c1d90e files/cyrus-imapd-2.2-db45.patch 1283
AUX cyrus-imapd-2.2-libwrap.patch 390 RMD160 4ed2b14f549ccfab487cff66e5f2cb8ebdd39427 SHA1 0075421585a73f2673e3daff9a4c140d9cc5046e SHA256 2bddad2045130090ea23f5ad65d797cfa1f6083446bd00411cb1540cb56d4e0e
-MD5 88f50354abbcae1950a2d11c74db5fe5 files/cyrus-imapd-2.2-libwrap.patch 390
-RMD160 4ed2b14f549ccfab487cff66e5f2cb8ebdd39427 files/cyrus-imapd-2.2-libwrap.patch 390
-SHA256 2bddad2045130090ea23f5ad65d797cfa1f6083446bd00411cb1540cb56d4e0e files/cyrus-imapd-2.2-libwrap.patch 390
-AUX cyrus-imapd-2.3.8-annotate.patch 3670 RMD160 bbbad32a7f0719abbc1c0fbc2077e560454d4760 SHA1 fabbd42e5a37cadbd71be38892fb09ec3786922e SHA256 15427284daf6e0f249a9b667c8da315947127b1b5b7519cafd7d4f902084efa5
-MD5 740ca9d2e5e6f36c979386ede5dcd426 files/cyrus-imapd-2.3.8-annotate.patch 3670
-RMD160 bbbad32a7f0719abbc1c0fbc2077e560454d4760 files/cyrus-imapd-2.3.8-annotate.patch 3670
-SHA256 15427284daf6e0f249a9b667c8da315947127b1b5b7519cafd7d4f902084efa5 files/cyrus-imapd-2.3.8-annotate.patch 3670
+AUX cyrus-imapd-2.3.11-KOLAB_Annotations2.patch 11103 RMD160 0e7cfceff69e6c0df9117a1e93db0fd2afd694e3 SHA1 b21388e96b1073a90af98d8b9b4dae92eefe0687 SHA256 c3505f0e719bf297e0c698574ba24f5e98e2e55b600a0a92555f8f5744a96c47
+AUX cyrus-imapd-2.3.11-KOLAB_Folder-names.patch 705 RMD160 e1ae9477464e0fb7a9e22a362008771792bc659b SHA1 f30649fe5f3ed2cbc8d803b8ab76c5bde56f90c5 SHA256 9e9404695adc32c3042c490409e1494167421dbbfd726b98e90e0013ac6084cf
+AUX cyrus-imapd-2.3.11-KOLAB_Groups.patch 6561 RMD160 fc3d6cc483b39f7bc3c35916f7c75c92fb7aa27d SHA1 2d09dd07bd6ee6b37f71f56c11a1a51c61778822 SHA256 ffde107a869e1cc6935fff82872dbc6997bd8bc286d369f348f561d3ebbd0c24
+AUX cyrus-imapd-2.3.11-KOLAB_Logging.patch 1880 RMD160 a69ccc5fba3e200c5cf4bd91c22b5a7e9713038e SHA1 79ddbb6b9af2f0c93b8f9ee732ca2639c9567943 SHA256 76a4eb6cd59564f55bb541a35b4e7f5fbd8beabf8072580c0bc514d710c3879b
+AUX cyrus-imapd-2.3.11-KOLAB_UID.patch 4255 RMD160 94e8a37bb7631d1a7ea53d7575df3898065cfcd4 SHA1 3a3a5e190c67bf4618031ff5bff4d395cf324532 SHA256 ad33f589898d166b15292ca7adf9d6b60cf4af57f9ec33428e03616ccdf70c17
+AUX cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch 824 RMD160 c07359f3c3c4b922bbddc9e717a1ec9b0de10c03 SHA1 05de31018a0ac1a7fce78d3a63b0c6c2e3adc9f1 SHA256 3249a502fe49df37f89133effd0f6a125d826ae425faa7e32e09a3279a1ad4b6
+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
-MD5 687f311749b0a998d7cf832aa451fbf5 files/cyrus-imapd-2.3.8-drac_with_autocreate.patch 2378
-RMD160 a545ffbf21e7d14897d177b2866bc5df9df3130f files/cyrus-imapd-2.3.8-drac_with_autocreate.patch 2378
-SHA256 f55235912bcec09c91270dfeb9f2846300f70c22eef945781e77473ea7013aa6 files/cyrus-imapd-2.3.8-drac_with_autocreate.patch 2378
-AUX cyrus-imapd-2.3.8-goodchars.patch 673 RMD160 bf9744dba26de16347bc2adbeecc2482d5dadb5f SHA1 e80ac22c75bc7f47d725b0bed097f55be133a57e SHA256 3c15e05790ee4eda90c64323fc57b5b7440f0eb91b8e9f3d4bd188d4b170c40a
-MD5 33fb4b5ee3e24f2d862b64ad6313f01c files/cyrus-imapd-2.3.8-goodchars.patch 673
-RMD160 bf9744dba26de16347bc2adbeecc2482d5dadb5f files/cyrus-imapd-2.3.8-goodchars.patch 673
-SHA256 3c15e05790ee4eda90c64323fc57b5b7440f0eb91b8e9f3d4bd188d4b170c40a files/cyrus-imapd-2.3.8-goodchars.patch 673
-AUX cyrus-imapd-2.3.8-group.patch 6383 RMD160 b0cb0b374bd6bf665a511e6a42aab126ec156664 SHA1 15eef7d7bd7297b5e3137c1087239c6cf6652652 SHA256 a3ceadf826653398957c2f6c3aadfd5596a383d72d34aa306ac13345df2ebd17
-MD5 c8b28d7a37c764486476ff465c8fb5b9 files/cyrus-imapd-2.3.8-group.patch 6383
-RMD160 b0cb0b374bd6bf665a511e6a42aab126ec156664 files/cyrus-imapd-2.3.8-group.patch 6383
-SHA256 a3ceadf826653398957c2f6c3aadfd5596a383d72d34aa306ac13345df2ebd17 files/cyrus-imapd-2.3.8-group.patch 6383
-AUX cyrus-imapd-2.3.8-group2.patch 862 RMD160 dc9ba78f39e3ecbd21aa7976b6d1c685725c29ab SHA1 99d48ffb7790bb5191442399923ae0b277932661 SHA256 971be6543ad1ed3a4ab9630d3da18f8b788b6a87fe2e05d021ce1707b6da7cda
-MD5 8ce4209247da2ae7125faf03949ff124 files/cyrus-imapd-2.3.8-group2.patch 862
-RMD160 dc9ba78f39e3ecbd21aa7976b6d1c685725c29ab files/cyrus-imapd-2.3.8-group2.patch 862
-SHA256 971be6543ad1ed3a4ab9630d3da18f8b788b6a87fe2e05d021ce1707b6da7cda files/cyrus-imapd-2.3.8-group2.patch 862
-AUX cyrus-imapd-2.3.8-kolab.patch 5970 RMD160 69482fac097e7670006ae5ce0a7b70f658b490d3 SHA1 64132014a3cde1c892547a4e24dd8dc5b603c389 SHA256 90d86c28520be906775ca9683f04d271ec168b557a14c72c22e11ab7115e7865
-MD5 15017e38e4c07d6884a5bccf17bef561 files/cyrus-imapd-2.3.8-kolab.patch 5970
-RMD160 69482fac097e7670006ae5ce0a7b70f658b490d3 files/cyrus-imapd-2.3.8-kolab.patch 5970
-SHA256 90d86c28520be906775ca9683f04d271ec168b557a14c72c22e11ab7115e7865 files/cyrus-imapd-2.3.8-kolab.patch 5970
-AUX cyrus-imapd-2.3.8-morelogging.patch 1531 RMD160 a725eda77b7a6cde2d3901647bdf12946b94d179 SHA1 d338100113fbf33fc79b03a5034e0ae9c071858f SHA256 43e595f1a5fa2255f632fbb563652950ad9130d4d259ef4a3a0a2db1c9884329
-MD5 b988a7d8ca09c93bb5189c41ddc943d0 files/cyrus-imapd-2.3.8-morelogging.patch 1531
-RMD160 a725eda77b7a6cde2d3901647bdf12946b94d179 files/cyrus-imapd-2.3.8-morelogging.patch 1531
-SHA256 43e595f1a5fa2255f632fbb563652950ad9130d4d259ef4a3a0a2db1c9884329 files/cyrus-imapd-2.3.8-morelogging.patch 1531
AUX cyrus-imapd-2.3.8-openpkg.patch 3116 RMD160 bb2e793d670955cd44aaf73a2f507fb9c2cd7668 SHA1 60a9e2583e5f1deb0fc07a480589c37347599cb8 SHA256 95b6d310ac975497880f359379caafe925b82e764079a109d2701d8c223d7716
-MD5 a430a5980fe89e08210b1e3082d8fbe0 files/cyrus-imapd-2.3.8-openpkg.patch 3116
-RMD160 bb2e793d670955cd44aaf73a2f507fb9c2cd7668 files/cyrus-imapd-2.3.8-openpkg.patch 3116
-SHA256 95b6d310ac975497880f359379caafe925b82e764079a109d2701d8c223d7716 files/cyrus-imapd-2.3.8-openpkg.patch 3116
-AUX cyrus-imapd-2.3.8-pts.patch 632 RMD160 1efbbdb925fae4c6d330022cd4e3530be054c4b2 SHA1 4e99d9c68138bee4f25a8fbda29835a09e32f9d5 SHA256 6c95ec45eba762a3240cc7836c563bca98d2b9a6bdfc6b0912516c58d9e5c20f
-MD5 31bd5ec70884c610a5385ec1407f858e files/cyrus-imapd-2.3.8-pts.patch 632
-RMD160 1efbbdb925fae4c6d330022cd4e3530be054c4b2 files/cyrus-imapd-2.3.8-pts.patch 632
-SHA256 6c95ec45eba762a3240cc7836c563bca98d2b9a6bdfc6b0912516c58d9e5c20f files/cyrus-imapd-2.3.8-pts.patch 632
AUX cyrus-imapd-2.3.9-KOLAB_Annotations2.patch 11103 RMD160 f40bcb3ff72a2eb00066c37fdd5bc972f4bcda5d SHA1 4cb8ac4912aaaa0bc2f11c562a1f571f0ac1fde8 SHA256 7f7f219634e29ae7085eecc1551b95c61b036a8d0a4e8a964c9f3d8099a60ee0
-MD5 4deca7499430a74eefb7cb0283a4d76a files/cyrus-imapd-2.3.9-KOLAB_Annotations2.patch 11103
-RMD160 f40bcb3ff72a2eb00066c37fdd5bc972f4bcda5d files/cyrus-imapd-2.3.9-KOLAB_Annotations2.patch 11103
-SHA256 7f7f219634e29ae7085eecc1551b95c61b036a8d0a4e8a964c9f3d8099a60ee0 files/cyrus-imapd-2.3.9-KOLAB_Annotations2.patch 11103
AUX cyrus-imapd-2.3.9-KOLAB_Folder-names.patch 705 RMD160 bc22ad486915c11346c97c289372d0e6f6f4ee35 SHA1 448b3cb0b41af4f5e8a7caf4e28ac86eca17edd9 SHA256 efa0ae8d88540706547721f316d474d7db9989e8ac42549bc60a4b404ef5b215
-MD5 de551f54425d00ae545ee21bc1a041cf files/cyrus-imapd-2.3.9-KOLAB_Folder-names.patch 705
-RMD160 bc22ad486915c11346c97c289372d0e6f6f4ee35 files/cyrus-imapd-2.3.9-KOLAB_Folder-names.patch 705
-SHA256 efa0ae8d88540706547721f316d474d7db9989e8ac42549bc60a4b404ef5b215 files/cyrus-imapd-2.3.9-KOLAB_Folder-names.patch 705
AUX cyrus-imapd-2.3.9-KOLAB_Groups.patch 6522 RMD160 0eb3f333a59e0686721e2cff5859e48c635e4d3c SHA1 c22a48acb6217d30245066938d2c6ef66f71fd75 SHA256 e7bafa307f2c9334c68e8f71a3281670fea4249392f3c167b8ededc7db7520ea
-MD5 c8e2f06f63ae8e2dd94bd5af5abb251e files/cyrus-imapd-2.3.9-KOLAB_Groups.patch 6522
-RMD160 0eb3f333a59e0686721e2cff5859e48c635e4d3c files/cyrus-imapd-2.3.9-KOLAB_Groups.patch 6522
-SHA256 e7bafa307f2c9334c68e8f71a3281670fea4249392f3c167b8ededc7db7520ea files/cyrus-imapd-2.3.9-KOLAB_Groups.patch 6522
AUX cyrus-imapd-2.3.9-KOLAB_Logging.patch 1880 RMD160 bb68a301ce4bad6307097072eac1e4a7dffaf02c SHA1 9f6e19aa16f24080a9ec5ecf889fd891b72af007 SHA256 0a28057958b184fd2570de1b447422c6cb117edc78fdbb2820bd7ff31a7e8126
-MD5 a212358ff88eb3e923d3f4d85fa53e1c files/cyrus-imapd-2.3.9-KOLAB_Logging.patch 1880
-RMD160 bb68a301ce4bad6307097072eac1e4a7dffaf02c files/cyrus-imapd-2.3.9-KOLAB_Logging.patch 1880
-SHA256 0a28057958b184fd2570de1b447422c6cb117edc78fdbb2820bd7ff31a7e8126 files/cyrus-imapd-2.3.9-KOLAB_Logging.patch 1880
AUX cyrus-imapd-2.3.9-KOLAB_UID.patch 4255 RMD160 37aa72288ef11bdfc0bcfb7255f0afcafb2f28fc SHA1 af1b33071b84bc083bd5abab16aa32d9731c3ec4 SHA256 07c49c145be08b5b5b785bb03a2e5bf6aa4b6f2cd24937480d0c8d04d85b19c9
-MD5 935f5ad7e85db69aebde12dd961aeae8 files/cyrus-imapd-2.3.9-KOLAB_UID.patch 4255
-RMD160 37aa72288ef11bdfc0bcfb7255f0afcafb2f28fc files/cyrus-imapd-2.3.9-KOLAB_UID.patch 4255
-SHA256 07c49c145be08b5b5b785bb03a2e5bf6aa4b6f2cd24937480d0c8d04d85b19c9 files/cyrus-imapd-2.3.9-KOLAB_UID.patch 4255
AUX cyrus-imapd-parallel.patch 256 RMD160 fa7c53c847c4af9a7c218943be46b136b69f911c SHA1 8f4a7cbf91652354681e81e5c31f53728273a1c9 SHA256 adc6d031f2e9f547b192b36685d7873fdb5c5cb690e951b173fdcd55163cc68c
-MD5 9e059d45972ef25f2c05753867aa54c5 files/cyrus-imapd-parallel.patch 256
-RMD160 fa7c53c847c4af9a7c218943be46b136b69f911c files/cyrus-imapd-parallel.patch 256
-SHA256 adc6d031f2e9f547b192b36685d7873fdb5c5cb690e951b173fdcd55163cc68c files/cyrus-imapd-parallel.patch 256
AUX cyrus-imapd-strip.patch 527 RMD160 83dda22c91798715c7790c3964705b60edeab904 SHA1 624635c7a3dd17e0d3ed84c2c7b07fe042d54cc0 SHA256 4edf438766a291c18847efbcf0596e5c7fc848a1c04b851b20074a195c1b2f18
-MD5 39e967597f06873c10a001c7316743de files/cyrus-imapd-strip.patch 527
-RMD160 83dda22c91798715c7790c3964705b60edeab904 files/cyrus-imapd-strip.patch 527
-SHA256 4edf438766a291c18847efbcf0596e5c7fc848a1c04b851b20074a195c1b2f18 files/cyrus-imapd-strip.patch 527
-AUX cyrus-imapd-unsupported-8bit.patch 3342 RMD160 b175b6799723c54110880ad93a4ee2795b40f69e SHA1 87303ffa37dd3e48e1a8133ffda87c6e7db6ea6e SHA256 e44ad27b5acf20a9bce95815d5fa25f040eb06870feb87cddf59204f1d8a2867
-MD5 e76f31d728a283bf2dd2fb5b5a853af8 files/cyrus-imapd-unsupported-8bit.patch 3342
-RMD160 b175b6799723c54110880ad93a4ee2795b40f69e files/cyrus-imapd-unsupported-8bit.patch 3342
-SHA256 e44ad27b5acf20a9bce95815d5fa25f040eb06870feb87cddf59204f1d8a2867 files/cyrus-imapd-unsupported-8bit.patch 3342
AUX cyrus.conf 1354 RMD160 b2d6f470b7097036a5c64bc59f147f78fdbc16d5 SHA1 efc4d14807391be53018a81c4f4277cd8d6ce5f8 SHA256 23189674bb5c2f021f35027cfe22cfe56e022ce5e03da67f5c4913473bec1292
-MD5 d91b5eaa87ced6cb7efc8c716fc7476a files/cyrus.conf 1354
-RMD160 b2d6f470b7097036a5c64bc59f147f78fdbc16d5 files/cyrus.conf 1354
-SHA256 23189674bb5c2f021f35027cfe22cfe56e022ce5e03da67f5c4913473bec1292 files/cyrus.conf 1354
AUX cyrus.confd 279 RMD160 da79ff4128869a045b432abc9cea6667b65ee69a SHA1 6d2d3417b678c77336a4b89db3507314302fe4eb SHA256 3e786c28ffc44a222214b22d8849728360edc37f4b3f7d7c1473a23ab58c28a9
-MD5 08017debe8d02c695ec456e1165d920d files/cyrus.confd 279
-RMD160 da79ff4128869a045b432abc9cea6667b65ee69a files/cyrus.confd 279
-SHA256 3e786c28ffc44a222214b22d8849728360edc37f4b3f7d7c1473a23ab58c28a9 files/cyrus.confd 279
AUX cyrus.pam-include 109 RMD160 24f82d0496f0ff94f9c1ee4cef14124909d361e5 SHA1 1a13c82008b6d59bb9236a8162c75f8d24d6c4ba SHA256 d4ef9ed9c7c9add97df75f0e19a833bee872d3863a2b3cb1d0674fefba54e3d8
-MD5 b8da82b13f99b84321a976a8f41d2a49 files/cyrus.pam-include 109
-RMD160 24f82d0496f0ff94f9c1ee4cef14124909d361e5 files/cyrus.pam-include 109
-SHA256 d4ef9ed9c7c9add97df75f0e19a833bee872d3863a2b3cb1d0674fefba54e3d8 files/cyrus.pam-include 109
AUX cyrus.rc6 573 RMD160 1ca59773442962d47cf1c9899730410e168b563f SHA1 26d52c17d76948589bed7b8d82c1f8570d141672 SHA256 c5534ef121f1c509f0005846b10df12f32e11c282656bf48699c2b457a40e187
-MD5 756c504a8b0b90aaa0630c089ae42f50 files/cyrus.rc6 573
-RMD160 1ca59773442962d47cf1c9899730410e168b563f files/cyrus.rc6 573
-SHA256 c5534ef121f1c509f0005846b10df12f32e11c282656bf48699c2b457a40e187 files/cyrus.rc6 573
AUX imap.pam 195 RMD160 18585b20cc2568a000ecb381f3299dedcc737d27 SHA1 0e64fbb8fb8da0cdae6fb0820ee3048f1e30bbf6 SHA256 e8068af6f4141fe2b7d7afbaf241be779ad6edb7e03d4dfdcf7ca8e991a8a5e0
-MD5 ef68faa77664a88f939cee2f12019507 files/imap.pam 195
-RMD160 18585b20cc2568a000ecb381f3299dedcc737d27 files/imap.pam 195
-SHA256 e8068af6f4141fe2b7d7afbaf241be779ad6edb7e03d4dfdcf7ca8e991a8a5e0 files/imap.pam 195
AUX imapd.conf 1587 RMD160 74e02af5daa7648ce7e366478c1b89b112750e6b SHA1 e4f189cb59fe499a42adffe3ffe382dcb9d7c546 SHA256 69eacd9fffad55f20990fcf3b117fe4e2ac55233515ed70698c65a6deb42503f
-MD5 66137eb399ec7760afc24491a10d8bd7 files/imapd.conf 1587
-RMD160 74e02af5daa7648ce7e366478c1b89b112750e6b files/imapd.conf 1587
-SHA256 69eacd9fffad55f20990fcf3b117fe4e2ac55233515ed70698c65a6deb42503f files/imapd.conf 1587
-DIST cyrus-imapd-2.3.8-uoa.tbz2 17894 RMD160 c824671df6b36aadf9c6d76131bd467a407a5e5e SHA1 311769f5ffd81a7eb24bbaa531997c7c4c4a0bc1 SHA256 dfe6d498991335c2c9f06bf2dd2c716ce865c043f857f5633650c029e17c3549
-DIST cyrus-imapd-2.3.8.tar.gz 2207366 RMD160 e89054f75f106c26f497bc37f7d514b0bf80bfe0 SHA1 c671f631753a138b9fa9b5bed7efa46adc8b4e3e SHA256 0f5c04a7de2da737e5ca0b4f8df8647175188b22972000192bbc7cd87ffda7fe
+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.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.8-r20.ebuild 9328 RMD160 79786402ae2b5fd4324cbadd4628ad9353c04482 SHA1 0c5191073f7072112650685cb6f61260e72315c3 SHA256 7722959566fec0d7e9c301f7bd0f490164b3f2e5e170b738665069ac6120de5c
-MD5 fea20465d51f72246d38844223bd0d22 cyrus-imapd-2.3.8-r20.ebuild 9328
-RMD160 79786402ae2b5fd4324cbadd4628ad9353c04482 cyrus-imapd-2.3.8-r20.ebuild 9328
-SHA256 7722959566fec0d7e9c301f7bd0f490164b3f2e5e170b738665069ac6120de5c cyrus-imapd-2.3.8-r20.ebuild 9328
-EBUILD cyrus-imapd-2.3.9-r20.ebuild 8698 RMD160 57caa2adab40e79a76f11bfc364774ffa5ee1718 SHA1 6f3fca8025e75a3633663ce7b56f9b78eeb04cf9 SHA256 15d24b101e03ec74ec1e90b59794c4068f24b4e8a5d480fa8d67e5cdf0483fdb
-MD5 2aeb23fd351847bbd4c458d75124d02c cyrus-imapd-2.3.9-r20.ebuild 8698
-RMD160 57caa2adab40e79a76f11bfc364774ffa5ee1718 cyrus-imapd-2.3.9-r20.ebuild 8698
-SHA256 15d24b101e03ec74ec1e90b59794c4068f24b4e8a5d480fa8d67e5cdf0483fdb cyrus-imapd-2.3.9-r20.ebuild 8698
-MISC ChangeLog 299 RMD160 81a24b9728858b8313cf7affd931a9a988c21672 SHA1 7b6ab6f8090bc4ea6aa154e4852451ffe2453935 SHA256 3903080d9edb4af7318e89d8652de757843599b68b25762c113fc36df5f3bb4d
-MD5 7645967b94341faa888a39f093eba72c ChangeLog 299
-RMD160 81a24b9728858b8313cf7affd931a9a988c21672 ChangeLog 299
-SHA256 3903080d9edb4af7318e89d8652de757843599b68b25762c113fc36df5f3bb4d ChangeLog 299
+EBUILD cyrus-imapd-2.3.11-r20.ebuild 8875 RMD160 0721b64c60da53906415a7d2ac701a27cbe54093 SHA1 1a7196dbadf3c2e39fe6f360c430cfcc9284a735 SHA256 34bd15e14f1a580f05b8699b46cc05d73621582e0f28eb9686a1eea825115e5d
+EBUILD cyrus-imapd-2.3.9-r21.ebuild 8686 RMD160 4619092d27e8941de59b566812cbbb80d5277c8b SHA1 ed787c7bde8f2bc3a5f6c690a1e43a4f658b9a32 SHA256 c5ef4d9071bb627d29e1f6cfbc10e86b9d89556d1b28f40f2dd102f5e0d456c4
+MISC ChangeLog 1237 RMD160 647cf42ffca063c32554d1c7347db171a61980fb SHA1 7e92d26c1d4f8cbf354b6eb7f5de311013d3d394 SHA256 ba5b4ebf27f998466fc3a02e973719c72ccb68c24ace3e121ac81e43bb9a60db
MISC metadata.xml 232 RMD160 251750822acfe36f54ec830fa053e985a7278a33 SHA1 fdbcf61b9d99ee20f934ecc104ade9609a229e78 SHA256 d07db54ad168ceedf68191db986ce724abd9add00eb9716d1ea55f5808b2eec1
-MD5 472818759cc5022b4fff0910a12b75d1 metadata.xml 232
-RMD160 251750822acfe36f54ec830fa053e985a7278a33 metadata.xml 232
-SHA256 d07db54ad168ceedf68191db986ce724abd9add00eb9716d1ea55f5808b2eec1 metadata.xml 232
-MD5 5a8232f4b9e3f3058e42486de0ad47a7 files/digest-cyrus-imapd-2.3.8-r20 512
-RMD160 2d7ca633bdae5bd71d0c4b70187b3ba2fbd6b8d4 files/digest-cyrus-imapd-2.3.8-r20 512
-SHA256 97b76dc1900afad7cb2521a8dcf231b1f64daf53fa8c8b0049e67dfae68b4224 files/digest-cyrus-imapd-2.3.8-r20 512
-MD5 c55df6df734f859e5f0ef9d3b9a9b969 files/digest-cyrus-imapd-2.3.9-r20 512
-RMD160 617c63af48df4adba02101a30db0f4e70b73508f files/digest-cyrus-imapd-2.3.9-r20 512
-SHA256 e03dc15ac8b730f5c4ca419fa764cc374d8821e67ceb147d4f0358ad6673913b files/digest-cyrus-imapd-2.3.9-r20 512
diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.8-r20.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.11-r20.ebuild
index 8ee17f7..0842db5 100644
--- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.8-r20.ebuild
+++ b/net-mail/cyrus-imapd/cyrus-imapd-2.3.11-r20.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2007 Gentoo Foundation
+# 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.8.ebuild,v 1.2 2007/07/28 15:42:30 dertobi123 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-mail/cyrus-imapd/cyrus-imapd-2.3.9.ebuild,v 1.2 2007/09/07 19:53:24 dertobi123 Exp $
inherit autotools eutils ssl-cert fixheadtails pam
@@ -9,19 +9,18 @@ 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"
+DRAC_PATCH_VER="2.3.11"
AUTOCREATE_PATCH_VER="0.10-0"
AUTOSIEVE_PATCH_VER="0.6.0"
LICENSE="as-is"
SLOT="0"
-KEYWORDS="x86 amd64"
-IUSE="afs autocreate autosieve drac idled kerberos kolab nntp pam snmp ssl tcpd"
+KEYWORDS="~x86 ~amd64"
+IUSE="autocreate autosieve 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
- afs? ( >=net-fs/openafs-1.2.2 )
pam? (
virtual/pam
>=net-mail/mailbase-1
@@ -30,13 +29,17 @@ RDEPEND=">=sys-libs/db-3.2
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 )"
+ 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
@@ -97,10 +100,10 @@ pkg_setup() {
src_unpack() {
unpack ${A} && cd "${S}"
- ht_fix_file ${S}/imap/xversion.sh
+ ht_fix_file "${S}"/imap/xversion.sh
- # db-4.5 fix
- epatch "${FILESDIR}/${PN}-2.2-db45.patch"
+ # Fix prestripped binaries
+ epatch "${FILESDIR}/${PN}-strip.patch"
# Unsupported UoA patch. Bug #112912 .
# http://email.uoa.gr/projects/cyrus/autocreate/
@@ -117,41 +120,22 @@ src_unpack() {
# http://email.uoa.gr/projects/cyrus/autosievefolder/
use autosieve && epatch "${WORKDIR}/${P}-autosieve-${AUTOSIEVE_PATCH_VER}.diff"
- # fix undefine symbols.
- use afs && epatch "${FILESDIR}/cyrus-imapd-2.3.6-afs.patch" \
- && epatch "${FILESDIR}/${P}-pts.patch"
-
# Add libwrap defines as we don't have a dynamicly linked library.
use tcpd && epatch "${FILESDIR}/${PN}-${LIBWRAP_PATCH_VER}-libwrap.patch"
# Add kolab support.
if use kolab ; then
-
- # Question is if this is really needed at all
- epatch "${FILESDIR}/${P}-openpkg.patch" || die "epatch failed"
-
- # Bad patch which solves the problem but would never get integrated.
- # This would need a more general solution to be provided upstream.
- epatch "${FILESDIR}/${P}-kolab.patch" || die "epatch failed"
-
- # Looks like this has been applied in 2.3.7 -> Only partially! FIX!!
- # Not in bug db either (though a similar request at https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2633)
- #epatch "${FILESDIR}/${P}-goodchars.patch" || die "epatch failed"
-
- # Not in the bug DB
- epatch "${FILESDIR}/${P}-morelogging.patch" || die "epatch failed"
-
- # These patches linger in the bug db since ages
- # https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2632
- epatch "${FILESDIR}/${P}-group.patch" || die "epatch failed"
- epatch "${FILESDIR}/${P}-group2.patch" || die "epatch failed"
-
- # Suggested patch is available here
- # http://vman.de/cyrus/
- # Has also been added to the bug db at
- # https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2458
- epatch "${FILESDIR}/${P}-annotate.patch" || die "epatch failed"
-
+ # For information on these patches see patch headers and
+ # http://kolab.org/cgi-bin/viewcvs-kolab.cgi/server/patches/cyrus-imapd/
+ epatch "${FILESDIR}/${P}-KOLAB_Groups.patch" || die "epatch failed"
+ epatch "${FILESDIR}/${P}-KOLAB_Annotations2.patch" || die "epatch failed"
+ epatch "${FILESDIR}/${P}-KOLAB_Logging.patch" || die "epatch failed"
+ epatch "${FILESDIR}/${P}-KOLAB_Folder-names.patch" || die "epatch failed"
+ epatch "${FILESDIR}/${P}-KOLAB_UID.patch" || die "epatch failed"
+ epatch "${FILESDIR}/${P}-KOLAB_starttls-sendcaps.patch" || die "epatch failed"
+ # 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
# Fix master(8)->cyrusmaster(8) manpage.
@@ -168,10 +152,11 @@ src_unpack() {
# Recreate configure.
WANT_AUTOCONF="2.5"
- eautoreconf
+ 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
@@ -179,7 +164,6 @@ src_unpack() {
src_compile() {
local myconf
- use afs && myconf="${myconf} -with-afs=/usr"
myconf="${myconf} $(use_with drac)"
myconf="${myconf} $(use_with ssl openssl)"
myconf="${myconf} $(use_with snmp ucdsnmp)"
@@ -187,6 +171,7 @@ src_compile() {
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"
@@ -208,10 +193,10 @@ src_compile() {
${myconf} || die "econf failed"
# needed for parallel make. Bug #72352.
- cd ${S}/imap
+ cd "${S}"/imap
emake xversion.h || die "emake xversion.h failed"
- cd ${S}
+ cd "${S}"
emake || die "compile problem"
}
@@ -224,6 +209,11 @@ src_install() {
# 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
@@ -238,14 +228,6 @@ src_install() {
newconfd "${FILESDIR}/cyrus.confd" cyrus
newpamd "${FILESDIR}/cyrus.pam-include" sieve
- # do not install server.{key,pem) if they are exist.
- if use ssl && [[ ! -f /etc/ssl/cyrus/server.key && ! -f /etc/ssl/cyrus/server.pem ]] ; then
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-Cyrus IMAP Server}"
- insinto /etc/ssl/cyrus
- docert server
- fowners cyrus:mail /etc/ssl/cyrus/server.{key,pem}
- fi
-
for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do
keepdir "/var/${subdir}"
fowners cyrus:mail "/var/${subdir}"
@@ -261,8 +243,13 @@ src_install() {
}
pkg_postinst() {
-
- enewuser cyrus -1 -1 /usr/cyrus mail
+ # 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."
diff --git a/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r20.ebuild b/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r21.ebuild
index 495fe08..b517d5e 100644
--- a/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r20.ebuild
+++ b/net-mail/cyrus-imapd/cyrus-imapd-2.3.9-r21.ebuild
@@ -36,6 +36,9 @@ DEPEND="$RDEPEND
>=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
@@ -96,11 +99,14 @@ pkg_setup() {
src_unpack() {
unpack ${A} && cd "${S}"
- ht_fix_file ${S}/imap/xversion.sh
+ 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
@@ -188,10 +194,10 @@ src_compile() {
${myconf} || die "econf failed"
# needed for parallel make. Bug #72352.
- cd ${S}/imap
+ cd "${S}"/imap
emake xversion.h || die "emake xversion.h failed"
- cd ${S}
+ cd "${S}"
emake || die "compile problem"
}
@@ -218,14 +224,6 @@ src_install() {
newconfd "${FILESDIR}/cyrus.confd" cyrus
newpamd "${FILESDIR}/cyrus.pam-include" sieve
- # do not install server.{key,pem) if they are exist.
- if use ssl && [[ ! -f /etc/ssl/cyrus/server.key && ! -f /etc/ssl/cyrus/server.pem ]] ; then
- SSL_ORGANIZATION="${SSL_ORGANIZATION:-Cyrus IMAP Server}"
- insinto /etc/ssl/cyrus
- docert server
- fowners cyrus:mail /etc/ssl/cyrus/server.{key,pem}
- fi
-
for subdir in imap/{,db,log,msg,proc,socket,sieve} spool/imap/{,stage.} ; do
keepdir "/var/${subdir}"
fowners cyrus:mail "/var/${subdir}"
@@ -241,8 +239,13 @@ src_install() {
}
pkg_postinst() {
-
- enewuser cyrus -1 -1 /usr/cyrus mail
+ # 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."
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-db45.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-db45.patch
deleted file mode 100644
index c92f957..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.2-db45.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- lib.old/cyrusdb_berkeley.c 2007-04-05 01:23:42.518845824 +0200
-+++ lib/cyrusdb_berkeley.c 2007-04-05 01:22:20.000000000 +0200
-@@ -159,7 +159,15 @@
- syslog(LOG_WARNING,
- "DBERROR: invalid berkeley_locks_max value, using internal default");
- } else {
-+#if DB_VERSION_MAJOR >= 4
-+ r = dbenv->set_lk_max_locks(dbenv, opt);
-+ if (!r)
-+ r = dbenv->set_lk_max_lockers(dbenv, opt);
-+ if (!r)
-+ r = dbenv->set_lk_max_objects(dbenv, opt);
-+#else
- r = dbenv->set_lk_max(dbenv, opt);
-+#endif
- if (r) {
- dbenv->err(dbenv, r, "set_lk_max");
- syslog(LOG_ERR, "DBERROR: set_lk_max(): %s", db_strerror(r));
---- cmulocal/berkdb.m4.orig 2007-05-01 18:05:00.000000000 +0200
-+++ cmulocal/berkdb.m4 2007-05-01 18:05:17.000000000 +0200
-@@ -212,7 +212,7 @@
- fi
-
- saved_LIBS=$LIBS
-- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
-+ for dbname in db-4.5 db4.5 db45 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
- do
- LIBS="$saved_LIBS -l$dbname"
- AC_TRY_LINK([#include <db.h>],
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Annotations2.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Annotations2.patch
new file mode 100644
index 0000000..07a1b9a
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Annotations2.patch
@@ -0,0 +1,359 @@
+Provides a new version of annotation support for the cyrus imapd server [Version: 2.3.9]
+
+diff -r b693d1281318 imap/annotate.c
+--- a/imap/annotate.c Thu Oct 25 08:21:36 2007 +0200
++++ b/imap/annotate.c Thu Oct 25 08:24:37 2007 +0200
+@@ -40,6 +40,13 @@
+ *
+ */
+ /*
++ * 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 <tv@beamnet.de>.
++ */
++/*
+ * $Id: annotate.c,v 1.40 2007/10/12 12:54:23 murch Exp $
+ */
+
+@@ -92,6 +99,8 @@ int (*proxy_store_func)(const char *serv
+ int (*proxy_store_func)(const char *server, const char *mbox_pat,
+ struct entryattlist *entryatts) = NULL;
+
++void init_annotation_definitions();
++
+ /* String List Management */
+ /*
+ * Append 's' to the strlist 'l'. Possibly include metadata.
+@@ -238,6 +247,8 @@ void annotatemore_init(int myflags,
+ if (store_func) {
+ proxy_store_func = store_func;
+ }
++
++ init_annotation_definitions();
+ }
+
+ void annotatemore_open(char *fname)
+@@ -1833,6 +1844,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,
+@@ -1844,7 +2073,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));
+@@ -1855,45 +2084,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;
+@@ -1903,7 +2132,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;
+@@ -1929,7 +2158,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;
+diff -r b693d1281318 lib/imapoptions
+--- a/lib/imapoptions Thu Oct 25 08:21:36 2007 +0200
++++ b/lib/imapoptions Thu Oct 25 08:24:37 2007 +0200
+@@ -152,6 +152,9 @@ are listed with ``<none>''.
+ 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/cyrus-imapd-2.3.8-goodchars.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Folder-names.patch
index 0148add..df55a3c 100644
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-goodchars.patch
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Folder-names.patch
@@ -1,7 +1,9 @@
-diff -upr ../cyrus-imapd-2.2.12.orig/imap/mboxname.c ./imap/mboxname.c
---- ../cyrus-imapd-2.2.12.orig/imap/mboxname.c 2005-02-14 07:39:57.000000000 +0100
-+++ ./imap/mboxname.c 2005-04-21 00:59:50.879253320 +0200
-@@ -649,8 +649,13 @@ int mboxname_netnewscheck(char *name)
+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.
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Groups.patch
index fce3426..9e987f5 100644
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group.patch
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Groups.patch
@@ -1,7 +1,9 @@
-diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_unix.c
---- cyrus-imapd-2.3.7.orig/lib/auth_unix.c 2006-10-03 17:46:02.000000000 +0200
-+++ cyrus-imapd-2.3.7/lib/auth_unix.c 2006-10-04 10:18:31.000000000 +0200
-@@ -48,6 +48,7 @@
+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 <stdlib.h>
#include <pwd.h>
#include <grp.h>
@@ -9,11 +11,11 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
#include <ctype.h>
#include <string.h>
-@@ -55,6 +56,126 @@
+ #include "auth.h"
#include "libcyr_cfg.h"
#include "xmalloc.h"
-
-+#ifdef __FreeBSD__
++
++#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 <ndf@linux.mit.edu>.
@@ -132,11 +134,10 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
+ return __getgrent(fileno(file), line_buff, members);
+}
+#endif /* __FreeBSD__ */
-+
+
struct auth_state {
char userid[81];
- char **group;
-@@ -142,6 +263,25 @@
+@@ -142,6 +263,25 @@ static char allowedchars[256] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
@@ -149,7 +150,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
+ if (!groupfile) groupfile = fopen("/etc/group", "r");
+ if (groupfile) {
+ while ((grp = fgetgrent(groupfile))) {
-+ if (strcmp(grp->gr_name, name) == 0) {
++ if (strcasecmp(grp->gr_name, name) == 0) {
+ fclose(groupfile);
+ return grp;
+ }
@@ -162,7 +163,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
/*
* Convert 'identifier' into canonical form.
* Returns a pointer to a static buffer containing the canonical form
-@@ -177,7 +317,7 @@
+@@ -177,7 +317,7 @@ size_t len;
*/
if (!strncmp(retbuf, "group:", 6)) {
@@ -171,18 +172,18 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
if (!grp) return 0;
strcpy(retbuf+6, grp->gr_name);
return retbuf;
-@@ -224,6 +364,7 @@
- struct passwd *pwd;
- struct group *grp;
+@@ -228,6 +368,7 @@ static struct auth_state *mynewstate(con
+ int ret, ngroups = 10;
+ #else
char **mem;
+ FILE *groupfile;
+ #endif
identifier = mycanonifyid(identifier, 0);
- if (!identifier) return 0;
-@@ -240,20 +381,23 @@
+@@ -283,20 +424,23 @@ err:
+ if (groupids) free(groupids);
- pwd = getpwnam(identifier);
-
+ #else /* !HAVE_GETGROUPLIST */
- setgrent();
- while ((grp = getgrent())) {
- for (mem = grp->gr_mem; *mem; mem++) {
@@ -202,7 +203,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
+ if (groupfile) {
+ while ((grp = fgetgrent(groupfile))) {
+ for (mem = grp->gr_mem; *mem; mem++) {
-+ if (!strcmp(*mem, identifier)) break;
++ if (!strcasecmp(*mem, identifier)) break;
+ }
+
+ if (*mem || (pwd && pwd->pw_gid == grp->gr_gid)) {
@@ -214,6 +215,6 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/auth_unix.c cyrus-imapd-2.3.7/lib/auth_uni
+ }
+ fclose(groupfile);
+ }
- return newstate;
- }
+ #endif /* HAVE_GETGROUPLIST */
+ return newstate;
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Logging.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Logging.patch
new file mode 100644
index 0000000..c0bd2fa
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_Logging.patch
@@ -0,0 +1,58 @@
+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/cyrus-imapd-2.3.8-kolab.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_UID.patch
index afa2096..a044463 100644
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-kolab.patch
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_UID.patch
@@ -1,7 +1,9 @@
-diff -Naur cyrus-imapd-2.3.7.orig/configure cyrus-imapd-2.3.7/configure
---- cyrus-imapd-2.3.7.orig/configure 2006-10-03 17:46:05.000000000 +0200
-+++ cyrus-imapd-2.3.7/configure 2006-10-04 10:31:58.000000000 +0200
-@@ -18092,7 +18092,7 @@
+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}"
@@ -10,9 +12,9 @@ diff -Naur cyrus-imapd-2.3.7.orig/configure cyrus-imapd-2.3.7/configure
-diff -Naur cyrus-imapd-2.3.7.orig/imap/global.c cyrus-imapd-2.3.7/imap/global.c
---- cyrus-imapd-2.3.7.orig/imap/global.c 2006-10-03 17:46:03.000000000 +0200
-+++ cyrus-imapd-2.3.7/imap/global.c 2006-10-04 10:31:58.000000000 +0200
+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 <netinet/in.h>
#include <sys/stat.h>
@@ -23,7 +25,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/imap/global.c cyrus-imapd-2.3.7/imap/global.c
#if HAVE_UNISTD_H
# include <unistd.h>
#endif
-@@ -355,6 +358,18 @@
+@@ -362,6 +365,18 @@ char *canonify_userid(char *user, char *
char *domain = NULL;
int len = strlen(user);
char buf[81];
@@ -42,7 +44,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/imap/global.c cyrus-imapd-2.3.7/imap/global.c
/* check for domain */
if (config_virtdomains &&
-@@ -373,6 +388,47 @@
+@@ -380,6 +395,47 @@ char *canonify_userid(char *user, char *
}
if (config_virtdomains) {
@@ -90,7 +92,7 @@ diff -Naur cyrus-imapd-2.3.7.orig/imap/global.c cyrus-imapd-2.3.7/imap/global.c
if (domain) {
if (config_defdomain && !strcasecmp(config_defdomain, domain+1)) {
*domain = '\0'; /* trim the default domain */
-@@ -385,7 +441,7 @@
+@@ -392,7 +448,7 @@ char *canonify_userid(char *user, char *
user = buf;
}
}
@@ -99,10 +101,10 @@ diff -Naur cyrus-imapd-2.3.7.orig/imap/global.c cyrus-imapd-2.3.7/imap/global.c
socklen_t salen;
int error;
struct sockaddr_storage localaddr;
-diff -Naur cyrus-imapd-2.3.7.orig/lib/imapoptions cyrus-imapd-2.3.7/lib/imapoptions
---- cyrus-imapd-2.3.7.orig/lib/imapoptions 2006-10-03 17:46:02.000000000 +0200
-+++ cyrus-imapd-2.3.7/lib/imapoptions 2006-10-04 10:31:58.000000000 +0200
-@@ -998,7 +998,7 @@
+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 ``<none>''.
mailbox hierarchy. The default is to use the netnews separator
character '.'. */
@@ -111,26 +113,3 @@ diff -Naur cyrus-imapd-2.3.7.orig/lib/imapoptions cyrus-imapd-2.3.7/lib/imapopti
/* 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 -Naur cyrus-imapd-2.3.7.orig/lib/imapopts.c cyrus-imapd-2.3.7/lib/imapopts.c
---- cyrus-imapd-2.3.7.orig/lib/imapopts.c 2006-10-03 17:46:02.000000000 +0200
-+++ cyrus-imapd-2.3.7/lib/imapopts.c 2006-10-04 10:31:58.000000000 +0200
-@@ -213,7 +213,7 @@
- { IMAPOPT_USERPREFIX, "userprefix", 0, {(void *)("Other Users")}, OPT_STRING, { { NULL, IMAP_ENUM_ZERO } } },
- { IMAPOPT_UNIX_GROUP_ENABLE, "unix_group_enable", 0, {(void*)1}, OPT_SWITCH, { { NULL, IMAP_ENUM_ZERO } } },
- { IMAPOPT_UNIXHIERARCHYSEP, "unixhierarchysep", 0, {(void*)0}, OPT_SWITCH, { { NULL, IMAP_ENUM_ZERO } } },
-- { IMAPOPT_VIRTDOMAINS, "virtdomains", 0, {(void *)(IMAP_ENUM_VIRTDOMAINS_OFF)}, OPT_ENUM, { { "off" , IMAP_ENUM_VIRTDOMAINS_OFF }, { "userid" , IMAP_ENUM_VIRTDOMAINS_USERID }, { "on" , IMAP_ENUM_VIRTDOMAINS_ON }, { NULL, IMAP_ENUM_ZERO } } },
-+ { IMAPOPT_VIRTDOMAINS, "virtdomains", 0, {(void *)(IMAP_ENUM_VIRTDOMAINS_OFF)}, OPT_ENUM, { { "off" , IMAP_ENUM_VIRTDOMAINS_OFF }, { "userid" , IMAP_ENUM_VIRTDOMAINS_USERID }, { "ldap" , IMAP_ENUM_VIRTDOMAINS_LDAP }, { "on" , IMAP_ENUM_VIRTDOMAINS_ON }, { NULL, IMAP_ENUM_ZERO } } },
-
- { IMAPOPT_LAST, NULL, 0, { NULL }, OPT_NOTOPT, { { NULL, IMAP_ENUM_ZERO } } }
-
-diff -Naur cyrus-imapd-2.3.7.orig/lib/imapopts.h cyrus-imapd-2.3.7/lib/imapopts.h
---- cyrus-imapd-2.3.7.orig/lib/imapopts.h 2006-10-03 17:46:02.000000000 +0200
-+++ cyrus-imapd-2.3.7/lib/imapopts.h 2006-10-04 10:33:45.000000000 +0200
-@@ -214,6 +214,7 @@
-
- IMAP_ENUM_VIRTDOMAINS_ON,
- IMAP_ENUM_VIRTDOMAINS_USERID,
-+ IMAP_ENUM_VIRTDOMAINS_LDAP,
- IMAP_ENUM_VIRTDOMAINS_OFF = 0,
- IMAP_ENUM_SIEVE_EXTENSIONS_COPY = (1<<11),
- IMAP_ENUM_SIEVE_EXTENSIONS_SUBADDRESS = (1<<10),
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch
new file mode 100644
index 0000000..48524e9
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-KOLAB_starttls-sendcaps.patch
@@ -0,0 +1,19 @@
+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/cyrus-imapd-2.3.11-drac_with_autocreate.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch
new file mode 100644
index 0000000..5e7929d
--- /dev/null
+++ b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.11-drac_with_autocreate.patch
@@ -0,0 +1,46 @@
+--- 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-annotate.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-annotate.patch
deleted file mode 100644
index f01d7d9..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-annotate.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-diff -Naur cyrus-imapd-2.3.7.orig/imap/annotate.c cyrus-imapd-2.3.7/imap/annotate.c
---- cyrus-imapd-2.3.7.orig/imap/annotate.c 2006-10-03 17:46:04.000000000 +0200
-+++ cyrus-imapd-2.3.7/imap/annotate.c 2006-10-04 09:27:37.000000000 +0200
-@@ -1793,6 +1793,11 @@
- { NULL, 0, ANNOTATION_PROXY_T_INVALID, 0, 0, NULL, NULL }
- };
-
-+const struct annotate_st_entry vendor_entry =
-+ { NULL, ATTRIB_TYPE_STRING, BACKEND_ONLY,
-+ ATTRIB_VALUE_SHARED | ATTRIB_VALUE_PRIV,
-+ ACL_ADMIN, annotation_set_todb, NULL };
-+
- int annotatemore_store(char *mailbox,
- struct entryattlist *l,
- struct namespace *namespace,
-@@ -1805,6 +1810,7 @@
- struct attvaluelist *av;
- struct storedata sdata;
- const struct annotate_st_entry *entries;
-+ struct annotate_st_entry * working_entry;
- time_t now = time(0);
-
- memset(&sdata, 0, sizeof(struct storedata));
-@@ -1826,34 +1832,52 @@
- while (e) {
- int entrycount, attribs;
- struct annotate_st_entry_list *nentry = NULL;
-+ struct annotate_st_entry *ientry = NULL;
-
- /* See if we support this entry */
-+ working_entry = NULL;
- for (entrycount = 0;
- entries[entrycount].name;
- entrycount++) {
- if (!strcmp(e->entry, entries[entrycount].name)) {
-+ working_entry = &(entries[entrycount]);
- break;
- }
- }
-- if (!entries[entrycount].name) {
-- /* unknown annotation */
-- return IMAP_PERMISSION_DENIED;
-+ if (working_entry==NULL) {
-+ /* test for generic vendor annotation */
-+ if ((strncmp("/vendor/", e->entry, strlen("/vendor/"))==0) &&
-+ (strlen(e->entry)>strlen("/vendor/"))) {
-+ working_entry = &(vendor_entry);
-+ }
-+ else {
-+ /* 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 ((working_entry->proxytype != PROXY_ONLY)
- || proxy_store_func) {
-+ ientry = xzmalloc(sizeof(struct annotate_st_entry));
-+ ientry->name = e->entry;
-+ ientry->type = working_entry->type;
-+ ientry->proxytype = working_entry->proxytype;
-+ ientry->attribs = working_entry->attribs;
-+ ientry->acl = working_entry->acl;
-+ ientry->set = working_entry->set;
-+ ientry->rock = working_entry->rock;
- nentry = xzmalloc(sizeof(struct annotate_st_entry_list));
- nentry->next = sdata.entry_list;
-- nentry->entry = &(entries[entrycount]);
-+ nentry->entry = ientry;
- 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 = working_entry->attribs;
- av = e->attvalues;
- while (av) {
- const char *value;
-@@ -1863,7 +1887,7 @@
- goto cleanup;
- }
- value = annotate_canon_value(av->value,
-- entries[entrycount].type);
-+ working_entry->type);
- if (!value) {
- r = IMAP_ANNOTATION_BADVALUE;
- goto cleanup;
-@@ -1889,7 +1913,7 @@
- goto cleanup;
- }
- value = annotate_canon_value(av->value,
-- entries[entrycount].type);
-+ working_entry->type);
- if (!value) {
- r = IMAP_ANNOTATION_BADVALUE;
- goto cleanup;
-@@ -1993,6 +2017,12 @@
- /* Free the entry list */
- while (sdata.entry_list) {
- struct annotate_st_entry_list *freeme = sdata.entry_list;
-+ if (freeme != NULL){
-+ struct annotate_st_entry *freeme2 = freeme->entry;
-+ if (freeme2 != NULL) {
-+ free( freeme2 );
-+ }
-+ }
- sdata.entry_list = sdata.entry_list->next;
- free(freeme);
- }
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group2.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group2.patch
deleted file mode 100644
index 088ae36..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-group2.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ../cyrus-imapd-2.2.6.kolab-orig/lib/auth_unix.c 2004-10-09 00:07:45.000000000 +0200
-+++ lib/auth_unix.c 2004-10-09 00:29:58.000000000 +0200
-@@ -274,7 +274,7 @@ static struct group* fgetgrnam(const cha
- if (!groupfile) groupfile = fopen("/etc/group", "r");
- if (groupfile) {
- while ((grp = fgetgrent(groupfile))) {
-- if (strcmp(grp->gr_name, name) == 0) {
-+ if (strcasecmp(grp->gr_name, name) == 0) {
- fclose(groupfile);
- return grp;
- }
-@@ -386,7 +386,7 @@ struct auth_state *auth_newstate(const c
- if (groupfile) {
- while ((grp = fgetgrent(groupfile))) {
- for (mem = grp->gr_mem; *mem; mem++) {
-- if (!strcmp(*mem, identifier)) break;
-+ if (!strcasecmp(*mem, identifier)) break;
- }
-
- if (*mem || (pwd && pwd->pw_gid == grp->gr_gid)) {
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-morelogging.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-morelogging.patch
deleted file mode 100644
index aad54b6..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-morelogging.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -Naur cyrus-imapd-2.3.7.orig/imap/append.c cyrus-imapd-2.3.7/imap/append.c
---- cyrus-imapd-2.3.7.orig/imap/append.c 2006-10-03 17:46:03.000000000 +0200
-+++ cyrus-imapd-2.3.7/imap/append.c 2006-10-04 10:53:13.000000000 +0200
-@@ -652,6 +652,9 @@
- /* 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 -Naur cyrus-imapd-2.3.7.orig/imap/imapd.c cyrus-imapd-2.3.7/imap/imapd.c
---- cyrus-imapd-2.3.7.orig/imap/imapd.c 2006-10-03 17:46:04.000000000 +0200
-+++ cyrus-imapd-2.3.7/imap/imapd.c 2006-10-04 10:53:13.000000000 +0200
-@@ -3494,6 +3494,8 @@
- 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, "''");
- }
- }
-
-diff -Naur cyrus-imapd-2.3.7.orig/imap/mailbox.c cyrus-imapd-2.3.7/imap/mailbox.c
---- cyrus-imapd-2.3.7.orig/imap/mailbox.c 2006-10-03 17:46:04.000000000 +0200
-+++ cyrus-imapd-2.3.7/imap/mailbox.c 2006-10-04 10:53:27.000000000 +0200
-@@ -2455,6 +2455,8 @@
- *(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/cyrus-imapd-2.3.8-pts.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-pts.patch
deleted file mode 100644
index a7bd428..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-2.3.8-pts.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- configure.in.old 2007-07-28 13:02:41.505734616 +0200
-+++ configure.in 2007-07-28 13:04:37.431049483 +0200
-@@ -563,12 +563,12 @@
- LDFLAGS=$save_LDFLAGS
- fi
-
--if test "x$with_afs" != "xno" -o "x$with_ldap" != "xno"; then
-- EXTRA_SUBDIRS="${EXTRA_SUBDIRS} ptclient"
-- EXTRA_OUTPUT="${EXTRA_OUTPUT} ptclient/Makefile"
--
-- AC_DEFINE(WITH_PTS,[],[Build in PTS support?])
--fi
-+#if test "x$with_afs" != "xno" -o "x$with_ldap" != "xno"; then
-+# EXTRA_SUBDIRS="${EXTRA_SUBDIRS} ptclient"
-+# EXTRA_OUTPUT="${EXTRA_OUTPUT} ptclient/Makefile"
-+#
-+# AC_DEFINE(WITH_PTS,[],[Build in PTS support?])
-+#fi
-
-
-
diff --git a/net-mail/cyrus-imapd/files/cyrus-imapd-unsupported-8bit.patch b/net-mail/cyrus-imapd/files/cyrus-imapd-unsupported-8bit.patch
deleted file mode 100644
index cf60844..0000000
--- a/net-mail/cyrus-imapd/files/cyrus-imapd-unsupported-8bit.patch
+++ /dev/null
@@ -1,79 +0,0 @@
---- cyrus-imapd-2.2.10/imap/message.c.munge8bit 2004-02-27 18:44:55.000000000 +0100
-+++ cyrus-imapd-2.2.10/imap/message.c 2004-07-27 18:20:13.725563440 +0200
-@@ -227,6 +227,7 @@
- int n;
- int sawcr = 0, sawnl;
- int reject8bit = config_getswitch(IMAPOPT_REJECT8BIT);
-+ int munge8bit = config_getswitch(IMAPOPT_MUNGE8BIT);
- int inheader = 1, blankline = 1;
-
- while (size) {
-@@ -262,7 +263,7 @@
- /* We have been configured to reject all mail of this
- form. */
- if (!r) r = IMAP_MESSAGE_CONTAINS8BIT;
-- } else {
-+ } else if (munge8bit) {
- /* We have been configured to munge all mail of this
- form. */
- *p = 'X';
---- cyrus-imapd-2.2.10/imap/spool.c.munge8bit 2004-03-04 17:09:34.000000000 +0100
-+++ cyrus-imapd-2.2.10/imap/spool.c 2004-07-27 18:20:13.726563149 +0200
-@@ -140,6 +140,7 @@
- state s = NAME_START;
- int r = 0;
- int reject8bit = config_getswitch(IMAPOPT_REJECT8BIT);
-+ int munge8bit = config_getswitch(IMAPOPT_MUNGE8BIT);
- const char **skip = NULL;
-
- if (namelen == 0) {
-@@ -266,7 +267,7 @@
- form. */
- r = IMAP_MESSAGE_CONTAINS8BIT;
- goto ph_error;
-- } else {
-+ } else if (munge8bit) {
- /* We have been configured to munge all mail of this
- form. */
- c = 'X';
---- cyrus-imapd-2.2.10/lib/imapoptions.munge8bit 2004-07-21 21:07:45.000000000 +0200
-+++ cyrus-imapd-2.2.10/lib/imapoptions 2004-07-27 18:20:13.722564314 +0200
-@@ -458,6 +458,12 @@
- { "mboxlist_db", "skiplist", STRINGLIST("flat", "berkeley", "skiplist")}
- /* The cyrusdb backend to use for the mailbox list. */
-
-+{ "munge8bit", 1, SWITCH }
-+/* If enabled, lmtpd munges messages with 8-bit characters. These characters
-+ are changed to . If \fBreject8bit\fR is enabled, setting \fBmunge8bit\fR
-+ has no effect. (A proper soultion to non-ASCII characters in headers is
-+ offered by RFC 2047 and its predecessors.) */
-+
- # xxx badly worded
- { "mupdate_connections_max", 128, INT }
- /* The max number of connections that a mupdate process will allow, this
-@@ -670,9 +676,7 @@
-
- { "reject8bit", 0, SWITCH }
- /* If enabled, lmtpd rejects messages with 8-bit characters in the
-- headers. Otherwise, 8-bit characters are changed to `X'. (A
-- proper soultion to non-ASCII characters in headers is offered by
-- RFC 2047 and its predecessors.) */
-+ headers. */
-
- { "rfc2046_strict", 0, SWITCH }
- /* If enabled, imapd will be strict (per RFC 2046) when matching MIME
---- cyrus-imapd-2.2.10/man/deliver.8.munge8bit 2004-06-21 20:40:10.000000000 +0200
-+++ cyrus-imapd-2.2.10/man/deliver.8 2004-07-27 18:20:13.719565188 +0200
-@@ -147,8 +147,10 @@
- Accept messages using the LMTP protocol.
- .SH NOTES
- Depending on the setting of \fBreject8bit\fR in \fBimapd.conf(5)\fR, deliver
--either rejects messages with 8-bit-set characters in the headers or
--changes these characters to `X'.
-+either rejects/accepts messages with 8-bit-set characters in the headers.
-+If we accept messages with 8-bit-set characters in the headers, then depending
-+on the setting of \fBmunge8bit\fR, these characters are either left un-touched
-+or changed to .
- This is because such characters can't be interpreted since the
- character set is not known, although some communities not well-served by
- US-ASCII assume that those characters can be used to represent characters not